Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: pasisica en 06 de Octubre 2013, 21:24
-
Realicé este ejercicio a mi me parece que está bien pero no me muestra el resultado deseado el ejercicio es esta.
/*Escribir un programa que lea una nota de un examen por teclado y devuelta la
calificación que tiene. La calificación podrá ser: Suspenso (0-4.99),
Aprobado (5-6.99), Notable (7-8.99), Sobresaliente (9-9.99) o
Matrícula de Honor (10), si el usuario introduce un valor menor que cero o un valor mayor a 10 se muestre por pantalla un mensaje de error. */
-------------------------------------------------
#include<iostream>
using namespace std;
int main()
{
int nota;
nota=0;
cout<<"ingrese la nota del alumno ";
cin>>nota;
cout<<"Ahora nota es igual que "<<nota;
if((nota<0) && (nota>10))
{
if((nota>=0)&&(nota<=4.99))
{cout<<"Su nota es "<<nota<<" Suspenso ";}
if((nota>=5)&&(nota<=6.99))
{cout<<"Su nota es "<<nota<<" Aprobado ";}
if((nota>=7)&&(nota<=8.99))
{cout<<"Su nota es "<<nota<<" Notable ";}
if(nota>=9&¬a<=9.99)
{cout<<"Su nota es "<<nota<<" Suspenso ";}
if(nota==10)
{cout<<"Su nota es "<<nota<<" Matricula de Honor ";}
}
else
{
cout<<"Error";
}
cin.get();
cin.get();
}
//Alguien puede ayudarme a entender si estoy cometiendo algun error con ese código.
-
Hola pasisica, cuando incluyas código usa el botón # que aparece en el editor del foro, si no lo usas resulta difícil de leer. El código tiene que quedar entre las etiquetas [ code] y [ / code] que te aparecerán al pulsar este botón.
Tienes dos fallos en el código, por un lado declaras nota como tipo int (entero) y esto es para números como 1, 2, 3, 4, ... pero tú necesitas decimales así que lo más lógico es declararlo double.
Por otro lado en la condición if((nota<0) && (nota>10)) tienes los símbolos cambiados, sería if((nota>0) && (nota<10))
El código sería así revísalo a ver si lo entiendes y te va bien
#include <iostream>
using namespace std;
int main() {
double nota;
nota=0;
cout<<"ingrese la nota del alumno ";
cin>>nota;
cout<<"Ahora nota es igual que "<<nota;
if((nota>0) && (nota<10)) {
if((nota>=0)&&(nota<=4.99)) {
cout<<"Su nota es "<<nota<<" Suspenso ";
}
if((nota>=5)&&(nota<=6.99)) {
cout<<"Su nota es "<<nota<<" Aprobado ";
}
if((nota>=7)&&(nota<=8.99)) {
cout<<"Su nota es "<<nota<<" Notable ";
}
if(nota>=9&¬a<=9.99) {
cout<<"Su nota es "<<nota<<" Suspenso ";
}
if(nota==10) {
cout<<"Su nota es "<<nota<<" Matricula de Honor ";
}
} else {
cout<<"Error";
}
cin.get();
cin.get();
}
-
gracias ahora ya lo acabo de entender, je je.
y no me había fijado en el int, se me pasó por alto.