Título: Ayuda porfavorsito con programa en c++ Publicado por: califvv en 4 Diciembre 2012, 21:35 pm Hola chicos, como estan ;D, espero que bien.. tengo un pequeno problema con un programa que me enviaron en la escuela aca les dejo el enunciado y el codigo que llevo, :-( MI problema es que al compilarlo en la parte que necesito que me diga la cantidad de libros que solicite, me salen un monton de locuras :-\.. si alguien puede ayudarme se lo agradeceria enormemente ;-), Gracias chicos. ::)
PROBLEMA NRO 1. En la biblioteca de la universidad, se hacen prestamos de libros que están clasificados en 8 grandes áreas. Se desea : a) Inicializar el arreglo Áreas, b) Leer el arreglo denominado CantLibros. c) Calcular la cantidad total de libros solicitados durante el mes. e) Mostrar un reporte Área y cantidad de libros de cada área solicitados durante el mes. Esto es lo que llevo :( #include <iostream> #include <iomanip> #include <conio.h> using namespace std; int main() { int i,STotLib, CantLibros[8],Min,Max; // a) Inicializar Area char Area[8][20]={"Literatura","Matematica","Arte","Historia","Geografia","Computacion","Filosofia","Sistemas"}; // b) Leer CantLibros cout<<"Ing. cantidad de libros solicitados:"<<endl; for(i=0;i<8;i=i+1) { cin>>CantLibros; } // Aqui es la parte de, Ingresar i mostrar el area y la cantidad de libros cout<<"Ingrese indice : ";cin>>i; cout<<Area<<" "<<CantLibros<<endl; getch(); // pausa // d) Calcular el total de libros STotLib = 0; for(i=0;i<8;i=i+1) { STotLib = STotLib + CantLibros; } // d) Mostrar Reporte cout<<setw(20)<<"Area"<<setw(20)<<"Cantidad Libros:"<<endl; cout<<"========================================= "<<endl; for(i=0;i<8;i=i+1) { cout<<setw(20)<<Area<<" "<<setw(10)<<CantLibros<<endl; } cout<<" Total de libros prestados: "<<STotLib<<endl; // e) Calcular el minimo y los indices del minimo Min = CantLibros[0]; for(i=1;i<8;i=i+1) { if ( CantLibros <Min ) Min = CantLibros; } for(i=0;i<8;i=i+1) { if ( CantLibros == Min ) { cout<<i<<" "; } } cout<<endl<<"Minimo = "<<Min<<endl; // f) Encontrar el maximo y en que area se da Max = CantLibros[0]; for(i=1;i<8;i=i+1) { if ( CantLibros > Max ) Max = CantLibros; } for(i=0;i<8;i=i+1) { if ( CantLibros == Max ) { cout<<Area<<" "; } } cout<<endl<<"Maximo = "<<Max<<endl; getch(); return (0); } Muchisimas graciasss ;D Título: Re: Ayuda porfavorsito con programa en c++ Publicado por: _niu en 4 Diciembre 2012, 21:44 pm waaaa que feo codigo, por favor, que feo codigo.... horrible.... waaa terrible en todos los sentidos...
STotLib = 0; for(i=0;i<8;i=i+1) { STotLib = STotLib + CantLibros; } ahi ta el problema CantLibros es UN PUNTERO (: y sumas a STotLib 8 veces el puntero. Título: Re: Ayuda porfavorsito con programa en c++ Publicado por: califvv en 4 Diciembre 2012, 21:53 pm Jajaja muchas gracias, lo revisare ;D
Título: Re: Ayuda porfavorsito con programa en c++ Publicado por: leosansan en 4 Diciembre 2012, 23:53 pm Por favor, vuelve a postear tu código. Para ello usa esta vez las etiquetas GeSHi y eliges C++. Te saldrán dos code y en medio pegas el código.
Al no haberlo hecho así aparentemente tienes errores, ya que no salen los Código cosa que sí tienes en el código que copio. Y eso que no aparece en el post directo es lo que te corrige _niu , pero que si lo tienes puestos. Pero no funciona el código por algún por error al copiarlo desde un código sin etiquetas. Por eso, vuelve a colgar el código pero entre las etiquetas code de GeSHi, insisto. Por curiosidad te dejo lo que me sale a mí al copiar tu código -pero que está mal por lo de las etiquetas-: Código Saluditos!. Título: Re: Ayuda porfavorsito con programa en c++ Publicado por: flony en 5 Diciembre 2012, 00:40 am mira los errores que le encontré al código es que a un arreglo en un bucle for lleva el famoso
Citar porque lo debe contar de o a 7...igual al intentar compilarlo dejo de tener los errores, pero por el rdo. tiene razón _niu...por los rdo. que muestra es un puntero |