/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Ciclo anidado

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
Mayacker



Registrado: 16 Nov 2007
Mensajes: 9

MensajePublicado: 17/11/2007 6:37 am
Título: Ciclo anidado

hola, estoy haciendo un programa con un ciclo anidado pero solo me lee el for y el while no lo lee este es mi codigo:

Código:
#include <iostream.h>
#include <conio.h>
#include <ctype.h>

struct libros {
    char id[10];
    char cantidade[3];
    char autor[40];
    char nomlibro[40];
    char tema1[30];
    char tema2[30];
}datos[100];


void main()
{
    int i;
    char op;
    while (toupper(op) != 'N')
    {
         for (i = 0; i <= 99; i= i+1){
          clrscr();
          cout<<"Posicion  "<<i<<endl;
          cout << "Introduzca ID del libro: ";
           cin >>datos[i].id;
           cout << "Introduzca Nombre del libro: ";
          cin >>datos[i].nomlibro;
          cout << "Introduzca Autor: " ;
          cin >>datos[i].autor;
          cout << "Introduzca Tema 1: ";
           cin >>datos[i].tema1;
          cout << "Introduzca Tema 2: ";
           cin >>datos[i].tema2;
           cout << "Introduzca Cantidad Existente: ";
           cin >>datos[i].cantidade;
          cout<<"Desea ingresar otro dato[S/N]: ";
          cin>>op;
        }
        }
    getch();
}
Volver arriba
rir3760



Registrado: 01 Oct 2004
Mensajes: 3943
Ubicación: Mexico

MensajePublicado: 17/11/2007 8:33 am
Título:

Lo primero que hay que cambiar en tu programa son los nombres de los archivos de inclusion, en C++ los nombres correctos son <iostream> y <cctype>.

Tambien hay que cambiar la definicion de la funcion main a "int main()" e idicar su valor de retorno con (ale menos) "return 0;".

Otro error es utilizar la variable "op" sin antes darle explictamente un valor, tal como esta tu programa la primera ves que se evalua el valor de esa variable este es "no definido" o "basura".

Tambien hay que eliminar el uso de la biblioteca conio de Borland, al menos mientras no se tenga funcionando al programa correctamente.

En cuanto a los dos bucles estos tenian mal la condicion de escape ya que para salir del bucle basta con utilizar la palabra reservada "break" si el usuario introduce 'n' o 'N' en respuesta a "desea continuar ...".

El programa modificado (C++ estandar) es:
Código:
#include <iostream>
#include <cctype>

int const num_registros = 100;

struct libros {
   char id[10];
   char cantidade[3];
   char autor[40];
   char nomlibro[40];
   char tema1[30];
   char tema2[30];
}datos[num_registros];

using namespace std;

int main()
{
   int i;
   char op;
   
   for (i = 0; i < num_registros; i++){
      cout << "Posicion  " << i << endl;
     
      cout << "Introduzca ID del libro: ";
      cin >> datos[i].id;
     
      cout << "Introduzca Nombre del libro: ";
      cin >> datos[i].nomlibro;
     
      cout << "Introduzca Autor: " ;
      cin >> datos[i].autor;
     
      cout << "Introduzca Tema 1: ";
      cin >> datos[i].tema1;
     
      cout << "Introduzca Tema 2: ";
      cin >> datos[i].tema2;
     
      cout << "Introduzca Cantidad Existente: ";
      cin >> datos[i].cantidade;
     
      cout << "Desea ingresar otro dato[S/N]: ";
      cin >> op;
     
      if (toupper(op) == 'N')
         break;
   }
   
   return 0;
}


Un saludo
_________________
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
--
Rebec of Ginaz
Volver arriba
Mayacker



Registrado: 16 Nov 2007
Mensajes: 9

MensajePublicado: 17/11/2007 8:39 am
Título:

Very Happy rir3760 te agradezco por el codigo ... eso era lo qu queria muchas gracias por tu respuesta... saludos
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com