Dev - C++ - materias y unidades

 
Vista:

materias y unidades

Publicado por ivan (1 intervención) el 30/11/2012 20:41:32
adecua el ultimo algoritmo para que opere de la sig manera

PROPIEDAD DE REDEFINICION OPTIMIZANDO ESPACIOS
-solicitar cuantas materias debera ingresar
-solicitar cuantas unidades maximo debera operar

.crear un vector con los promedios por indice(materia) e imprimir resultados consultando a dicho vector bajo la sig premisa:
-si calificacion es aprobatoria y si asistencias es mayor o igual al 60% de las clases de la materia respectiva
-reprobada(0) si y solo si calificacion menor a 70 y si inasistencias mayor al 40%

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
int main()
{
char materias[6][15];
int calif[6][6];
int registros[6][2];
int inasist[6];
int r,c,clases_x_materia[6]={50,40,25,30,20,25};
char dato[4],termina={'T'};
/********* Modulo Ingresa Nombre de materias **********/
for (r=0; r<=5; r++)
{ printf("Ingresa nombre de materia %d: ",r+1);
scanf("%[^\n]",materias[r]);
fflush(stdin);
}
/*******************************************************/

/********* Modulo Imprime Nombre de materias **********/
printf("\n");
for (r=0; r<=5; r++)
printf("Materia %d=[%s]\n",r+1,materias[r]);
/*******************************************************/

/*** Modulo para inicializar tabla de calificaciones ***/
for (r=0; r<=5; r++)
for (c=0; c<=5; c++)
calif[r][c]=-1;
/*******************************************************/

/***** Modulo Ingresa Calificaciones por materia ******/
for (r=0; r<=5; r++)
for (c=0; c<=5; c++)
{ printf("Calificacion de [%s] Unidad No. [%d] (T=para terminar, <cualquier otro>=0): ",materias[r],c+1);
scanf("%s",dato);
if (strcmp(dato,"T") && strcmp(dato,"t"))
calif[r][c]=atoi(dato);
else
break;
}
/*******************************************************/

/** Modulo Imprime Calificaciones por materia/unidad ***/
printf("\n\nUnidades:\t\t\t|_1_|_2_|_3_|_4_|_5_|_6_|\n");
for (r=0; r<=5; r++)
{
printf("Calificacion de %15s ",materias[r]);
for (c=0; c<=5; c++)
{ calif[r][c]!=-1 ? printf("|%3d",calif[r][c]) : printf("| ");
}
printf("|\n\t\t\t\t-------------------------\n");
}
/*******************************************************/

/******************* inasistencias *********************/
printf("\n\n");
for (r=0; r<=5; r++)
{ do
{ printf("Ingresa las inasistencias que tuvo en %s: ",materias[r]);
scanf("%d",&inasist[r]);
if (inasist[r]>clases_x_materia[r])
printf("Excedes el limite para %s que es de %d.\n ",materias[r],clases_x_materia[r]);
}while(inasist[r]>clases_x_materia[r]);
}

printf("\nRegistro de inasistencias:\n%22sFaltas\n"," ");
for (r=0; r<=5; r++)
{ printf("[%18s]: %d\n",materias[r],inasist[r]);
}

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