Estudiante javascript
Hola,
soy estudiante. Estoy intentando pelearme con javascript. Supongo que muchos de vosotros os habéis visto en mi situación en algún momento. Mi problema es que tengo bastante dificultad con la programación.
Tengo que realizar un formulario en el que hemos de simular una evaluación curricular y que consiste en lo siguiente.
- 12 asignaturas. Cada una de ellas con su número de créditos y su nota
Ej: matemáticas créditos 6.5 nota 6.4
Donde 6.5 será un campo oculto y la nota la introduciremos nosotros en una caja de texto.
Nuestro javascript llamado: function Avalúa(){ ha de ser capaz de calcularme la media. Todo esto con unas determinadas condiciones.
Suspendido (cualquier nota que aparezca menor de 4) "ha de mostrar en una caja de texto el número de asignaturas suspendidas"
Compensable (cualquier nota que aparezca entre el 4 y el 5; siempre con un máximo de 2 asignaturas)"ha de mostrar en una caja de texto el número de asignaturas compensadas"
Media. La calculamos de la manera siguiente: [(credito1*nota1)+(credito2*nota2)+(credito3*nota3)+.....("así hasta 12") / (suma de créditos) y ha de mostrarla en una caja de texto.
El diseño gráfico de la web ya lo tengo realizado. Algunos condicionales (if) tengo la idea de como deberían ser. Se que tengo que utilizar funciones como eval y parseFloat pero no se como. Os muestro mi poco trabajo y ojala alguien pueda echarme una mano.
function Avalua(){
var Media, suspenso, sumaCreditos, nota, Creditos, Compensada,apto; //creo que me faltan variables para poder trabajar correctamente.
Media=0;
suspenso=0;
sumaCreditos=0;
Compensaciones=0;
apto="Apto";
var nota=new Array(asignaturas);
var cred = new Array(creditos);
for(i=1;i<=11;i++){ //con este array recorro las asignaturas
if(nota<4){
apto="No Apto";
suspenso=suspenso+1;
}
if(nota<5&&anota>=4){
compensada=compensada;
compensada=compensada+1;
}
if(compensada>2){
compensada=2;
suspenso=suspenso+1;
apte="No Apte";
}
sumaCreditos = sumaCreditos + cred;
//no se como deberia calcular la media
Media = Media / sumaCreditos;
}
//esta es la parte en la que situare cada resultado en los campos de texto de mi web.
document.form1.mit.value=Media;
document.form1.conv.value=compensada;
document.form1.susp.value=suspenso;
document.form1.validar.value=apto;
}
¿Es correcta mi idea? ¿Cómo puedo completarla? Muchas gracias de antemano.
soy estudiante. Estoy intentando pelearme con javascript. Supongo que muchos de vosotros os habéis visto en mi situación en algún momento. Mi problema es que tengo bastante dificultad con la programación.
Tengo que realizar un formulario en el que hemos de simular una evaluación curricular y que consiste en lo siguiente.
- 12 asignaturas. Cada una de ellas con su número de créditos y su nota
Ej: matemáticas créditos 6.5 nota 6.4
Donde 6.5 será un campo oculto y la nota la introduciremos nosotros en una caja de texto.
Nuestro javascript llamado: function Avalúa(){ ha de ser capaz de calcularme la media. Todo esto con unas determinadas condiciones.
Suspendido (cualquier nota que aparezca menor de 4) "ha de mostrar en una caja de texto el número de asignaturas suspendidas"
Compensable (cualquier nota que aparezca entre el 4 y el 5; siempre con un máximo de 2 asignaturas)"ha de mostrar en una caja de texto el número de asignaturas compensadas"
Media. La calculamos de la manera siguiente: [(credito1*nota1)+(credito2*nota2)+(credito3*nota3)+.....("así hasta 12") / (suma de créditos) y ha de mostrarla en una caja de texto.
El diseño gráfico de la web ya lo tengo realizado. Algunos condicionales (if) tengo la idea de como deberían ser. Se que tengo que utilizar funciones como eval y parseFloat pero no se como. Os muestro mi poco trabajo y ojala alguien pueda echarme una mano.
function Avalua(){
var Media, suspenso, sumaCreditos, nota, Creditos, Compensada,apto; //creo que me faltan variables para poder trabajar correctamente.
Media=0;
suspenso=0;
sumaCreditos=0;
Compensaciones=0;
apto="Apto";
var nota=new Array(asignaturas);
var cred = new Array(creditos);
for(i=1;i<=11;i++){ //con este array recorro las asignaturas
if(nota<4){
apto="No Apto";
suspenso=suspenso+1;
}
if(nota<5&&anota>=4){
compensada=compensada;
compensada=compensada+1;
}
if(compensada>2){
compensada=2;
suspenso=suspenso+1;
apte="No Apte";
}
sumaCreditos = sumaCreditos + cred;
//no se como deberia calcular la media
Media = Media / sumaCreditos;
}
//esta es la parte en la que situare cada resultado en los campos de texto de mi web.
document.form1.mit.value=Media;
document.form1.conv.value=compensada;
document.form1.susp.value=suspenso;
document.form1.validar.value=apto;
}
¿Es correcta mi idea? ¿Cómo puedo completarla? Muchas gracias de antemano.
1 Respuesta
Respuesta de Marcelo Origoni
1