Ya vimos hace poco el ciclo for, y vimos que su estructura era asÃ:
for ( inicio ; fin ; aumento )
¿Qué pasa si no ponemos ni inicio ni fin? Pues obtenemos un ciclo infinito, asÃ:
for(;;)
¿Y cómo se detiene? Pues con un break, asÃ:
for(;;)
{
break;
}
¿Y esto de que me sirve? Pues la idea es repetir las instrucciones hasta que el usuario quiera, es decir:
#include<stdio.h> #include<conio.h> int main() { char end=0; for(;;) { gotoxy(5,5);printf("Ya quieres salir? (y/n): ");scanf("%c",&end); if(end=='y') break; clrscr(); } }
Creo que no les habÃa mencionado que si dentro de una condición if sólo va una instrucción no es necesario poner llaves, y también aplica con los ciclos.
Si el usuario no introduce una ‘y’, el programa nunca se detendrá. Luego vamos a ver que las propiedades de un ciclo for infinito son muy parecidas a las del ciclo while que veremos más adelante.
Muy buen ejemplo, gracias de nuevo.
/*estoy realizando un ejercicio similar pero me genera error y no se porque me podrÃan ayudar.
gracias*/
#include
int main()
{
int cant,total;
char prod[20];
cout<<"Ciclo infinito for"<<endl<<endl;
cout<<"Gastos caja China"<<endl;
cout<<"Ingrese la cantidd de productos a comprar"<>cant;
cout<<"Ingrese el tipo de producto a registrar"<>prod;
total*=cant;
cout<<total<<" Es el valor a pagar"<<endl;
for(;;)
{
cout<<"Quieres terminar y salir del ciclo si/no"<<endl;
if(end=="si")
break;
}
}
Tu error es que te falta la librerÃa. donde dice #include añade o
Gracias compañero por la ayuda ya lo pude resolver…
Pues dejando de lado la (confusa) primera parte de tu progama, el ciclo infinito quedarÃa asÃ:
Te faltaba declarar el namespace de la librerÃa iostream. Tal vez quieras checar este post sobre cómo usar cin y cout: http://codigoc.org/280-como-empezar-a-usar-iostream . Si quieres que el programa se acabe al escribir “si”, entonces hay que usar strings (librerÃa string.h), para leer un string hay que usar cin.getline: http://codigoc.org/464-como-usar-cin-getline-en-c y para compararlas hay que usar la función strcmp: http://www.cplusplus.com/reference/clibrary/cstring/strcmp/
Si todo esto es muy confuso dime y te preparo una versión más simple de lo mismo.
como le hago para que una vez que en el programa se escoge la opción para terminar el ciclo, se imprima un resultado???
Gracias por la respuesta, pero el ejercicio exactamente dice asÃ:
Desarrollar un programa que use un ciclo for infinito y un estatuto break, para el cual se desea calcular los gastos diarios de la caja chica de un bufete de consultorÃa en sistemas. Mostrar en pantalla el gasto total. Los gastos pueden ser diversos como papelerÃa, lápices, copias, etc. Recuerde que el ciclo infinito no termina, por lo tanto el uso del estatuto break es para romper el ciclo infinito, por lo tanto tendrá que validar para romper el ciclo infinito y salir.
,,por favor necesito saber q es ,,pomper un ciclo infinito ,,,,,y un ejemplo por lo menos ,,,,,,le agradesco al q me ayude gracias…!!!!!!
perdon jajajajaja es romper un ciclo infinito
Jajaja ‘pomper’ jaja. Bueno, un ciclo infinito es un for sin nada entre los paréntesis, asÃ:
for(;;)
{
}
Y la única forma de salir de el es con la instrucción break:
for(;;)
{
break;
}
De esto ya habÃa hablado un poco, mira: http://codigoc.org/251-el-break-y-el-ciclo-infinito
hola que tal?
bueno pues debo hacer 3 programas, uno lo tengo hecho pero no me corre bien, y otros dos que de plano no se que haer me podrian ayudar por favor?
uno es :
Escribe un programa que al recibir como dato un numero entero N calcule el resultado de la siguiente serie:
1+ 1/2+1/3+1/4+….1/n
ese es uno de los programas los otros 2 son un poco mas largos son de el libro fundamentos de programacion piensa en c de cairó
http://books.google.com.mx/books?id=AZ1ZXBlu9Y8C&printsec=frontcover&dq=piensa+en+c&hl=es&ei=CahqTfPWDYGasAOgutimBA&sa=X&oi=book_result&ct=result&resnum=1&ved=0CCQQ6AEwAA#v=onepage&q&f=false
ese es el libro de la pag 129 ocupo el 3.2 el 3.6 i de la pagina 131 el 3.9 me haria un enorme favor si me pudieran ayudar
de antemano gracias :)
necesito hacr u programa d una kja registradora pero necesito husar gotos, if y while, m ya tengo la mator part pero le tengo k aumentar el goto xy y no s como utilizarlo m puedn ayudar????