Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Ciclos y estructuras en programación (página 2)




Enviado por Pablo Turmero



Partes: 1, 2

Monografias.com

LEXICO
DD, HH, MM, SS; Num : Entero;
MAXIMO = 1000000;
Leer(Num)
MIENTRAS Numero > 0 HACER
SEGÚN Num
Num 86400..MAXIMO : DD?Num Div 86400; Num?Num – DD*86400;
Num 3600..86399 : HH?Num Div 3600; Num?Num – HH*3600;
Num 60.. 3599 : MM?Num Div 60; Num?Num – MM*60;
Num 1 .. 59 : SS = Num; Num = 0;
FIN_SEGUN
FIN_MIENTRAS

Monografias.com

Composición REPETIR
 
REPETIR
S
HASTA_QUE COND

Composición ITERAR
 
ITERAR
S1
DETENER: cond
S2
FIN_ITERAR
Otras ComposicionesIterativas Condicionales

Monografias.com

Composicion PARA
Permite expresar el numero de veces que se ejecuta el cuerpo del ciclo.
Este numero esta expresado por el recorrido de un intervalo de valores de tipo ordinal.

Monografias.com

Composicion PARAEsquema General
PARA i [j,n]HACER
S
FIN_PARA;

PARA i [n,j](-)HACER
S
FIN_PARA;
I es un ordinal, j y n representan el valor inicial y final del intervalo.
CR = n – i + 1

Monografias.com

PROBLEMA:Calcular Valor medio de una secuencia de numeros
LÉXICO
S : Secuencia de Real;
Suma : Real;
NumElem : Entero;
ALGORITMO
Comenzar (S);
Suma = 0;
NumElem = 0;
//Eini : suma = 0 y numElem = 0 y ea = Primero (S) y INV = verdadero

Monografias.com

ALGORITMO
MIENTRAS EA (S) < > MarcaFin HACER
suma = suma + EA (S)
numElem = numElem + 1
Avanzar (S)
FIN_MIENTRAS;
//Efin : INV y (EA (S) = MarcaFin)
SI numElem > 0
ENTONCES Escribir(“Valor medio de las notas = ”, suma/num)
SI_NO Escribir(“Secuencia Vacía”)
FIN_SI
FIN

Monografias.com

EJERCICIOS
Dado un conjunto de valores enteros, calcular e imprimir : cuantos valores cero hubo, promedio de los valores positivos, sumatoria de negativos
Resolver el problema para :
100 valores enteros.
N valores, N debe ser leído previamente.
El conjunto termina con un valor igual al anterior.
Se dan N valores, pero el proceso deber finalizar si se procesan todos los valores o la cantidad de ceros supera a cuatro.

Monografias.com

Ejercicios
Dado un conjunto de triángulos representados por sus lados L1, L2 y L3 que finaliza con un triángulo con un lado nulo, determinar e imprimir la cantidad de triángulos equiláteros, isósceles y escalenos.
Dados dos valores N y M determinar e imprimir cuantos múltiplos de M hay dentro del conjunto 1 a N.
Dados dos valores enteros A y B determinar e imprimir el producto de ambos obtenido por sumas sucesivas.
Dado un valor M, determinar e imprimir los M primeros múltiplos de 3 que no lo sean de 5, dentro del conjunto de números naturales.

Monografias.com

Trabajo Practico obligtorio
TP1
Ejercicios 2, 3, 10, 11 y 12
TP2
Ejercicios 2, 3 y 5
TP3
Ejercicios 1, 3, 4, 6 y 8
TP4
Ejercicios 8, 9, 10 y 11
La presentación será individual, utilizando la notación algoritmica desarrollada en el curso, debe incluir:
Caratula con datos del estudiante y fecha presentacion
Enunciado, Lexico y algoritmo.
Debe enviarse via a correo electronico y antes de la ultima clase.

Monografias.com

Recursividad
Una funcion con sentencias entre las cuales se encuentra una llamada a si misma se dice que es recursiva.
Divide el problema original en subproblemas mas pequeños. Cuando es lo suficientemente chico se resuelve directamente y se combinan soluciones del subproblema hasta que queda resuelto el problema.

Monografias.com

Requerimientos
El flujo de controlde una funcion recursiva requiere tres condiciones para una terminacion normal:
1 Un test para detener o continuar con la recursion.
2 una llamada recursiva para continuar la recursion
3 un caso base para terminar la recursion

Monografias.com

A tener en cuenta
Define el problema en terminos de un problema mas simple de la misma naturaleza.
Debe disminuir el espacio del problema en cada llamada recursiva
Hay una instancia particular que se conoce como caso base o caso degenerado

Monografias.com

Iteracion vs Recursion
Considerar solucion recursiva solo si una solucion iterativa sencilla no es posible.
Solo utilice recursividad dentro de limites aceptables de ejecucion y uso de memoria.
Si son posibles las soluciones iterativas y recursivas esta ultima requerira mas tiempo y mas recursos de memoria.
En ciertos problemas la recursion produce soluciones mas simples de leer. Los beneficios de la claridad compensan el costo extra
Ambas implican repeticion. iteracion explicitamente y recursion con llamadas repetidas.
Ambas consideran un test de salida. Iteracion en la condicion, recursividad en el caso base

Monografias.com

Ejemplo
Factorial (dato N : Entero)? Entero : Funcion
ALGORITMO
SI N = 0
Entonces
Factorial = 1
SI_NO
Factorial = N * Factorial (N – 1)
FIN_SI
FIN.

Monografias.com

Datos de tipo estructurado
Hemos trabajado con tipos que definen un dominio de valores simples o atomico.
Datos de tipo estructurado.
Compuestos por mas de un dato.
Divisible en datos mas elementales.
Unico nombre para todo el conjunto.
Acceso directo a cada miembro del conjunto.

Monografias.com

Tipo Registro
Compuesto por una enumeracion de otros valores de tipo ya definidos.
El termino campo refire a cada elemento del registro.
El operador de acceso a cada miembro es el operador . (punto).
NombreEstructura.NombreCampo.
La cardinalidad de un tipo es el numero de valores de su dominio.

Monografias.com

Definicion de tipos
LEXICO
NombreDelTipo = TIPO < c1 : Td1;
c2 : Td2;
………….
cn : tdn >;
Punto = TIPO < abs: Real ; ord: Real>

Monografias.com

Asignación
Interna:
Campo campo
Estructura completa (de igual tipo);
Externa
De entrada – salida
Campo a campo (dispositivo std)
Estructura completa (otro dispositivo)

Monografias.com

Tablas
Los lenguajes de programacion usan el termino array para referirse a tablas.
Permite almacenar colección de valores y asociar un indice a cada valor almacenado.
Es posible el acceso indexado.
Son posiciones contiguas de datos homogeneos y de tamaño fijo.
El operador de acceso es [ ].
Cada subordinacion incrementa la dimension.
Tamaño logico y fisico.

Monografias.com

Declaraciones
NombreTipo = TIPO Tabla [li, lf] de TipoBase
TVR = TIPO Tabla [1, 100] de Real
La variacion del indice determina la cantidad de elementos, el tipoBase de que tipo es cada componente.
TR = TIPO < absc : Real; ord : Real>
TVR = TIPO tabla [1, 50] de TR
Tabla : TVR

Monografias.com

Operaciones basicas
Asignacion
Interna (por elemento o por estructura)
Externa de entrada o salida
Por elemento
Por estructura completa
Acceso directo
Recorrido
Busqueda Secuencial Binaria Directa
Ordenamiento

Monografias.com

ESQUEMA DE RECORRIDO
PARA i [li, ls] HACER
// INV = V f(i)
FIN_PARA

Monografias.com

Tablas vs Registros
Registro permite agrupar datos no homogeneos, la tabla homogeneos.
Las tablas permiten el acceo directo a sus miembros por un indice y los registros por el operador punto.
En un registro el numero de miembros lo de sus campos en una tabla el intervalo de los indices.

Monografias.com

Ejercicios
Ingresar un valor N (< 25). Generar un arreglo de N componentes en el cual las mismas contengan los primeros números naturales pares e imprimirlo.
Ingresar un valor entero N (< 30) y a continuación un conjunto de N elementos. Si el último elemento del conjunto tiene un valor menor que 10 imprimir los negativos y en caso contrario los demás.
Ingresar un valor entero N (< 25). A continuación ingresar un conjunto VEC de N componentes. Si la suma de las componentes resulta mayor que cero imprimir las de índice par, sino las de índice impar.

Monografias.com

Tablas Multidimensionales
Si una tabla representa una funcion de un argumento las tablas multidimensionales representan una funcion de n argumentos, uno por cada dimension.
Se utilizan para representar colecciones de objetos de la misma naturaleza a los que se puede acceder mediante un conjunto de indices.
La nocion matematica de matriz se puede representar mediante un atabla de dos dimensiones.

Monografias.com

Declaraciones
NombreTipo = TIPO Tabla [fi, fj; ck,cl] de TipoBase
TTR = TIPO Tabla [1, 100; 1,10] de Real
El producto del intervalo de sus indices determina la cantidad de elementos, el tipoBase de que tipo es cada componente.
El tipo puede ser primitivo o derivado.

Monografias.com

ESQUEMA DE RECORRIDO
INV = T
PARA i [1, nfilas] HACER
INV = T
A = f(fila(i))
PARA j [1, ncol] HACER
INV = T
A = f(fila(i),col(j)
FIN_PARA
FIN_PARA

Monografias.com

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter