duda con n entrada de datos...

Iniciado por rub'n, 31 Octubre 2010, 20:39 PM

0 Miembros y 2 Visitantes están viendo este tema.

rub'n

buenas buenas,,resulta que,,, tengo que hacer esto ,,pero ya de hay se ve que ,,es de tipo cíclica  bien sea  while ,for , do while

me tengo que crear los respectivos acumuladores,,pero como colocar esa condición ,,para saber lo de aprobados y reprobados ?  

claro ya estoy haciendo algo  :P pero  sin POO  :-\ :-\

-  Dado N notas de un estudiante calcular:
  a) Cuantas notas tiene reprobadas.
  b) Cuantas aprobadas.
  c) El promedio de notas.               
  d) El promedio de notas aprobadas y reprobadas.

Código (java) [Seleccionar]

import java.text.*;
import java.util.*;
public class NotasUdo {

public static void main(String[] args) {

Scanner entra = new Scanner (System.in);

int notas;
int aprobada=0;
int reprobada=0;
               int nTotal=0;
int k=1;
               double promedio;

System.out.println("Introduce numero de notas. ");
notas=entra.nextInt();

while(k<=notas ){

                      nTotal+=notas;
if(notas >)

k++;
}

}

}



rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

Leyer

#1
>=10 aprobados también tienes que tener cuidado cuando calcules el promedio de no dividir por 0, ademas no estas pidiendo que se ingrese una nota

rub'n

#2
tengo esto...  :rolleyes: :rolleyes:,,pero que vaa compayy no FUNKA  :-\ :-\

Código (java) [Seleccionar]
import java.text.*;
import java.util.*;
public class NotasUdo {

public static void main(String[] args) {

Scanner entra = new Scanner (System.in);

int notas;
int aprobado=0;
int reprobado=0;
int nTotal=0;
double promedio,aPromedio,rPromedio;
int k=1;

System.out.println("Introduce  notas. ");
notas=entra.nextInt();

while(k<=notas ){

nTotal+=notas;

System.out.println("Introduce  nota. ");
notas=entra.nextInt();

if(notas >=5 ){
aprobado++;
}
else if(notas<=5){
reprobado++;
}
k++;
}

DecimalFormat dosdigitos=new DecimalFormat("0.00");

if(notas==0){
System.out.println("Error notas mal introducidas");
}

else
{
System.out.println("las notas aprobadas son: "+aprobado);
System.out.println("las notas reprobadas son: "+reprobado);

promedio=(double)nTotal/notas;
aPromedio=(double)nTotal/aprobado;
rPromedio=(double)nTotal/reprobado;

System.out.println("El promedio de notas es: "+dosdigitos.format(promedio));
System.out.println("El promedio de notas aprobadas es: "+dosdigitos.format(aPromedio));
System.out.println("El promedio de notas reprobadas es: "+dosdigitos.format(rPromedio));
}


}

}


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

Leyer

Haces mal los calculos del promedio

Código (java) [Seleccionar]
import java.text.*;
import java.util.*;
public class NotasUdo {
public static void main(String[] args) {
Scanner entra = new Scanner (System.in);
int maxNotas,aprobado=0,reprobado=0,sumTotal=0,sumAprobados=0,sumReprobados=0,k=1;;
double promedio=0.0,aPromedio=0.0,rPromedio=0.0;
System.out.print("Introduce numero de notas:");
maxNotas=entra.nextInt();
while(k<=maxNotas){
System.out.print("Introduce la Nota["+k+"]:");
int nota=entra.nextInt();
sumTotal+=nota;
                        //como tu quieras xD
if(nota>=10 ){
sumAprobados+=nota;
aprobado++;
}
else {
sumReprobados+=nota;
reprobado++;
}
k++;
System.out.println();
}
DecimalFormat dosdigitos=new DecimalFormat("0.00");
if(maxNotas==0){
System.out.println("Error notas mal introducidas");
}
else{
System.out.println("las notas aprobadas son: "+aprobado);
System.out.println("las notas reprobadas son: "+reprobado);

promedio=sumTotal/maxNotas;
if(sumAprobados!=0)
aPromedio=sumAprobados/aprobado;
if(sumReprobados!=0)
rPromedio=sumReprobados/reprobado;

System.out.println("El promedio de notas es: "+dosdigitos.format(promedio));
System.out.println("El promedio de notas aprobadas es: "+dosdigitos.format(aPromedio));
System.out.println("El promedio de notas reprobadas es: "+dosdigitos.format(rPromedio));
}
}
}


rub'n

#4
LEYER  muchas gracias ,,ya mismo lo reviso  ;)

listo solucionado gracias  a la ayuda de LEYER.


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen