P. 1
ciclos repetitivos

ciclos repetitivos

|Views: 6.335|Likes:
Publicado porchecote27

More info:

Published by: checote27 on Oct 08, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

08/01/2013

pdf

text

original

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION

Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: MATERIA: DOCENTES: GUIA DE LABORATORIO #7 Uso de Estructuras Repetitivas en C/C++ Centro de Computo 2 horas y 30 minutos Introducción a la Programación Ing. Rene Tejada, Ing. Blanca Iris Cañas, Inga. Gloria Díaz, Tec. Arely Juárez, Tec. Marvin Martínez

CICLO: 01/ 2009

I. OBJETIVOS Que el estudiante: • Defina ¿Cuál es la utilidad de una estructura repetitiva dentro de un programa? • Desarrolle la habilidad de utilizar iteraciones dentro de programas básicos de C++. • Identifique los elementos que conforman a la estructura repetitiva de C/C++: for, while, do-while II. INTRODUCCION TEORICA Muchas veces dentro de algún programa, es necesario repetir varias veces un procedimiento representado por un conjunto de instrucciones bien definidas. Para este tipo de situaciones los lenguajes de programación brindan un conjunto de instrucciones que se conocen con sentencias repetitivas, llamadas también ciclos, lazos o bucles.

Tipos de estructuras repetitivas
El lenguaje C/C++ proporciona tres tipos de sentencias repetitivas que son conocidas como ciclos: for, while y do-while. Las características y la sintaxis de la primera estructura (for) se estudiara a continuación.

Instrucción for
Un lazo for es una estructura de control que permite repetir un grupo de sentencias un número especificado de veces. Las sintaxis de un lazo for se muestran a continuación:
for(expresion) //instrucción;

for(expresion1; expresion2; expresion3){ //instrucción1 ; //instrucción2 ; . . . //instruccionN; }

La expresión1, conocida como inicialización, es una asignación de una ó más variables, en la que se establece el valor inicial de la variable de control (contador) del ciclo, la expresión2, conocida como condición, es una relación de algún tipo que, mientras su valor sea VERDADERO, permite la ejecución de las instrucciones del ciclo, y expresión3, conocida como incremento, es otra asignación, en donde se realiza el incremento o decremento de la variable de control o contador del lazo. Todas estas expresiones, contenidas en el paréntesis del for deben estar separadas por PUNTO Y COMA y no por comas simples. Si va a utilizar más de una variable de control (dos contadores) debe separar las

_________________________________________________________________________________________

1

Expresado en palabras. Su sintaxis podría expresarse de las siguientes formas: while(expresion) //unica instruccion a repetir. para controlar así la duración de la iteración. while(expresion){ //bloque de instrucciones //a repetir instruccion1. de condición y de incremento con comas. de lo contrario. se modifican variables de la expresión condicional del while. lo que implica que el programador deberá haber previsto alguna manera alternativa de salir del lazo (probablemente mediante BREAK ó RETURN como veremos más adelante) ya que sino. Uso de Estructuras Repetitivas en C/C++ instrucciones de inicialización. la condición puede ser. si es FALSO. } while(expresion). se repetirá la ejecución del bloque de instrucciones. . se terminará el ciclo o lazo. _____________________________________________________________________________________________ 2 . A este tipo de lazo o ciclo erróneo se le denomina lazo o ciclo infinito.Guía 7. sea cual sea el resultado de expresión. . por ejemplo: for ( . //instruccionN. Pueden aparecer vacías algunas de ellas. si esta es VERDADERO. y luego. Instrucción while La sentencia repetitiva while es una de las tres iteraciones posibles en C. . o incluso. . } La sintaxis expresada en palabras significa lo siguiente: “mientras e x p r e s i ó n de un resultado VERDADERO se ejecutará el bloque de instrucciones hasta la última i n s t r u c c i ó n N del bloque”. ) Estas dos últimas expresiones son interesantes desde el punto de vista de su falta de término relacional. No es imprescindible que existan todas las expresiones dentro del paréntesis del for. independientemente del resultado de la condición. Sin embargo. while(condicion). La diferencia fundamental entre este tipo de iteración y la anterior es que el do-while se ejecuta SIEMPRE AL MENOS una vez. dependiendo del resultado de la expresión condicional colocada al final dentro del while. instruccionN. exp3) ó también for (exp1 . dentro del bloque de instrucciones. esto significa que: se ejecutará el bloque de instrucciones siempre la primera vez. . en este caso. ) ó también f o r ( . do { //instruccion1. Instrucción do – while Su sintaxis es la siguiente: do //instruccion a repetir. . una sola expresión compuesta por las dos variables de control. Instruccion2. . exp2 . la ejecución del mismo es infinita (o tan larga como se mantenga encendida la computadora). todas. //Instruccion2. . Por lo general.

. Puede utilizar la instrucción continue con los ciclos while.. do…while o for..expresión2.. Cree una carpeta llamada /EjerciciosGuia7IP/ dentro de /Mis Documentos/ para que guarde sus archivos CPP de los ejemplos y de la discusión de resultados... proposición2 .. b. } la sintaxis anterior con WHILE así: expresión1 while(expresión2){ proposición1 . 1 2 3 Requerimiento Guía de Laboratorio #7 de IP Compilador de C++. veamos la comparación de sus respectivas sintaxis: Sintaxis de un lazo For: for(expresión1.. y si el resultado es VERDADERO el ciclo continúa.. debe redactarlas en una sola línea. continúa con la siguiente iteración del ciclo.. proposición2 . MATERIALES Y EQUIPO Para la realización de la guía de práctica se requerirá lo siguiente: No.. teniendo cuidado de aplicar estas reglas: a. Expresión3 } es equivalente Instrucciones de control de ciclos El lenguaje C/C++ presenta dos instrucciones para controlar la ejecución de un ciclo/lazo. para así alterar la ejecución “normal” en cada ciclo. do…while o for.. o para producir la salida anticipada de un ciclo o lazo de tipo while. Estas dos instrucciones son: break y continue.. o sino generaran errores de compilación.. Ahora desarrolle los siguientes programas.. . La instrucción break La instrucción break se utiliza para producir una salida inmediata de una estructura de control selectiva múltiple...... La ejecución del programa continúa con la primera instrucción afuera de la estructura escapada.expresion3){ proposición1 .Guía 7.. III.. al comparar un lazo while con un lazo for podemos decir que: “en lenguaje C... . de lo contrario (si es FALSO) se termina. pero a diferencia de la instrucción break.. Disquete ó Memoria USB Cantidad 1 1 IV. Líneas continuas en negrita. PROCEDIMIENTO 1. Uso de Estructuras Repetitivas en C/C++ En conclusión. La instrucción continue La instrucción continue permite escapar el resto de las instrucciones de un ciclo o lazo.. ya que lenguaje C es sensible a mayúsculas y minúsculas. Cuide el uso de mayúsculas y minúsculas en los nombres de variables. una estructura for es simplemente una manera abreviada de expresar una estructura while”. 2. como el switch. La condición de continuidad del ciclo se evalúa nuevamente después de ejecutar la instrucción continue. _____________________________________________________________________________________________ 3 .

if((num>=1)&&(num<=20)){ cout<<"\nTabla de Multiplicar del numero: "<<num<<endl. Lo que haces es poner una pausa en el programa. cin>>genero.h> int main(){ int muj=0.i<=10. } else cout<<"\n\nError. Nombre de programa: E2GUIA7IP Determinar cuántos hombres y cuántas mujeres se encuentran en un grupo de n personas. Usar la estructura for //Programa para obtener la tabla de multiplicar de un número dado # # u # inc inc sin inc lu lu g lu de <iostream> de<iomanip> //para trabajar con la funcion setw namespace std.mult. 25 y 9. 2. hom=0. // esto es igual a muj=muj+1 \n"<<" M para _____________________________________________________________________________________________ 4 . 18 . }//fin for cout<<"\n". cout<<"\n"<<setw(8)<<num<<" "<<i<<setw(3)<<"="<<setw(5)<<mult<<endl.h>// para trabajar con la funcion system(“PAUSE”) main(){ int i. suponiendo que los datos son extraídos alumno por alumno. Pruebe el programa con numeros -2. Nombre de programa: E1GUIA7IP Desarrolle un programa que despliegue en pantalla la tabla de multiplicar de un número específico.sum. char genero. Usar la estructura while. El número a ingresar solo es permitido entre 1 a 20. muestra un mensaje de error y termina el programa. return 0. es decir que se espera a que el usuario presione alguna tecla para continuar con la ejecución del mismo. sino. cin>>num. double num. } * setw() Establece el ancho de un campo de salida. while(entrar==1){ cout<<"introduzca el genero de la persona mujeres\n"<<" H para hombre:"<<endl. //Programa que determina el número total de hombres y mujeres //obtenido de un total de alumnos ingresados alumno por alumno #include <iostream> using namespace std. system("PAUSE").Guía 7. Uso de Estructuras Repetitivas en C/C++ 1. system("PAUSE").i++){ mult=num*i. cout<<"\nDe que numero desea ver la tabla: ". if (genero == 'M' || genero=='m') muj += 1. for(i=1. entrar=1. #include <stdlib. ¿muestra la tabla de multiplicar en todos los casos?. de<stdlib. valor no aceptado\n".

do { cout<<"Digite altura: ". } 4. #include<iostream> using namespace std. cin>>altura."<<endl. system("PAUSE"). esta solo se debe calcular con datos correctos es decir entrada de datos mayores que cero. return 0.h> main( ) { _____________________________________________________________________________________________ 5 . #include<stdlib. Usar la estructura do . }while(base<=0). } 3. debe utilizar una estructura do – while #include<iostream> using namespace std.while.h> int main( ) { float base. cout<<"Determinar el area de un triangulo dada la base y altura\n\n". cout<<"\nEl area del triangulo es : "<<area.altura. #include<conio. cin>>base. (introduzca 1 para seguir / 0 para } cout<<"\nRESULTADOS\n" <<"______________________________________\n" <<"El numero de hombres es:"<<hom<<"\n" <<"El numero de mujeres es:"<<muj<<"\n"<<endl. getch(). Numero primo b. cin>>entrar. El menú debe estar activo hasta que el usuario escoja la opción Salir. return 0. cout<<"Desea continuar? terminar):\n"<<endl. Nombre de programa: E3GUIA7IP Crear un programa que calcule el área de un triangulo. }while(altura<=0). else cout<<"Opcion invalida.Guía 7. Nombre de programa: E4GUIA7IP Crear un programa que tenga el siguiente menú: a. area=base*altura/2. Uso de Estructuras Repetitivas en C/C++ else if(genero == 'H' || genero=='h') hom += 1. Numero par e impar c. Salir. do { cout<<"Digite la base: ".area.

cout<<endl<<endl<<"Digite un numero entero: ". do{ system("CLS"). cin>>num. cout<<endl<<"******************************************".i. Numero Par e impar"<<endl. switch(op){ case 'a': case'A': cout<<endl.Guía 7. } else cout<<endl<<"Error !!!!. else cout<<endl<<"El numero no es primo". case 'c': case'C': cout<<endl<<"Saliendo del programa. cin>>num. }//fin switch cout<<endl. break. else cout<<endl<<"El numero "<<num<<" es impar". cout<<endl<<"******************************************". cout<<endl<<"* Calculando si un numero es primo o no *". int num. cout<<"*******MENU***************"<<endl. cout<<"a. //limpia la pantalla y vuelve a imprimir el menu cout<<endl<<endl.i<=num. El numero es negativo o cero". cout<<"Digite una opcion del menu: ". cin>>op.primo=0. cout<<endl<<"*****************************************". }//fin main _____________________________________________________________________________________________ 6 . Uso de Estructuras Repetitivas en C/C++ char op. if(num%2==0)//utilizando el operador mod (%) cout<<endl<<"El numero "<<num<<" es par". }while(op!='c' && op!='C'). cout<<endl<<endl<<"Digite un numero entero: ". system("PAUSE"). break. cout<<endl<<"*****************************************". if(num>0){ for(i=1. cout<<"c. } if(primo==2)//evaluando contador si es igual a 2 cout<<endl<<"El numero es primo". break. cout<<endl<<"* Calculando si un numero es par o impar *".i++){ if(num%i==0) primo++. break. Numero primo"<<endl. Salir"<<endl. case 'b': case'B': cout<<endl. intente de nuevo :(". default: cout<<endl<<"Opcion no valida. gracias por utilizarlo :)". cout<<"b.

Salir. Cilindro. Realizar un programa que pide al usuario un número entero (debe de ser mayor de 1). Deitel. 17. Haga un programa que genere un menú para calcular el área de diferentes cuerpos. Desarrolle un programa que le permita obtener el factorial de un número entero positivo ingresado por el usuario. 2. Cono o sino 5. Luis. DISCUSION DE RESULTADOS 1. Joyanes Aguilar. VII. hace el cálculo del volumen solicitado y le muestra la respuesta. Algoritmos y Programación estructurada. 5.362 D325 1995 Editorial: PRENTICE HALL _____________________________________________________________________________________________ 7 . Uso de Estructuras Repetitivas en C/C++ V. SALIR El usuario debe escoger una opción digitando cualquier operador matemático (+. MULTIPLICACION /. * y /).1 J88 1998. y el programa le pide los datos necesarios. RESTA *. Editorial: MCGRAW HILL Cómo Programar en C/C++. 7. el menú debe estar activo hasta que el usuario escoja la opción SALIR o el símbolo $. No. BIBLIOGRAFIA • • Metodología de la Programación: Diagramas de Flujo. Por ejemplo: Digite un número entero: 9 Números primos son: 2. Son ejemplos: 2. Usted debe implementar la operación de potencia utilizando únicamente estructuras repetitivas for. 5. INVESTIGACION COMPLEMENTARIA 1. De Clasificación 005. Recuerde: Un número primo es divisible únicamente por el mismo y por la unidad. este numero se va a utilizar para imprimir esa cantidad de números primos. . 4. 23 2. 19. SUMA -.. 3.. 13. De Clasificación 005.. El menú debe estar activo para que el usuario pueda escoger otro cuerpo geométrico. 11. No.. El programa no debe utilizar ninguna de las funciones matemáticas de la biblioteca de C/C++. e incluso cero. Harvey M. El usuario ingresa opción (1 hasta 4). El usuario puede elegir calcular el volumen de: 1. 3.Cubo. VI. Realice un programa que solicite al usuario la base y la potencia a la que hay que elevarlo. Esfera. 3. 3. 2. Crear un programa que tenga el siguiente menú: +. DIVISION $.Guía 7. La base puede ser un número con punto flotante y el exponente puede ser un número entero positivo o negativo. 7..

3. 2. Evaluación del contenido practico Objetivos a evaluar: Que el estudiante: • Defina ¿Cuál es la utilidad de una estructura repetitiva dentro de un programa? • Desarrolle la habilidad de utilizar iteraciones dentro de programas básicos de C++. 4. • Identifique los elementos que conforman a la estructura repetitiva de C/C++: for. Evaluación de actitudes Criterios 1. Uso de Estructuras Repetitivas en C/C++ Hoja de evaluación Guía #7 Fecha: ____________________ Nombre del alumno: ___________________________________________________ Carné: ___________________ Firma: ________________________ Nombre y firma del docente: ______________________________________________ GL: ________ GT: ________ I. Criterios Identifica las estructuras repetitivas y su sintaxis vistas en clases Es correcto el uso de la(s) estructura(s) repetitiva(s) aplicadas en el ejercicio de la discusión de resultados Mostró los datos correctos el programa Entrego el trabajo a tiempo SI NO II. Evaluación general ¿Cómo realiza el trabajo asignado? Excelente Muy Bien ¿Necesita ayuda del instructor? Ninguna Un poco III. 3. while. 2.Guía 7. Puntualidad Participación Cooperación Excelente Muy Bueno Bueno Regular Bueno Varias Veces Regular Siempre _____________________________________________________________________________________________ 8 . do-while 1.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->