// Programa para multiplicar dos numeros. #include <iostream> #include <cstdlib> #include <ctime> #include <cmath> using namespace std; int Generador(int); void Incorrectas(void); void Correctas(void); int main() { int number1, number2, digito; int respuesta, correctas = 0; int incorrectas = 0; int GeneralCounter = 0; int centinela = 1; srand (time (NULL)); cout <<"\n\nEste programa le ayudara a aprender a multiplicar proponiendole ejercicios."<<endl; while (1 == centinela) { cout <<"Introduzca el numero de cifras que tendran sus numeros: " << endl; cin >> digito; number1 = Generador(digito); number2 = Generador(digito); cout <<"\nCuanto es "<<number1 <<" x " <<number2 << " ? "<<endl; cin >> respuesta; incorrectas = 0; while ( number1 * number2 != respuesta ) { Incorrectas(); cin >> respuesta; incorrectas++; GeneralCounter++; if ( 10 <= incorrectas ) { cout <<"\nPide ayuda a tu maestro."<<endl; return 0; } } if ( 10 <= GeneralCounter) if (.25 * GeneralCounter >= correctas) { cout <<"\nPide ayuda a tu maestro." << endl; return 0; } Correctas(); correctas++; GeneralCounter++; cout<<"\nSi quiere seguir introduzca 1, si no cualquier otro numero." << endl << endl; cin >> centinela; } return 0; } //Esta es la funcion Generador int Generador(int x ) { int numero = rand () % 10; int multiplicador; if ( 0 < x ) { if ( 1 < x ) { for ( int n = 1; n <= x; n++ ) { multiplicador = 1; for ( int m = 1; m < n; m++ ) multiplicador *= 10; numero += ( rand() % 10 ) * multiplicador; } return numero; } else return rand() % 10; } else { return 0; } } //Definicion de la funcion Incorrectas. void Incorrectas(void) { int n = 1 + rand () % 4; switch(n) { case 1: cout <<"\nNo. Por favor trata de nuevo. " <<endl; break; case 2: cout <<"\nIncorrecto. Trata una vez mas. \n"; break; case 3: cout <<"No te rindas."<<endl; break; case 4: cout <<"\nNo. Trata de nuevo." <<endl; break; default : cout <<"\nESTE PROGRAMA ESTA MAL! NO DEBERIA VER ESTE MENSAJE!"<<endl<<endl; break; } return; } // Aqui se define la funcion Correctas. void Correctas(void) { int n = 1 + rand() % 4; switch(n) { case 1: cout <<"\n Muy bien!"<<endl; break; case 2: cout <<"\nExcelente!"<<endl; break; case 3: cout <<"\nBuen trabajo!."<<endl; break; case 4: cout <<"\nSigue haciendolo bien!."<<endl; break; default: cout <<"\nSU PROGRAMA ESTA MAL! NO DEBERIA VER ESTE MENSAJE!"<<endl<<endl; break; } return; }
domingo, 31 de octubre de 2010
Deitel_C++_3.47 (Educación Asistida por Computadora, Aprendiendo las Tablas de Multiplicar)
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario