Algoritmo 2

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