Unidad I. Algoritmos y Programas Estructuras de Control de Repetición Mientras Repetir Para Las...
-
Upload
hernando-nieto -
Category
Documents
-
view
110 -
download
3
Transcript of Unidad I. Algoritmos y Programas Estructuras de Control de Repetición Mientras Repetir Para Las...
Unidad I. Algoritmos y Programas Estructuras de Control de Repetición
Mientras
Repetir
Para
Las estructuras de control repetitivas permiten que un
grupo de acciones se repitan varias veces dentro del
algoritmo.
(Joyanes, 1998:149)
Unidad I. Algoritmos y Programas Variables Auxiliares
Contador Contador + Constante
Acumulador Acumulador + Variable
CONTADOR: es una variable cuyo valor se incrementa o decrementa
en una cantidad constante en cada iteración.
ACUMULADOR: es una variable que almacena cantidades resultantes
de sumas sucesivas en cada iteración.
(Joyanes y Otros, 1999:296)
Unidad I. Algoritmos y Programas
Mientras el resultado de la expresión lógica sea Verdadero, se realizarán iteraciones donde se ejecutarán
las acciones encerradas en el cuerpo del bucle.
Funcionamiento
Mientras Expresión Lógica Hacer
Acción o Acciones
Fin Mientras
Formato
Estructura Repetitiva Mientras
(Joyanes,1998:148)
Unidad I. Algoritmos y Programas
Mientras el resultado de la expresión lógica sea Verdadero, se realizarán iteraciones donde se ejecutarán
las acciones encerradas en el cuerpo del bucle.
Funcionamiento
while (Expresión Lógica )
{
sentencia o sentencias a ejecutar
}
SINTAXIS
Estructura Repetitiva Mientras
(Joyanes,1998:148)
Unidad I. Algoritmos y Programas
Suma 0
Articulo 0
Mientras (Articulo < 3) Hacer Articulo Articulo + 1
Escribir “Introduzca Precio del Artículo # ”, Articulo
Leer Precio
Suma Suma + Precio
Fin MientrasEscribir “El resultado de la suma es = “, Suma
Uso de Contadores y Acumuladores en Ciclos
Estructura repetitiva para sumar los precios de 3 artículos.
Unidad I. Algoritmos y Programas
include <iostream>
using namespace std;
main()
{
float Precio, Suma;
int Articulo;
Suma = 0; //inicialización del acumulador, es obligatorio
Articulo = 0; //inicialización del contador, es obligatorio
//la expresion logica del while, evalua que si van menos de 3 articulos procesados
while (Articulo < 3)
{
Articulo= Articulo + 1; //incremento el contador de articulos
cout<< "Introduzca Precio del Artículo # "<<Articulo;
cin>>Precio; //se lee el precio del articulo en proceso
Suma = Suma + Precio; //se va guardando la suma de todos los precios
} //fin del while
cout<< "El resultado de la suma es = "<<Suma<<endl; //endl hace igual funcion que \n
system("pause");
}
Uso de Contadores y Acumuladores en Ciclos
Estructura repetitiva para sumar los precios de 3 artículos,
codificado en c++
Unidad I. Algoritmos y Programas
CÓMO VALIDAR LA ENTRADACÓMO VALIDAR LA ENTRADA: SIMPLEMENTE UTILIZANDO UN CICLO QUE ENCIERRE LA ENTRADA DE DATOS Y LA REPITA MIENTRAS QUE SE HAYA
COMETIDO UN ERROR, QUE EN ESTE CASO SERÍA, INTRODUCIR UN NUMERO NEGATIVO. ENTONCES EL PSEUDOCÓDIGO QUEDARÍA ASÍ:
Uso de Contadores y Acumuladores en Ciclos
Escribir "Introduzca Precio del Artículo # “, Articulo
Leer Precio
Mientras (Precio< 0) Hacer
Escribir "Introduzca Nuevamente el Precio, dado que introdujo un valor negativo”
Leer Precio
Fin Mientras
cout << "Introduzca Precio del Artículo # “<< Articulo;
cin>> Precio;
while (Precio< 0) {
cout << "Introduzca Nuevamente el Precio, dado que introdujo un valor negativo”;
cin>> Precio;
}
LA CODIFICACIÓN EN C++ SERÍA:
Unidad I. Algoritmos y Programas
FÍJESE QUE EN EL EJERCICIO ANTERIOR, EL PRECIO QUE INTRODUCE EL USUARIO, PUEDE SER NEGATIVO, SI QUEREMOS EVITAR ESTA
INCONSISTENCIA, PODEMOS VALIDAR EL DATO POR SU RANGO DE VALIDAR EL DATO POR SU RANGO DE VALORESVALORES.
CÓMOCÓMO: SIMPLEMENTE UTILIZANDO UN CICLO QUE ENCIERRE LA ENTRADA DE DATOS Y LA REPITA MIENTRAS QUE SE HAYA COMETIDO UN ERROR, QUE EN ESTE CASO SERÍA, INTRODUCIR UN NÑUMERO NEGATIVO. ENTONCES EN EL
LENGUAJE, LA ENTRADA DE DATOS QUEDARÍA ASÍ:
Uso de Contadores y Acumuladores en Ciclos
cout << "Introduzca Precio del Artículo # “<< Articulo;
cin>> Precio;
while (Precio< 0) {
cout << "Introduzca Nuevamente el Precio, dado que introdujo un valor negativo”;
cin>> Precio;
}
Unidad I. Algoritmos y Programas
Repetir
Acción o Acciones
Hasta Expresión Lógica
Repetir (realizar iteraciones) hasta que la expresión lógica resulte Verdadero.
Estructura Repetitiva Repetir
Formato
Funcionamiento
Unidad I. Algoritmos y Programas
do {
Acción o Acciones}while (! (Expresión Lógica) );
Repetir (realizar iteraciones) mientras que la expresión lógica resulte Verdadero.
Estructura Repetitiva Repetir
SINTAXIS
Funcionamiento
C NO DISPONE DE LA ACCION REPETIR, PERO LA PODEMOS
SIMULAR CON LA SENTENCIA DO-WHILE, NEGANDO LA EXPRESION
LOGICA USADA EN EL REPETIR
Unidad I. Algoritmos y Programas Ejemplo con Estructura Repetir
RepetirEscribir “Introduzca la nota a procesar [0..10]:”Leer nota
Hasta ((nota >=0) Y (nota <= 10))
RepetirEscribir “Introduzca la nota a procesar [0..10]:”Leer notaSi ((nota < 0) O (nota > 10)) Entonces
Escribir “Error, la nota está fuera del rango.”Fin Si
Hasta ((nota >=0) Y (nota <= 10))
Validación de un dato de entrada:
Unidad I. Algoritmos y Programas Ejemplo con Estructura Repetir
#include <iostream>
using namespace std;
main()
{
float nota;
do {
cout << "Introduzca la nota a procesar [0..10]:"<<endl;
cin >> nota;
if ((nota < 0) || (nota > 10))
cout << "Error, la nota esta fuera del rango"<<endl;
} while (!((nota >=0) & (nota <= 10)));
cout << "La nota es correcta = "<<nota<<endl;
system("pause");
}
Validación de un dato de entrada en c++
Unidad I. Algoritmos y Programas
Para Variable = Vi Hasta Vf Inc o Dec [Valor]
Acción o Acciones
Fin Para
Realiza una iteración por cada valor que tome Variable.
Estructura Repetitiva Para
Formato
Funcionamiento
Unidad I. Algoritmos y Programas Ejemplo con Estructura Repetitiva Para
Suma 0Para Articulo = 1 Hasta 3
Escribir “Introduzca Precio del Artículo # ”, ArticuloLeer PrecioSuma Suma + Precio
Fin ParaEscribir “El resultado de la suma es “, Suma
Estructura repetitiva para sumar los precios de 3 artículos.
Unidad I. Algoritmos y Programas Ejemplo con Estructura Repetitiva Para
Estructura repetitiva para sumar los precios de 3 artículos, en c++
#include <iostream>using namespace std;
main(){
float Precio, Suma;int Articulo; Suma = 0; //inicialización del acumulador, es obligatorio Articulo = 0; //inicialización del contador, es obligatorio cout<< "PROGRAMA QUE PROCESA PRECIO DE 3 ARTICULOS Y LOS SUMA"<< endl; for (Articulo = 1; Articulo <= 3; Articulo ++) { cout<< "Introduzca Precio del Articulo # "<<Articulo; cin>>Precio; //se lee el precio del articulo en proceso Suma = Suma + Precio; //se va guardando la suma de todos los precios } //fin del for cout<< "El resultado de la suma es = "<<Suma<<endl; //endl hace igual funcion que \n system("pause");}