Upload
gabriel-dos
View
28
Download
0
Embed Size (px)
Citation preview
Lo co
ICapacidad Afcenn?
r ~Importante
f
*Inexistente
I
f >
ISimptico
f
*~ Cuerdo
iTrabajo duro? /:.. , ;]'."';,4
Muct>0
4Actitud?
^ -Indiferente
iO d ia a A d u i t o s O d i a a N i n o s PaetenteOonrnkto Paciente Muerto4 4 i 4
4Poco
TB o rd e
fMiedo a a Luz
4Mtdo a to Oscuridad
t iPtensa en Grande Ptensa en Pequeo
. J i 4
1INTRODUCCION
Los matemticos hindes, rabes y europeos fueron los primeros que desarrollaron tcnicas de clculo escrito. El matemtico rabe AIVKhwarizmi, alrededor del ao 830 DC, escribe un libro de Aritmtica, traducido al latn como Algoritmi de numero lndorum, donde introduce el sistema numrico indio (slo conocido por los rabes unos 50 aos antes) y los mtodos para calcular con l. De esta versin latina proviene la palabra Algoritmo.
Por algoritmo se entiende "una lista de instrucciones donde se especifica una sucesin de operaciones necesarias para resolver cualquier problema de un tipo dado". Los algoritmos son modos de resolucin de problemas, cabe aclarar que no slo son aplicables a la actividad intelectual, sino tambin a todo tipo de problemas relacionados con actividades cotidianas. El algoritmo es de carcter general y puede aplicarse a cualquier operacin matemtica o a cualquier problema. La formulacin de algoritmos fue uno de los ms grandes adelantos dentro de la ciencia matemtica ya que a partir de ello se pudieron resolver infinidad de problemas. Landa, matemtico ruso, quien ha investigado mucho al respecto nos dice que "la ciencia matemtica, en el proceso de su desarrollo, ha tratado de encontrar los algoritmos ptimos ms generales para resolver los problemas que permitan la lucin uniforme de clases ms amplias de problemas de una manera, es decir,
npleando siempre el mismo sistema de operacin. Los algoritmos, para llegar a ser es deben reunir ciertas caractersticas. Una de ellas es que los pasos que deben guirse deben estar estrictamente descritos, cada accin debe ser precisa, y debe r general, es decir, que pueda ser aplicable a todos los elementos de una misma ase. Por ejemplo en el caso del algoritmo de una muttiplicacin, no slo se realizar procedimiento de resolucin parte para la multiplicacin de 4 x 4, sino que el mismo 30ritm0 podr aplicarse a cualquier muttiplicacin. La ltima de estas caractersticas
ser la resolucin, en otras palabras.
Es de gran importancia aclarar que los algoritmos en si mismos no resuelven problemas, se resuelven gracias al producto de ejercer las operaciones dictadas por el algoritmo, se puede decir que es por el planteamiento mismo. La realizacin de algoritmos es natural e innata en el hombre y en la mayora de los casos es de tipo inconsciente, en otras palabras, las personas suelen resolver problemas sin tener que recurrir a la aplicacin de cierto algoritmo.
En el presente trabajo se enfocan diversos puntos que son de gran importancia como lo son Algoritmo del cual hemos comentado anteriormente . Flujo grama el cual no es ms que la representacin grfica de un algoritmo y el cual es necesario para la realizacin de un buen programa , haciendo que el hombre organice sus ideas y conozca a fondo el problema a solucionar con todas ias posibles variantes 0 alternativas utilizando esta tcnica. Tambin se hablar de ciertos puntos referentes a Estructura de Datos, Variables , Constantes y se reflejaran ejemplos para su mejor compresin
Espero sea de su agrado y cualquier comentario acerca del mismo lo pueden hacer al email: [email protected] 0 @Gmail.com 0 [email protected] gracias..
Algoritmo: Definicin
Es un Mtodo para resolver un problema mediante una serie de pasos precisos , definidos y finitos. Un algoritmo es una serie de operaciones detalladas ,en otras palabras un algoritmo es un conjunto de reglas para resolver una cierta clase de problemas y se puede formular de muchas formas con el cuidado de que no exista ambigedad.
Caractersticas
Preciso (debe indicar el orden de realizacin en cada paso y no puede tener ambigedad).
Definido (si se sigue dos veces, obtiene el mismo resultado cada vez) Finito (tiene fin; un nmero determinado de pasos ). Debe ser Sencillo , Legible. Modular. Eficiente y Efectivo. Se ha de desarrollar en el menor tiempo posible. Correcto. TodoAlgoritmodebetenercerom asentradas. Debe tener al menos una salida y sta debe ser tangible.
Constantes: Definicin Una constante es un dato cuyo valor no puede cambiar durante la ejecucin del programa. Recibe un valor en el momento de la compilacin y este permanece inalterado durante todo el programa. Las constantes se declaran en una seccin que comienza con la palabra reservada const . Despus de declarar una constanta se puede usar en ei cuerpo principa) de) programa. Tienen varios usos: ser miembro en una expresin, en una comparacin, asignaT su valor a una variable, etc.
Constantes decaradasTambin llamadas constantes con nombre, son las que se declaran en la seccin Const asignndoles un valor directamente.
Por ejemplo: const
Pi = 3.141592; (* valorreal *)Min = 0; (* entero *)Max = 99; (* entero *)Saludo = VHolaV; (* cadena caract. *)
Constantes expresin Tambin se declaran en la seccin Const pero a estas no se les asigna un valor directamente, sino que se les asigna una expresin. Esta expresin se evala en tiempo de compilacin y el resultado se le asigna a la constante.
Ejemplo:const
Min = 0;Max = 100;Intervalo = 10;N = (Max - Min) div Intervalo;Centro = (Max - Min) div 2;
Variables: DefinicinUna variable es un nombre asociado a un elemento de datos que est situado en posiciones contiguas de la memoria principal, y su valor puede cambiar durante la ejecucin de un programa. Toda variable pertenece a un tipo de dato concreto. En la declaracin de una variable se debe indicar el tipo al que pertenece. As tendremos variables enteras, reales, booleanas, etc. Por otro lado, distinguimos tres partes fundamentales en la vida de una variable:
Var. Numerica Decimal (Reai) N1, N2, PN;
Una variable no representa ms que una porcin de memoria en donde guardamos un dato que depender del tipo al que pertenezca la variable. A diferencia de una constante, el valor de una variable puede cambiar durante la ejecucin de un programa. Otra diferencia, es que a una variable no basta con declararla, sino que tambin es necesario inicirla. Esto se refiere a darle un valor inicial, y es importante ya que si no lo hacemos, igual nos encontramos con errores cuando ejecutemos el programa.Ejemplo de declaracin de variables:
var
VAR. DECIMAL I, J, K;
VAR. ENTERA Contador;
VAR CARCTER NOM, APE,
Cada lenguaje de programacin tiene sus propios tipos de datos, algunos de estos son comunes a todos, entre los tipos de datos comunes estn :
o Entero, o Real, o Carcter, o Lgico,o Fecha / hora y Cadena.
El tipo entero o lntegerEl tipo de datos entero es un tipo simple, y dentro de estos, es ordinal. Al declarar una variable de tipo entero, se est creando una variable numrica que puede tomar valores positivos o negativos, y sin parte aeomaj, Esit ^ ^ variables, puede utilizarse en asignaciones, comparaciones, expresiones aritmticas, etc.
El tipo lgico o BooleamEl tipo de datos lgico es el que permite usar variables que disponen Slo de dos posibles valores: cierto falso. Debido a esto, su utilidad salta a la vista, y no es otra que variables de chequeo. Nos sirven para mantener el estado de un objeto mediante dos valores: si/no - cierto/falso - funciona/no funciona - on/off
El tipo Decimal o realEl tipo de datos real es el que se corresponde con los nmeros reales. Este es un tipo importante para los clculos. Por ejemplo en los estadsticos, ya que se caracterizan por tratar fundamentalmente con valores decimaJes. A continuacin se muestra un ejemplo en el que se utiliza el tipo real. En el se puede vev tas dos formas de declarar una variable real, y tambin el uso de una constante real.
Los tipos carcter y cadena o Char (String)Con el tipo carcter se pueden tener objetos que representen una letra, un nmero, etc. Es decir, se usan variables o constantes que representen un valor aJfanumrico. Pero , cada variabJe slo podr almacenar un carcter. Sin embargo, con las cadenas de caracteres (strings) se puede contener en una sta variable ms de un carcter. Por ejemplo, se puede tener en una variable tu nombre.
Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solucin a un problema especfico.
El programador disea un programa, para resolver un problema particular.
Disear es un proceso creativo. El proceso de diseo de un programa consta de los siguientes pasos o
etapas: .
Pasos:
'PasosEtapa {Descripcin
Anlisisdelproblema jConducen al diseo detallado por medio un : :------------------------------- cdigo escrito en forma de un algoritmoDiseo de algoritmo
Codificacin Se implementa el algoritmo en un cdigo escrito en un lenguaje de programacin. Refleja las ideas desarrolladas en las etapas de anlisis y diseo
Compilacinyejecucin * *Traduce el programa fuente a programa en*cdigodemaquinayloejecuta.
516
7
!Verificacin
!Depuracin
!Documentacin
|
Busca errores en ias etapas anteriores y los| elimina.
Son comentarios, etiquetas de texto, que facilitan la comprensin del programa }
!Conceptoi
AJooritmo es un mtodo para resoJver jun problema mediante una serie de ;pasos definidos, precisos y finitos.
Preciso.implica eJ orden de realizacin de cada uno de los pasos
!Definido: si se sigue dos veces, se !obtiene el mismo resultado.
Finito: Tiene un numero determinado de pasos, implica que tiene un fin,
T ipo s :
Mtodo jDescripcin Ejemplos
Algortmico Utiliza un algoritmo y puede serf implementado en una computadora )
Heurstica: Se apoya en el resultado obtenido? en un anlisis de alternativas de (experiencias anteriores similares.? jDe las mismas, a se deducen una; ;serie de reglas empricas o heursticas que de ser seguidas, iconducen a la seleccin de la mejor alternativa en todas o la mayora de las veces.
Instrucciones manejar un vehculo
Instrucciones secar g rano a gTanei
Instrucciones resolver ecuacin segundo grado
paraj
para;1
parade
El cientfico de computacin Donald Knuth ofreci una lista de cinco propiedades, que so.o ampliamente aceptadas como requisitos para un algoritmo:
Carcter fin ito . "Un algoritmo siempre debe terminar despus de un nmero finito de pasos".Precisin. "Cada paso de un algoritmo debe estar precisamente definido; las operaciones a llevar a cabo deben ser especificadas de manera rigurosayno ambigua para cada caso".Entrada. "Un algoritmo tiene cero o ms entradas: cantidades que le son dadas antes de que el algoritmo comience, o dinmicamente mientras el algoritmo corre. Estas entradas son tomadas de conjuntos especficos de objetos".
Salida. "Un algoritmo tiene una o ms salidas: cantidades que tienen una relacin especifica con las entradas".Eficacia. "Tambin se espera que un algoritmo sea eficaz, en el sentido de que todas las operaciones a realizar en un algoritmo deben ser suficientemente bsicas como para que en principiopuedan serhecrias de manera exacta y en un tiempo finito por un hombre usando lpiz y papet'.
Medios de expresin de un aJgoritmo
Los algoritmos pueden ser expresados de muchas maneras, incVuyendo ai
lenguaje natural, pseudocdigo, diagramas de flujo y lenguajes de programacin entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocdigo y diagramas de flujo evita muchas ambigedades del lenguaje natural. Dichas expresiones son formas ms
estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programacin especifico.La descripcin de un algoritmo usualmente se hace en tres niveles:
1. Descripcin de alto nivel. Se establece el problema, se selecciona un
modelo matemtico y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
2. Descripcin formal. Se usa pseudocdigo para describir la secuencia de pasos que encuentran la solucin.
3. Implementacin. Se muestra el algoritmo expresado en un lenguaje de programacin especfico o algn objeto capaz de llevar a cabo instrucciones. Tambin es posible incluir un teorema que demuestre que el alaoritmo es correcto, un anlisis de comDleiidad o ambos.
Flujograma: DefinicinEs un esquema para representar grficamente un algoritmo .Se basan en la utilizacin de diversos smbolos para representar operaciones especficas. Se les Uama diagramas de fluio porgue los smbolos utilizados se conectan por medio de flechas para indicar la secuencia de operacin. Para hacer comprensible )os Diagramas a todas Jas personas , /os Smbolos se sometieron a una normalizacin , o lo que es en realidad se hicieron smbolos casi universales, ya que , en un principio cada usuario poda teneT sus pTopios smbolos para representar sus procesos en forma de Diagrama de Flujo.
Terminal (representa d Lrdeio y el Final, de un programa, puede representar tambin una parada o interrupcin prograrnada que sea necesario realizar en un programa.
Entrada'SaHda (cualquier tipo de introduccin de datos)
C Z >
Z 7 ~
Proceso (cualquier tipo de operacin que pueda originar cambio de valor, formato o posicin de la informacin almacenada en memoria, operadones aritmticas).
D esid0n (indica operadones lgicas o de comparadn entre datos -normalmante dos- y en fundn del resultado de la misma determina cual de los distintos caminos aItemadvos del programa se deb e seguir).
Desidn mltiple (en ftxnan del resultado de a compaidii se seguir uiio c fe os diferentes caminos de acuerdo con dicho resultado).
OConector (Sirve para enlazae dos partes cualesquiera de un organigrama a tiavs de un conector en la salida y otro conector en la salida)
kidicador de direccin o lnea de: flujo (indica el sentido de ejecudn de las operadones)
Lnea conectora (sirve de unin entre dos smb o,los).
C o n ec to r (C o n e x i n e n tre dos p u n to s del o rg an ig ram a s itu ad o en p g in a s d ife ren tes).
L lam ad a a su b ru tin a o a u n p ro ceso p red e te rm in ad o (u n a sub ru tina es u n m d u lo indsvendients d vrosamsT)
C Z ) P an ta lla ( s e u tiliz a e n o casio n es en lu g a r del s m bo lo d e E /S).
& npresora (se u tiliza e n o cas io n es en lu g a r del sm bo lo d e E7S).
T eclado (S e u tiliza en o cas io n es en lu g a r del sm bo lo d e E /S ).
Ejemplo de un Algoritmo sencillo con su respectivo Flujograma. Considere un Algoritmo para leer dos nmeros A y B luego sumarlos y por ltimo imprimir o mostrar el resultado de la suma.
Inicio LeerA Leer B C = A + B Mostrar C Fin
^ IWCIO ^
, +LEERA,B /
C = A +B
TMOSTRAR C
^
( Fl" )Pseudocdigo
Pseudocdigo es la descripcin de un algoritmo que asemeja a un lenguaje de
programacin per con algunas convenciones del lenguaje natural. Tiene varias ventajas con respecto a los diagramas de flujo, entre las que se destaca el poco espacio que se requiere para representar instrucciones complejas. El pseudocdigo no est regido por ningn estndar, pseudo viene de faJso y por ende es un cdigo al que aunque es entendible no se aplica al proceso que debe realizar la maquina.
1. REALICE UN ALGORITMO QUE CALCULE EL PROMEDIO DE NOTAS DE UN ALUMNO, LOS DATOS SON: NOMBRE, NOTAl, NOTA2 Y NOTA3, CALCULE EL PROMEDIO Y A LA SALIDA IMPRIMA EL NOMBRE Y SU PROMEDIO DE NOTAS.
INICIO
VAR. CARCTER NOMBRE;
VAR. NUMERICA DECIMAL NOTA1, NOTA2, NOTA3, PROMEDIO;
ESCRIBIR (DAR NOMBRE DEL ALUMNO:");
LEER NOMBRE;
ESCRIBIR ("DAR PRIMERA NOfA:);
LEER NOTA1;
ESCRIBIR ("DAR SEGUNDA NOTA:! ;
LEER NOTA2;
ESCRIBIR (DAR TERCERA NOTA:),-
LEER NOTA3;
HACER PROMEDIO=(NOTA1+NOTA2+NOTA3)/3;
ESCRIBIR (EL ALUMNO ES. , NOMBRE);
ESCRIBIR (EL PROMEDIO ES: , PROMEDIO));
FIN.
C I N I C I O ^ }
LEER Nombre, N otal, Nota2,
Nota3
Prom = (Nota1+Nota2+Nota3)/3
IMvOSWAR NOWARt, PROW>EWO
C FIN )2. REALCE UN ALGORTMO QUE CALCULE EL TOTAL Y PROMEDO DE
VELOCIDAD DE UN CICLISTA, LOS DATOS DE ENTRADA SON: NOMBRE, EQUIPO, VELOCIDAD 1, VELOCIDAD 2, VELOCIDAD 3. CALCULE EL TOTAL Y PROMEDIO, A LA SALIDA IMPRIMA EL NOMBRE, TOTAL Y PROMEDIO.
INICIO
VAR. CARCTER NOMCICLISTA;
VAR. NUMERICA DECIMAL VEL1,VEL2, VEL3, TOT, PROM;
ESCRIBIR ( NOMBRE DEL CICLISTA:);
LEER NOMCICLISTA;
ESCRIBIR ("DAR VELOCIDAD 1:);
LEERVEL1;
ESCRIBIR ("DAR VELOCIDAD 2:);
LEER VEL2;
ESCRIBIR (DAR VELOCIDAD 3:);
LEER VEL3;
HACER TOT = VEL1+VEL2+VEL3;
HACER PROM = TOT / 3;
ESCRIBIR ("EL CICLISTA ES:" , NOMCICLISTA);
ESCRIBIR (EL TOTAL ES: , TOT);
ESCRIBIR (EL PROMEDIO ES:" , PROM);
FIN.i
( '
3. REALICE UN ALGORITMO QUE CALCULE EL TOTAL DE COMPRAS, EL IVA (9%] Y EL TOTAL A PAGAR DE UN CUENTE. LOS DATOS DE ENTRADA SON: NOMBRE, COMPRAl, COMPRA2 Y COMPRA3, EL IVA SE CALCULA POR EL TOTAL DE COMPRAS, CALCULE EL TOTAL A PAOAR Y A LA $AUDA IMPRIMA EL NOMBRE ,IVA, TOTAL DE COMPRAS Y TOTAL A PAGAR.
INICIO
VAR. CARCTER NC:.
VAR. NUMERICA DECIMAL C1, C2, C3, TC, IVA, TP ;
ESCRIBIR ( NOMBRE DEL CLIENTE : );
LEERNC;
ESCRIBIR { DAR COMPRA 1:);
LEERC1;
ESCRIBIR ( DAR COMPRA 2: );
LEER C2;
ESCRIBIR ( DAR COMPRA 3: );
LEER C3;
HACER TC = C1 + C2 + C3 ;
HACERWA = 7C *SMOO;
HACER TP = TC + IVA ;
ESCRIBIR ( EL CLIENTE ES : , NC);
ESCRIBIR ( EL TOTAL A APAGAR ES : , TP);
r PC 10 J
LEER NOM
X LEER CJ, C2, C3 X
TC = CT + C 2+ C S
IVA * TC * 9 /100
_______11________TP a TC + IVA
_______ ; 1_____________MOSTRAR NC
MOSTRAR TP
C w )
f ) REALICE UN ALGORITMO QUE CALCULE EL SALDO TOTAL DEL CUENTE DE vy BANCARIBE. LOS DATOS DE ENTRADA SON: NOMBRE, EDAD, TIPO DE
CUENTA, DOS DEPSiTOS Y UN RETIRO. CALCULE EL SALDO TOTAL Y A LA SALIDA IMPRIMA EL NOMBRE, Y SALDO TOTAL
INICIO
VAR. CARCTER NOMBRE, TIPO;
VAR. NUMERICA ENTERA EDAD ;
VAR. NUMERICA DECIMAL D1, D2, R1, ST ;
ESCRIBIR (*' NOMBRE DEL CLIENTE : ");
LEER NOMBRE;
ESCRIBIR ( DAR EDAD DEL CLIENTE : );
LEER EDAD;
ESCRIBIR (DAR DEPOSITO 1:");
LEERD1;
ESCRIBIR ( DAR DEPOSITO 2: );
LEER D2;
ESCRIBIR ("DAR RETIRO 1:"|;
LEERR1;
HACER ST = (D1 + D2) - R1 ;
ESCRIBIR ( EL CLIENTE ES : , NOMBRE);
ESCRIBIR ( LA EDAD: , EDAD) ,
ESCRIBIR ( EL SALDO TOTAL ES : , ST);
FIN.
c lV/CIO ;*
LEER NOM
/ MOSTRAR EDAD ^ ^^ _________________/
_ l ___________ .
^ / ' MOSTRAR^ _ y ^
A. DETERMINE EL AREA DE UN CUADRADO, EL DATO ES LADO.
B. CALCULE EL AREA DE UN TRIANGULO, LOS DATOS SON BASE Y
ALTURA ( B, H) IMPRIMA A LA SALDA EL AREA DEL TRIANGULO.
C. DETERMINE EL DIMETRO DE UNA CIRCUNFERENCIA, EL DATO
ES RADIO, IMPRIMA A LA SALIDA EL DIMETRO.
D. UN GANADERO DESEA CONOCER CUANTO GANA DIARIO,
SEMANAL Y MENSUAL POR CONCEPTO DE LA VENTA DE LECHE
AL ORDEO DE 55 VACAS, EL PRECIO QUE LE PAGAN POR LITRO
ES DE 1,5 BsF. LOS DATOS SON, NOMBRE DEL GANADERO,
NOMBRE DE LA FINCA, NUMERO DE UTROS DIARIOS DE CADA
VACA Y PAGO POR LITRO (1,5BsF). IMPRIMA A LA SALIDA EL
NOMBRE DEL GANADERO, NOMBRE DE LA FINCA, GANANCIA
DIARIA GENERAL, GANANCIA SEMANAL Y MENSUAL EN BsF.
E. UNA EMPRESA DESEA CONOCER EL TOTAL DE ASIGNACIN, EL
TOTAL DE DEDUCCIN Y EL SUELDO NETO DEL EMPLEADO. LOS
DATOS SON: NOMBRE DEL EMPLEADO, APELLIDO, CEDULA,
EDAD, NACIONALIDAD, ESTADO CIVIL, HORAS TRABAJADAS AL
MES Y PAGO POR CADA HORA. EL S.S.0 TIENE UN VALOR DE 6%
DEL SUELDO BASICO, LA L.P.H VALE 2%, LA L.P.F UN 4%, UN
BONO DE TRANSPORTE TIENE UNA ASIGNACIN DE 150 BsF, UN
BONO ESPECIAL DE 22 DIAS, Y TICKET CESTA DEL 45% DEL
SUELDO. CALCULE: EL SUELDO BASICO, TODAS LAS
DEDUCCIONES Y SU TOTAL, TODAS LAS ASIGNACIONES Y SU
TOTAL Y EL SUELDO NETO. TENGA EN CUENTA QUE EL MES SE
CALCULAA 30 DIAS.
F. DETERMINE LA NOTA DEFINITIVA DE UN ALUMNO, LOS DATOS DE
ENTRADA SON: CEDULA, NOMBRE Y APELUDO, UN\VERS\DAD,
1 NOTA LABORATORIO(25%), 2NOTAS TEORIA(35%), 1 NOTA DE
EXPOSIVCION(15%) Y 3 NOTAS DE TRABAJOS(15%), CALCULE LA
NOTA DEFINITIVA E IMPRIMA A LA SALIDA: LA CEDULA, EL
NOMBRE YAPELLlDO Y LA NOTA DEFINITIVA.
Estructurade Datos :Repetitivas y Secuencial
Las estructuras repetitivas o iterativas son aqueas en as que fas acciones se ejecutan un nmero determinado de veces y dependen de un valor predefinido o el cumplimiento de una determinada accin. Caractersticas
Las estructuras repetitivas permiten representar aquellas acciones que pueden descomponerse en otras sub-acciones primitivas.
Es una estructura con una entrada y una salida en la cual se repite una accin un nmero determinado o indeterminado de veces
En una Estructura Repetitiva Mientras (While) se repite una accin mientras se cumpla la condicin que controla el bucle. La caracterstica principal de esta estructura es lque la condicin es evaluada siempre antes de cada repeticin.
La estructura repetitiva Desde(FOR) permite que las instrucciones las cuales contiene en su mbito, se ejecuten un nmero de veces determinado.
Entre las estructuras repetitivas se encuentran:
CICLO MIENTRAS O^HILE) - CICLO REPITA (Repeat) - CICLO PARA (FOR)
Estructura Mientras (while)La estructura repetitiva while, es aqulla en que el cuerpo del bucle se repite mientras se cumple una determinada condicin, su representacin grfica es:
Pseudocdigo en espaol Mientras condicin hacer Accin S1 Accin S2
accin Sn Fin_mientras teJ& iem p&LContar los nmeros enteros positivos introducidos por teclado. Se consideran dos variables enteras NUMERO y CONTADOR (contar el nmero de enteros positivos). Se supone que se leen nmeros positivos y se detiene el bucle cuando se lee un nmero negativo o cero.Pseudocdigo
Iniciocontador 0 Leer (numero)Mientras numero > 0 hacer
contador=contador+1 Leer(numero)
Fin_MientrasEscribirO'EI nmero de enteros positivos es : V, contador)Fin
Estructura Repetir (Repeat)Esta estructura se ejecuta hasta que se cumpla una condicin determinada que se comprueba hasta el final del bucle. Se ejecuta al mnos una vez. El bucle repetir-Hasta _ que se repite mientras el valor de la expresin booleana de la condicin sea falsa, justo la opuesta de la sentencia mientras.Pseudocdigo en Espaol Pseudocdigo en Ingls Repetir Repeat
Hasta que .Until Diagrama de Flujo de Repetir
Construir un programa aue sumeiodos los nmeros que introduce el usuario hasta que introduzca el nmero cero.
mientras numero > 0 repetir comienzo
suma_acumulada := suma_acumulada + numero; leer (numero);
fin mientras;mostrar ("La suma acumulada es:", suma_acumulada);
Estructura Para (For)Esta sentencia incluye una expresin que especifica el valor inicial de un ndice, otra expresin que determina cuando se contina o no el bucle y una tercera expresin que permite que el ndice se modifique al final de cada pasada.La forma general de esta sentencia es:for (expresin 1; expresin 2; expresin 3) sentenciaen dondeexpresin 1 (expresin de asignacin), inicializa algn parmetro (llamado ndice) que controla la repeticin del bucle;expresin 2 (expresion lgica), representa una condicin que debe sersatisfecha para que se contine la ejecucin del bucle;expresin 3 (expresin monaria o expresin de asignacin), modifica el valordel parmetro inicialmente asignado por la expresinLa ejecucin de la sentencia for sucede de la siguiente forma:
/* declaraciones */float numero, suma_acumulada;/*instrucciones*/comienzo
/*inicializacion*/ suma_acumulada := 0;
leer (numero);
fin;
Pseudocdigo en Espaol
Desde variable(v)= vi Hasta vf hacer
Fin_desde Donde:
v: Variable ndicevi, vf: Valores inicial y final de la variable
Hemeto:Preguntar un nombre y repetirse en pantalla n veces como se desee.
InicioCadena: nom entero : x, n Inicioescribir('Nombre: ') leer(nom)escribir(Cuntas veces quieres repetirlo ? : ) leer(n)para x=1 hasta n hacer
escribir(x'.- , nom)Fin
EjemploSuponga que un curso estaba compuesto de tres estudiantes. Cada uno de los estudiantes curs dos asignaturas. Se deben leer inicialmente los nombres de los tres estudiantes, los nombres de las dos asignaturas y luego: las calificaciones definitivas de cada una de las dos asignaturas para cada uno de los tres estudiantes. Calcular:
1 . la nota promedio de cada uno de los tres estudiantes.2 . la nota promedio de cada una de las asignaturas.
DECISIONES: SE UTILIZAN PARA DETERMINAR EL CASO SEGN SE CUMPLA DICHA DECISIN, ES DECIR, DOS 0 MAS POSIBLES RESPUESTAS QUE SE PUEDAN TENER EN DETERMINADO MOMENTO.CUANDO DENTRO DE LA DECISIN HAY UNA SOLA INSTRUCCIN NO ES NECESARIO ABRIR Y CERRAR LLAVES, SI HAY MAS DE UNA mSTRUCCtN SE ABREN Y CIERRAN LLAVES.
IF (VAR = CONDICIN)
INSTRUCCIN;
IF (VAR = CONDICIN)
{
INSTRUCCIN;
INSTRUCCIN;
)
CONTADORES: SON OPERADORES QUE SE ENCARGAN DE INCREMENTAR EL VALOR DE UNO EN UNO, ES DECIR, SU INCREMENTO VA DE 1 + 1, CADA VEZ QUE SE EJECUJE 0 SE CUMPLA LA CONDCiON: DEBEN ESTAR !NiCiALiZADOS EN UNO, DEBEN SER VARIABLES DE TIPO ENTERO. C = C+1; o C++;
ACUMULADORES: SON OPERADORES QUE SE ENCARGAN DE INCREMENTAR EL VALOR DE UNO EN UNO, ES DECIR, SU INCREMENTO VA DE 1 + 1, CADA VEZ QUE SE EJECUTE 0 SE CUMPLA LA CONDICiON: DEBEN ESTAR NICIALZADOS EN UNO, DEBEN SER VARIABLES DE TIPO ENTERO. C = C+1; o C++;
EJEMPLO: REALICE UN PROGRAMA P AR ^PER SO N AS, CUENTE LOS MAYORS DE EDAD, LOS MENORES DE EDAD, YACUMUbE TODAS LAS EDADES, LOS DATOS DE ENTRADA SON: NOMBRE Y EDAD. USE MiENTRAS*
INICIO
VAR. CARCTER NOMBRE;
VAR. NUMERICA ENTERA EDAD, X , CMAY, CMEN, AE;
CMAY=0;CMEN=0;AE=0; t f & t i ^
REPITA MIENTRAS X=18) ENTONCES
- ^ ' . i / i B V %
BW&s
smoCMEN=CMEN+1;
FIN SI ^
A E - A E . E D A D ; ^ ' ; V , | . . ^ ^ ^ '
* X . l- -w ^ . , y V > W
FIN MIENTRAS
ESCRIBIR (LOS MAYORES DE EDAD SON: ,CM AY);
ESCRIBIR (LOS MENORES DE EDAD SON: ,CM EN);
ESCWBVR (EL TOTA DE EDADES E S : , AE>;
FIN.
MOSTRAR CMAY
MOSTRAR CMEN
EJEMPLO: UNA EMPRESA DESEA SABER DE 8 EMPLEADOS CUANTOS DE ELLOS TIENEN HIJOS Y CUANTOS NO, ADEMAS DESEA SABER CUANTO DINERO CANCELA POR CONCEPTO DE NOMINA. REALICE UN ALGORITMO QUE REALICE LO ANTERIOR, LOS DATOS DE ENTRADA SON, NOMBRE, No DE HIJOS Y SUELDO BASICO. USE REPITA HASTA.
NCfO
VAR. CARCTER NOMBRE ;
J EJEMPLO: EL lUTEPAL NECESITA UN ALGORITMO QUE CALCULE LAS NOTAS DE N ALUMNOS DE U S DIFERENTES CARRERAS (INFORMATICA, ADMINISTRACIN, CONTABILIDAD Y ENFERMERIA), LOS DATOS SOiV: CEDULA, NOMBRE Y APELUOO, CARRERA, 2 NOTAS TEORICAS (30%j, iVOTA OE LABORATORIO (25%) Y 1 NOTA DE TRABAJOS (45%). CONTAR ALUMNOS POR CARRERA, DEFINITIVA POR ALUMNOS Y PRQWEDlQ GEMLPAL DE NOTAS. USE PEPlTAPARA. C NtCiO )^fNcro
VAFL CARCTER NOMAPE, CARRERA;
VAR. ENTERA X , N, CINF, CADM, CCON, CENF ;
VAR. DECIMAL NT1,NT2,TEO, NLAB, TRA, AN, DEF, PN
CINF=0; CADM=0; CCON=0; CENF=0;AN=0; PN=0;
ESCRIBIR (DAR NUMERO DE ALUMNOS A PROCESAR:);
LEER N;
REPITA PARA X=1 HASTA N ;
ESCRIBIR ( NOMBRE Y APELLIDO DEL ALUMNO : );
LEER NOMAPE;
ESCRJBJR f DAR CARRERA (nformJAmJContEnfer);
LEER CARRERA;
ESCRIBIR ( NOTA DE TEORIA 1: ); LEER NT1;
ESCRIBIR ( NOTA DE TEORA 2: ); LEER NT2;
ESCRVBtR \u NOTA DE LABORATOTOO: ); LEER NLAB;
ESCRIBIR ( NOTA DE TRABAJOS: ); LEER TRA;f'
DEF=((NT1+NT2)/2)*30/100+(LAB*35/100)+(TRA*45)/100;
SI (CARRERA="INFORMATICA") ENTONCES
CINF = CINF + 1 ;
SlNO
SI (CARRERA=ADMINISTRACIN) ENTONCES
CADM = CADM + 1 ;
SINO
S (CARRERA="CONTABfLfDAD") ENTONCES
CCON = CCON + 1 ;
SINO
CENF = CENF + 1;
FIN SI
FIN SI
FIN SI
ESCRIBIR (SU NOTA DEFINITIVA ES DE: ,DEF>;
Repita Hasta N_____ 1r ~
LEER NOMAPE
LEER CARRERA
ILEER NT1, NT2, NLA8,
NTRA
0cF^W r^N r2)/2)^'f^(W e^i/W ^TKA^/W
&
FIN REPITA PARA
PN=ANJX;
CICLO PARA: EJEMPLO: CALCULE PARA 8 ARTCULOS LA GANANCIA, LOS DATOS SON NOMBRE DEL ARTICULO, PRECIO DE COSTO Y PRECIO DE VENTA, IMPRIMA A LA SALIDA EL ARTICULO Y LA GANANCIA.
CICLO MIENTRAS: AHORA VAMOS A TRABAJAR CON EL CICLO WHILE: EJEMPLO: CALCULE PARA 6 ALUMNOS CUANTOS SON VENEZOLANOS Y CUANTOS SON EXTRANJEROS. LOS DATOS SON NOM8RE Y NACONAUOAO.
CICLO REPITA HASTA: CALCULE PARA 3 FINCAS CUANTA PRODUCCIN LECHERA HAY, TENIENDO EL NUMERO DE LITROS Y EL PAGO POR CADA LITRO. CALCULE LA GANACA DE PRODUCCIN E IMPRIMA A LA SALIDA EL LA FINCA Y LA GANANCIA.
CICLO PARA: CALCULE PARA 7 EMPRESAS CUANTOS EMPLEADOS TIENE HIJOS, CUANTOS SON CASADOS Y ACUMULE TODOS LOS SUELDOS.
CICLO MIENTRAS : CALCULE PARA 4 OBREROS CUANTO PAGAN DE SEGURO SOCIAL (6%), TENIENDO EL NOMBRE, SUELDO. CALCULE EL PAGO DE SSO POR EMPLEADO Y GENERAL.
HASTA PRONTO.
PABLO A. VITANARE