Estrategia de prompts, primeras ideas para su construcción
P202e
1. //ESTE PROGRAMA ES PARA CALCULAR EL INDICE Y EL PROMEDIO FINAL DE UN GRUPO DE ESTUDIANTES
//SOLO SE TOMARA EN CUENTA LAS NOTAS DE MATEMATICAS, FISICA Y QUIMICA
//Editado por Diego Rojas. 4-759-371.
#include<stdio.h>
#include<conio.h>
#define CANTIDAD 10 //SE ESTABLECE LA CANTIDAD DE ESTUDIANTES A EVALUAR
void main(void)
{
int i=1;
floatmenor,mayor,suma=0,promedio=0,aprobados=0,reprobados=0,c=0;
float N1M,N2M,N3M,NEM,PN1M,PN2M,PN3M,SPNM,PNEM,PFM;
float N1F,N2F,NEF,PN1F,PN2F,SPNF,PNEF,PFF;
float N1Q,N2Q,N3Q,NEQ,PN1Q,PN2Q,PN3Q,SPNQ,PNEQ,PFQ;
float PGNF;
float V[CANTIDAD]; //SE DECLARA EL VECTOR QUE GUARDARA LA LISTA DE NOTAS FINALES
printf("anESTE PROGRAMA ES PARA CALCULAR EL INDICE Y EL PROMEDIO FINAL DE UN GRUPO
DEnESTUDIANTES. SOLO SE TOMARA EN CUENTA LAS NOTAS DE MATEMATICAS, FISICA YnQUIMICA.");
printf("nnnnnnnnntttpresione -Intro- para continuar");
getch();
clrscr();
printf("anRECUERDE:nnTODOS LAS TAREAS Y EXAMENES ESTAN CALIFICADOS EN PORCENTAJE DE 0 A 100");
printf("nnnnnnnnntttpresione -Intro- para continuar");
getch();
clrscr();
//SE INICIA EL PROCESO DE CAPTURA DE NOTAS Y DEMAS
for(i=1; i<=CANTIDAD; i=i+1)
{
printf("ESTUDIANTE [%d]",i);
printf("nnn");
//LAS NOTAS DE MATEMATICAS------------------------------------------------------
printf("MATEMATICAS:");
//SE LEERAN LOS PORCENTAJES DE UN TOTAL DE 3 TAREAS Y SE EFECTUARAN LOS CALCULOS CORRESPONDIENTES
printf("nntTAREAS:");
printf("nttPORCENTAJE DE LA PRIMERA TAREA:t");
scanf("%f",&N1M);
if ((N1M>=0)&&(N1M<=100))
PN1M=N1M*3/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN1M=0;
}
printf("ttPORCENTAJE DE LA SEGUNDA TAREA:t");
scanf("%f",&N2M);
if ((N2M>=0)&&(N2M<=100))
PN2M=N2M*3/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN2M=0;
}
printf("ttPORCENTAJE DE LA TERCERA TAREA:t");
scanf("%f",&N3M);
if ((N3M>=0)&&(N3M<=100))
PN3M=N3M*4/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN3M=0;
}
SPNM=PN1M+PN2M+PN3M;
//SE LEERA EL PORCENTAJE DEL EXAMEN Y SE EFECTURAN LOS CALCULOS NECESARIOS
printf("ntEXAMEN:");
printf("nttPORCENTAJE DEL EXAMEN:t");
scanf("%f",&NEM);
if ((NEM>=0)&&(NEM<=100))
PNEM=NEM*90/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).");
PNEM=0;
}
//SE SACARA EL PORCENTAJE DE LA NOTA FINAL DE MATEMATICAS
PFM=SPNM+PNEM;
2. //LAS NOTAS DE FISICA-----------------------------------------------------------
printf("nnn");
printf("FISICA:");
//SE LEERAN LOS PORCENTAJES DE UN TOTAL DE 2 TAREAS Y SE EFECTUARAN LOS CALCULOS CORRESPONDIENTES
printf("nntTAREAS:");
printf("nttPORCENTAJE DE LA PRIMERA TAREA:t");
scanf("%f",&N1F);
if ((N1F>=0)&&(N1F<=100))
PN1F=N1F*10/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN1F=0;
}
printf("ttPORCENTAJE DE LA SEGUNDA TAREA:t");
scanf("%f",&N2F);
if ((N2F>=0)&&(N2F<=100))
PN2F=N2F*10/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN2F=0;
}
SPNF=PN1F+PN2F;
//SE LEERA EL PORCENTAJE DEL EXAMEN Y SE EFECTURAN LOS CALCULOS NECESARIOS
printf("ntEXAMEN:");
printf("nttPORCENTAJE DEL EXAMEN:t");
scanf("%f",&NEF);
if ((NEF>=0)&&(NEF<=100))
PNEF=NEF*80/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PNEF=0;
}
//SE SACARA SE PORCENTAJE DE LA NOTA FINAL DE FISICA
PFF=SPNF+PNEF;
//LAS NOTAS DE QUIMICA----------------------------------------------------------
printf("nnn");
printf("QUIMICA:");
//SE LEERAN LOS PORCENTAJES DE UN TOTAL DE 3 TAREAS Y SE EFECTUARAN LOS CALCULOS CORRESPONDIENTES
printf("nntTAREAS:");
printf("nttPORCENTAJE DE LA PRIMERA TAREA:t");
scanf("%f",&N1Q);
if ((N1Q>=0)&&(N1Q<=100))
PN1Q=N1Q*5/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN1Q=0;
}
printf("ttPORCENTAJE DE LA SEGUNDA TAREA:t");
scanf("%f",&N2Q);
if ((N2Q>=0)&&(N2Q<=100))
PN2Q=N2Q*5/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN2Q=0;
}
printf("ttPORCENTAJE DE LA TERCERA TAREA:t");
scanf("%f",&N3Q);
if ((N3Q>=0)&&(N3Q<=100))
PN3Q=N3Q*5/100;
else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PN3Q=0;
}
SPNQ=PN1Q+PN2Q+PN3Q;
//SE LEERA EL PORCENTAJE DEL EXAMEN Y SE EFECTUARAN LOS CALCULOS NECESARIOS
printf("ntEXAMEN:");
printf("nttPORCENTAJE DEL EXAMEN:t");
scanf("%f",&NEQ);
if ((NEQ>=0)&&(NEQ<=100))
PNEQ=NEQ*85/100;
3. else{
printf("tttaADVERTENCIA: Nota incorrecta, se tomara como 0 (cero).n");
PNEQ=0;
}
//SE SACARA EL PORCENTAJE DE LA NOTA FINAL DE QUIMICA
PFQ=SPNQ+PNEQ;
printf("nnnn");
//SE SACARA EL PROMEDIO TOTAL DE LAS 3 MATERIAS---------------------------------
PGNF=(PFM+PFF+PFQ)/3;
//SE MOSTRARAN LOS RESULTADOS---------------------------------------------------
printf("RESULTADOS:");
//RESULTADOS DE MATEMATICAS
printf("nnEN LA CATEDRA DE MATEMATICAS:");
printf("ntttPROMEDIO FINAL:t%.2f",PFM);
printf("nn");
//RESULTADOS DE FISICA
printf("EN LA CATEDRA DE FISICA:");
printf("ntttPROMEDIO FINAL:t%.2f",PFF);
printf("nn");
//RESULTADOS DE QUIMICA
printf("EN LA CATEDRA DE QUIMICA:");
printf("ntttPROMEDIO FINAL:t%.2f",PFQ);
//RESULTADO GENERAL-------------------------------------------------------------
printf("nnnnPROMEDIO FINAL EN LAS 3 MATERIAS:t%.2f",PGNF);
//SE ASIGNA EL RESULTADO A CADA ESPACIO DE LA VECTOR
V[i]=PGNF;
//SE CALCULA EL TOTAL DE ESTUDIANTES APROBADOS Y REPROBADOS
suma=(suma+V[i]);
if(V[i]>70)
aprobados=aprobados+1;
else
reprobados=reprobados+1;
getch();
clrscr();
}
//SE INICIA EL PROCESO DE BUSQUEDA DE LA NOTA FINAL MAYOR Y MENOR DENTRO DEL CICLO
mayor=V[i];
for(i=2; i<=CANTIDAD; i=i+1)
{
if(V[i]>mayor)
mayor=V[i];
if(V[i]<menor)
menor=V[i];
}
//NOTA PROMEDIO DEL GRUPO DE ESTUDIANTES
promedio=suma/CANTIDAD;
//CALCULAR LA CANTIDAD DE ESTUDIANTES CON LA NOTA MAYOR QUE LA DEL PROMEDIO GRUPAL
for(i=1; i<=CANTIDAD; i=i+1)
{
if(V[i]>promedio)
c=c+1;
}
printf("nREPORTE GRUPAL:");
printf("nnnNota mas alta = t%.2f",mayor);
printf("nNotamas baja = t%.2f",menor);
printf("nPromedio de notas = t%.2f",promedio);
printf("nNumero de notas mayores al promedio = t%.f",c);
printf("nCantidad de alumnos aprobados = t%.2f",aprobados);
printf("nCantidad de alumnos reprobados = t%.2f",reprobados);
getch();
clrscr();
printf("nnHASTA LUEGO...");
getch();
clrscr();
}