Dev - C++ - Que tiene mal este programa?

 
Vista:

Que tiene mal este programa?

Publicado por deker (1 intervención) el 29/11/2010 02:55:14
que tiene mal ? :S

estoy aprendiendo, y no eh podido con esto.

#include<iostream>
#include<conio.h>
#include<stdio.h>
using namespace std;
int main() {
int nota,nombre,alum,acum,i,t;
acum=0;

cout<<"numero de alumnos ";
cin>>alum;

for (i=1;i<=alum;i++)
{
cout<< "ingrese nombre del alumno ";
cin>>nombre;

for (t=1;i<3;i++){

cout<< "ingrese la nota "<<t<<" del alumno "<<nombre;
cin>>nota;

acum=nota+acum;

}
if (acum<55)
{
cout<< "el promedio del alumno "<<nombre<<" menor a 54";
if (acum>=55 & acum<=59)
{
cout<< "la nota final del alumno"<<nombre<<" esta entre 55 y 59";
if (acum>=60 & acum<=79)
{
cout<< "la nota final del alumno"<<nombre<<" es mayor o igual a 60";
if (acum>=80)
{
cout<< "la nota final del alumno "<<nombre<<" mayor a 80";
}
}
}
}

}

system("pause");
return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Que tiene mal este programa?

Publicado por Capitan Kirk (48 intervenciones) el 29/11/2010 08:09:43
A primera vista, en las comparaciones debes emplear && (AND lógico) para comparar expresiones lógicas. Si empleas solamente &, estás haciendo un AND pero a nivel de bit (es decir, bit por bit). Además, cada una de esas expresiones lógicas debe ir entre paréntesis:

if (acum>=55 & acum<=59)

debería ser

if ( (acum>=55) && (acum<=59) )

y lo mismo para el siguiente if.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar