Académique Documents
Professionnel Documents
Culture Documents
CONTENIDO
INTRODUCCION ESTRUCTURA DE UN ALGORITMO ESTRUCTURS DE CONTROL CONDICIONALES COMENTARIOS INSTRUCCIN DE SALTO (vaya_a) CONTADORES ACUMULADORES ESTRUCTURS DE CONTROL CONDICIONALES REPETITIVAS
Que es un algoritmo?
Secuencia de pasos o instrucciones, realizados en un orden determinado, con un fin claramente definido
Hombre ejecuta algoritmos constantemente Cajero automtico Ir a clase Lenguaje algortmico, permite plasmar claramente los pasos o instrucciones
Estructura de un algoritmo
nombre_del_algoritmo Instrucciones ejecutables Los algoritmos deben ser empiece
Que hay?
Instrucciones no ejecutables escritos totalmente en Entrada de datos minsculas / maysculas. Procesamiento de datos Tiene significado especial dentro Presentacin de resultados del algoritmo yDELIMITADORES por lo tanto su Nombre del algoritmo uso es restringido. No implican puede estar compuesto por ejecucin de accin alguna. caracteres alfanumricos elUso obligatorio (NO tilde), y por caracter Palabras _. Debe empezar con reservadas
caracter alfabtico.
termine
ESTRUCTURA DE UN ALGORITMO
Instruccin pare Variables Declaracin de variables Instrucciones de asignacin Operadores aritmticos Operaciones entre enteros y reales Instrucciones de entrada o salida Prueba de escritorio Operadores relacionales Conectores lgicos
Instruccin pare
Indica la terminacin normal de un algoritmo y libera a la mquina de la tarea que est ejecutando. Todo algoritmo debe tener por lo menos una.
Palabras reservadas empiece termine pare
Variables
Lugares de memoria donde se pueden almacenar datos
Caracterstica de las variables
Nombre
Tipo
Contenido
Dato almacenado
Declaracin de variables
Antes de cualquier instruccin ejecutable
Cadena_de caracter
tipo lista_de_variables
real entero
Declaracin de variables
Ej:
declaracion_de_variables empiece entero a, b, c real m caracter x, p cadena_de 8 t cadena_de 5 k, h pare termine
ENTORNO DE MEMORIA
Una variable no pude Se solicita espacio en memoria para guardar tres ser de mas de unlas tipo nmeros enteros en variables llamadas a, bContenido y c. Variable Tipo A la variable no se le Palabras reservadas ha definido valor a entero ? basura entero ? b empiece entero
c
m x p
real
?
? ? ? ?
caracter ?
Instruccin de asignacin
Instruccin de asignacin
var x
Tipo de variable
caracter caracter
Es vlida siempre y cuando la variable exista y sea de tipo carcter. Implica el cambio del contenido de la variable var por el contenido de
cadena_de 20
Es vlida e implica el cambio del contenido de la variable var por la cadena de caracteres
Colombia campeon
var 3 var b cadena_de 10 cadena_de 12 Es vlida e implica el cambio del contenido de la variable var por la cadena de caracteres 3. Es vlida siempre y cuando la variable exista y sea de tipo cadena de caracteres con longitud menor o igual a 12. Implica el cambio del contenido de la variable var por el contenido de la variable
b.
Instruccin de asignacin
Variables numricas a5 5a a5 5a ad
a8 dd+a
Operadores aritmticos
Suma Resta Multiplicacin Divisin + * /
variable
Entorno de memoria
Terminacin anormal de un algoritmo aborto Otra forma de hacer el algoritmo
res n1 - n2
res n1 * n2 res n1 / n2
entero
real real
real
entero real
real
real real
Instruccin
Resultado res
-2.8 102
Observaciones
res op1+op2-op3
Por lo menos uno de los operandos es real, por lo tanto el resultado es un real
1.5
17 14
21
Ejercicios
Permite la comunicacin del usuario con la escriba grupo 1 de SPPC mquina. Consiste en almacenar en una variable el valor escriba a, + ,b, = ,c suministrado por elusuario. Una lectura implica una asignacin.
lea variable
lea 20 ?
Prueba de escritorio
Ejecucin de un algoritmo es hacer las veces de mquina Su efecto se refleja en la pantalla y en el entorno de memoria. Qu pasa si el usuario ingresa un valor real en lugar de uno entero? PRUEBA Palabras DE ESCRITORIO reservadas Cmo seria la versin de esta solucin para empiece entero nmeros reales?, y si ingresa nmeros Instruccin Efecto enteros? termine real Cmo condicionar el algoritmo a suma de Var caracter Tipo Cont pare dos nmeros enteros positivos? El espacio de memoria Suma de reservado para las13 Necesitamos la forma de condicionar lados realizacin num1 entero ? el Por favor dame el Porvariables favor dame num1, num2 y nmeros 13 + -4 = 9 cadena_de lea de la suma. suma quedan libres segundo nmero num2 entero ? -4 finalizada primer nmero
suma_dos_numeros_enteros empiece entero num1,num2,suma escriba Suma de dos nmeros cualesquiera escriba Por favor dame el primer nmero. lea num1 escriba Por favor dame el segundo nmero. lea num2 suma num1 + num2 escriba num1,+,num2,=,suma escriba Suma de dos nmeros finalizada pare termine
Para establecer relacin entre los operandos suma relacionales entero . ? 9 necesitamos los operadores escriba Para exigir que la condicin ser positivo sea satisfecha por ambos operandos se requiere de los conectores lgicos.
Operadores relacionales
Permiten establecer relaciones entre los operandos.
CONDICIONES
Operador
Descripcin
= >
<
Conectores lgicos
Permiten la creacin de condiciones compuestas
y,
Condicin simple Condicin num1 sea mayor que cero num2 sea mayor que cero Restringir la suma a operandos positivos Expresin num1 > 0 num2 > 0 num1 > 0 y num2 > 0 Condicin simple
c1 c2
V
V
F
V
F
V
V
V
Ejercicios
Construya la condicin o las condiciones que permitan evaluar si: El valor de la variable m est entre -2 y 10. (m -2 y m 10 ) El valor de la variable m es un nmero par que pertenece al intervalo (c,d]. ( (m/2)*2 = m y (m > c y m d) ) El valor de la variable m debe ser 2 veces el valor de la variable n si el valor de n es negativo. Si n es positivo, m debe ser 10 veces el valor de n. ( (m=2*n y n < 0) (m=10*n y n>0) )
suma_dos_numeros_enteros_positivos empiece entero num1,num2,suma escriba Suma de dos nmeros positivos cualesquiera escriba Por favor dame el primer nmero. lea num1 escriba Por favor dame el segundo nmero. lea num2
fin_si
si ( num1 0 num2 0 ) escriba Uno o los dos nmeros es(son) negativo(s) o cero escriba nombre,, hasta luego. escriba Tarea finalizada. fin_si si ( resp s y resp S ) entonces escriba Bueno ser en otra ocasin. fin_si
pare termine
si_no
fin_si
COMENTARIOS
Anotaciones que se hacen en el algoritmo con el fin de documentarlo o hacer aclaraciones sobre partes complejas del mismo.
**
Directorio de variables: Descripcin del uso que se le da a cada variable dentro del algoritmo.
suma_dos_numeros_enteros_positivos empiece ** Suma de dos nmeros entero num1,num2,suma lea num2 ** segundo nmero
** Directorio de variables ** num1: primer nmero ** num2: segundo nmero ** suma: resultado de num1 + num2
escriba Suma de dos nmeros positivos cualesquiera escriba Por favor dame el primer nmero. lea num1 ** primer nmero escriba Por favor dame el segundo nmero.
** Verifica que los dos nmeros sean positivos, ** para realizar la suma y escribir el resultado. si ( num1 > 0 y num2 > 0 ) entonces suma num1 + num2 escriba suma,=,num1,+,num2 fin_si escriba Suma de dos nmeros finalizada pare termine
COMENTARIOS
ejemplo1 empiece
** escriba Que hace este algoritmo
pare termine
Permiten alterar la secuencia de ejecucin del algoritmo. Son repetitivas por que al cumplirse la condicin, su cuerpo de instrucciones se ejecutar automticamente hasta que la evaluacin de la condicin deje de ser verdadera. A cada ejecucin del cuerpo de la estructura de control condicional repetitiva se le llama Iteracin.
Variables de control
fin_mq
No utilizar instrucciones CICLO: que modifiquen aquellas variables utilizadas en la Posibilidad de condicin (cicloejecutar infinito). una serie
haga
fin_mq
Ejercicios
Pedir nmeros a un usuario hasta que el nmero dado sea negativo.
hasta_negativo empiece ** Nmeros negativos entero num ** Directorio de variables ** num: nmero a ser analizado escriba Digite nmeros hasta que ingresar negativo num 0 mq ( num 0 ) haga escriba Por favor dame un nmero. lea num ** cualquier nmero fin_mq
Ejercicios
Calcular la edad y la matrcula promedio para n estudiantes.
** Calculo de edad y matricula promedios ejercicio_2 empiece entero n, edad, edadpro, valmat, matpro ** Directorio de variables ** n: nmero de estudiantes ** edad: edad del estudiante ** valmat: Valor de la matrcula ** edadpro: Edad promedio ** matpro: Matrcula promedio ** inicializacin de variables edadpro 0 matpro 0 escriba Digite nmero de estidiantes lea n ** nmero de estudiantes mq ( n > 0 ) haga escriba Por favor dame la edad. lea edad ** edad del estudiante escriba Por favor dame el valor de la matrcula. lea valmat ** valor de la matrcula del estudiante
Ejercicios
1. Para n nmeros ingresados por el usuario diga:
Cuantos son pares Cuantos son impares Valor de la sumatorio de los nmeros pares Valor de la sumatoria de los nmeros impares
2. Calcular iterativamente la suma 1+2+3+ ...+n, donde n es un valor dado. Validar que n > 1. 3. Para el siguiente par de funciones, encontrar el valor de N tal que f(N) > g(N):
f(N) = 20*N + 100 g(N) = N + 2*N + 17
Ejercicios
4. 5. 6. 7. 8. Dada una cantidad de nmeros n, decir cuanto nmeros son mayores que cero y cuantos son menores que cero. Decir cuantas veces el usuario ingresa la frase Hola Mundo. Escribir por pantalla la palabra SPPC1 tantas veces como el usuario lo desee. Dada una cantidad de nmeros n, calcular su suma y su media aritmtica. Haga prueba de escritorio al siguiente algoritmo:
ejercicio_8 empiece entero cont,lim
lim 10 cont 1 mq ( cont < lim ) haga escriba cont cont cont + 1 lim lim + 1 fin_mq escriba Valor de cont: , cont escriba Fin del ejercicio 8 pare termine
Ejercicios
9. De n nmeros dados, sumar los que son menores que un nmero dado y multiplicar los que sean mayores o iguales a ese valor dado. 10. Averiguar la longitud y la cantidad de vocales que hay en un texto que finaliza con el caracter asterisco (*). 11. Construya un algoritmo que pida los lmites de un intervalo y escriba los nmeros reales que pertenecen a el, de 0.1 en 0.1. 12. Construya un algoritmo que genere una secuencia de nmeros como la que se muestra en el ejemplo, de acuerdo con el valor de un entero positivo ingresado por el usuario. Ej 1:
Valor entero suministrado por el usuario: 4 Resultado: 1 2 2 3 3 3 4 4 4 4 Valor entero suministrado por el usuario: 5 Resultado: 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
Ej 2:
Ejercicios
13. Generar la tabla de multiplicar que el usuario desee. El multiplicador deber variar desde 0 hasta 9. 14. Generar las tablas de multiplicar del 1 al h, donde h > 0 y el multiplicador va de 0 a 9. 15. Escriba un algoritmo que genere la siguiente secuencia de nmeros enteros : Valor dado por el usuario: 5 1335555777777779999999999999999 El valor entero positivo es el nico dato que el usuario tiene que suministrar. 16. Escriba un algoritmo que genere la siguiente secuencia de nmeros enteros : Valor dado por el usuario: 4 1 4 4 9 9 9 16 16 16 16 El valor entero positivo es el nico dato que el usuario tiene que suministrar. 17. Hacer un algoritmo que genere los primeros 11 trminos de la serie de Fibonacci. 18. Obtener el resultado de las siguientes operaciones sin utilizar los operadores de multiplicacin y divisin.
m/n m*n
3ro. Sedebe incrementa laentorno de memoria variable_de_control: Como toda variable, existir en en1 el variable_de_control y debe ser entero. valor_inicial: puede ser constante de tipo entero, variable de tipo entero o expresin cuya evaluacin defina el valor entero. valor_final: puede ser constante de tipo entero, variable de tipo entero o expresin cuya evaluacin defina el valor entero.
fin_para
Quiz
Generar las tablas de multiplicar del 1 al 9, donde laprimera tabla que se debe mostrar es la que el usuario desee. NOTA: El multiplicador deber variar desde 0 hasta 9. Ej: Nmero dado por el usuario n=5 La primera tabla debe ser la del 5, seguida por las tablas del 1, 2, 3, 4, 6, 7, 8 y 9
fin_para
Modifican el valor del incremento automtico de la variable de control. valor_inc: define el valor del incremento y puede ser constante de tipo entero, variable de tipo entero o expresin cuya evaluacin defina el valor entero. Ej: Escriba los nmeros impares de 1 hasta 100.
fin_para
Especifica que la condicin implcita se evale de la forma: variable_de_control valor_final valor_inc: define el valor del incremento y puede ser constante de tipo entero, variable de tipo entero o expresin cuya evaluacin defina el valor entero. Ej: Escriba los nmeros del 1 al 10 en orden descendente. Ej: Escriba los nmeros pares de 5 a 20 en orden dscendente.
Ejercicios
Pruebas de escritorio ej_1 Empiece entero cont, num num 3 cont 15 mq ( cont 2 ) haga escriba num num num + 3 cont cont 7 fin_mq pare termine 1. 2. Qu hace el algoritmo? Valor final de las variables num y cont? ej_2 empiece entero cont para cont 1 hasta 100 haga escriba Quien mal anda, mal acaba. fin_para pare termine 1. 2. Que hace el algritmo? Valor final de la variable cont?
Ejercicios
Pruebas de escritorio ej_3 empiece entero x, m x3 para m 2+x hasta 10 inc 2 haga escriba m fin_para pare termine 1. 2. Que hace el algoritmo? Valor final de las variables x y m?
Pedir un nmero entero positivo n a un usuario y hacer lo sgte: Si el nmero es par, que escriba los nmeros de 1 a n asi: n = 10 1 10 2 9 3 8 4 7 5 6 Si el nmero es impar, que escriba los nmeros de 1 a n asi: n=7 49 25 9 1
Quiz
Hacer un algoritmo que simule el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un da desde las 00:00:00 horas hasta las 23:59:59 horas Hacer prueba de escritorio.
VECTORES
Variables simples: Capacidad para almacenar un datos a la vez
X8 X7
X6
X5 X4
X3
X2 X1
X8
X7
X6
X5
X4
X3
X2
X1
Conjunto de spacios en memoria en los cuales se almacena informacin de algn tipo. El nmero de espacios indica el tamao del vector. El tipo de datos almacenados debe ser el mismo. Por ser variable tiene nombre, tipo y contenido.
VECTORES
INDICE: Nmero de casilla
Para tener acceso a una casilla: nombre de la variable + No. de la casilla. No. casilla: entero positivo DECLARACION DE UNA VARIABLE DE TIPO VECTOR Permite reservar espacio de memoria para la variable de tipo vector
VECTORES
define_vector Empiece entero x(5), m real p pare termine
1. 2. 3.
Como acceder el contenido de un vector? Se debe especificar nombre de variable y entre parntesis la posicin de inters La posicin del vector puede ser: Variable simple tipo entero Expresin matemtica cuyo resultado sea cero (0) o un entero positivo Constante
VECTORES
Ej: 1. 2. 3. 4. 5. 6. Manipular el contenido de una posicin de un vector. () / pos di Inicializacin de un vector con valor constante. Inicializacin de un vector con valores definidos por el usuario. Inicializacin de un vector de cualquier tamao. Inicializacin de un vector de cualquier tamao con valores definidos por el usuario.
VECTORES - Ejercicios
1. Llenar un vector de tamao 40 con los nmeros del 1 hasta el 40. 2. Inicializar cada una de las 50 posiciones de un vector con la frase Hola mundo. 3. Llenar un vector de mximo 100 con las palabras que el usuario desee. 4. Dado un vector de mximo 100 nmeros reales, averiguar si la suma de los contenidos de las posiciones pares (0, 2, ) coincide con el producto de los contenidos de las posiciones impares. 5. Dado un vector de mximo 100 caracteres, escribir si el caracter & se encuentra en el vector. Es posible que el carcter & no se encuentre.
VECTORES - Ejercicios
6. Organizar el contenido de un vector de tipo entero de tal manera que lo nmeros pares queden al principio y los nmeros impares queden al final. 7. Ordenar el contenido de un vector cuyo mximo tamao es 100. 8.
MATRICES C
F I L A S
Arreglos en dos dimensiones. Conjunto de espacios en memoria que a diferencia de los vectores, estn organizados en filas y columnas. El nmero de espacios indica el tamao del vector. El tipo de datos almacenados debe ser el mismo. Por ser variable tiene nombre, tipo y contenido.
MATRICES
INDICE: Nmero de casilla = No. de la Fila, No. de la Columna
Para tener acceso a una casilla: nombre de la variable + No. FILA + No. COL. No. Fila: entero positivo No. Col: entero positivo
DECLARACION DE UNA VARIABLE DE TIPO VECTOR Permite reservar espacio de memoria para la variable de tipo matriz
MATRICES
define_matriz empiece Entero tabla(4,5), ind real val pare termine
1. 2. 3.
Como acceder el contenido de un vector? Se debe especificar nombre de variable y entre parntesis la posicin de inters dada por fila y columna. La posicin de la matriz puede ser: Variable simple tipo entero Expresin matemtica cuyo resultado sea cero (0) o un entero positivo Constante
MATRICES
Ej: 1. 2. 3. 4. 5. 6. Manipular el contenido de una posicin de una matriz. () / pos di Inicializacin de una matriz con valor constante. Inicializacin de una matriz con valores definidos por el usuario. Inicializacin de una matriz de cualquier tamao. Inicializacin de una matriz de cualquier tamao con valores definidos por el usuario.