Sei sulla pagina 1di 16

CARRERA

Desarrollo de Software

ASIGNATURA
Fundamentos de Programacin

FACILITADOR
Jos Armando Alfonzo Garca

ALUMNO
Alejandro Enrique Ruiz Alcocer

UNIDAD 5
Actividad 2 Arreglos y Estructuras





Codificacin sin arreglos ni estructuras:
#include <stdio.h>
#include <stdlib.h>
/*declaracion de constantes*/
#define N_MATERIAS 7
int main(int argc, char *argv[])
{
system("color 02");
/*declaracion de variables*/
float calif_mate ;
float calif_lite ;
float calif_ciencias_nat ;
float calif_historia ;
float calif_ingles ;
float calif_deporte ;
float calif_arte ;
float suma ;
float pro ;
char respuesta;
system("CLS");
printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("\t\tPromedio para saber si pasaste \n\n\n");
do {
printf("Ingresa tus calificaciones:\n\n\n");
printf("1.-Calificacion de Matematicas=");
scanf("%f", &calif_mate);
printf("2.-Calificacion de Literatura=");
scanf("%f", &calif_lite);
printf("3.-Calificacion de Ciencias Naturales=");
scanf("%f", &calif_ciencias_nat);
printf("4.-Calificacion de Historia=");
scanf("%f", &calif_historia);
printf("5.-Calificacion de Ingles=");
scanf("%f", &calif_ingles);
printf("6.-Calificacion de Deporte=");
scanf("%f", &calif_deporte);
printf("7.-Calificacion de Arte=");
scanf("%f", &calif_arte);
suma=calif_mate+calif_lite+calif_ciencias_nat+calif_historia+calif_ingles+calif_deporte+calif_a
rte;
pro=suma/N_MATERIAS ;

printf("promedio:%.f\n ",pro);

if(pro>=6.5)
{
printf("Felicidades pasaste de ao\n");
if (pro>=9.5)
printf("Excelente ganaste un viaje\n");
}
else
{
printf ("Has reprobado\n") ;
}
printf("Deseas calcular otro promedio? S/N:\n\n");
respuesta = getch();
} while (respuesta!= 'N');
printf("\nPrograma terminado\n");
system("PAUSE");
return 0;
}
Codificacin con el Arreglo LISTA[ ] en variables:
#include <stdio.h>
#include <stdlib.h>

/*declaracion de constantes*/
#define N_MATERIAS 7

int main(int argc, char *argv[])
{
system("color 06");
/*declaracion de variables*/
float lista_cali[7];
float suma ;
float pro ;
char respuesta;
system("CLS");
printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("\t\tPromedio para saber si pasaste \n\n\n");
do {
printf("Ingresa tus calificaciones:\n\n\n");
printf("1.-Calificacion de Matematicas=");
scanf("%f", &lista_cali[0]);
printf("2.-Calificacion de Literatura=");
scanf("%f", &lista_cali[1]);
printf("3.-Calificacion de Ciencias Naturales=");
scanf("%f", &lista_cali[2]);
printf("4.-Calificacion de Historia=");
scanf("%f", &lista_cali[3]);
printf("5.-Calificacion de Ingles=");
scanf("%f", &lista_cali[4]);
printf("6.-Calificacion de Deporte=");
scanf("%f", &lista_cali[5]);
printf("7.-Calificacion de Arte=");
scanf("%f", &lista_cali[6]);
suma=lista_cali[0]+lista_cali[1]+lista_cali[2]+lista_cali[3]+lista_cali[4]+lista_cali[5]+lista_cali[6];
pro=suma/N_MATERIAS ;
printf("promedio:%.f\n ",pro);
if(pro>=6.5)
{
printf("Felicidades pasaste de ao\n");
if (pro>=9.5)
printf("Excelente ganaste un viaje\n");
}
else
{
printf ("Has reprobado\n") ;
}
printf("Deseas calcular otro promedio? S/N:\n\n");
respuesta = getch();
} while (respuesta!= 'N');
printf("\nPrograma terminado\n");
system("PAUSE");
return 0;
}

Codificacin con ndice (i) contador (i++) y ciclo FOR
#include <stdio.h>
#include <stdlib.h>
/*declaracion de constantes*/
#define N_MATERIAS 7
int main(int argc, char *argv[])
{
system("color 03");
/*declaracion de variables*/

int i ;
float lista_cali[7];
float suma ;
float pro ;
char respuesta;

system("CLS");
printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("Promedios \n\n\n");
printf("Matematicas=1\n");
printf("Literatura=2\n");
printf("ciencias Naturales=3\n");
printf("Historia=4\n");
printf("Ingles=5\n");
printf("Deporte=6\n");
printf("Arte=7\n\n");
printf("Ingresa tus calificaciones:\n\n\n");

for (i = 0; i < 7; i++) {

printf("Ingresa tu calificacion %d=",i+1);
scanf("%f", &lista_cali[i]);

}
suma=0 ;
for (i = 0; i < 7; i++) {
suma = suma + lista_cali [i];
pro=suma/N_MATERIAS ;
}
printf("promedio:%.f\n ",pro);

system("PAUSE");
return 0;
}


Codificacin con Estructura de Datos con ESTRUCT
#include <stdio.h>
#include <stdlib.h>
/*Declaracin de constante*/
#define NUM_MATERIAS 2
int main(int argc, char *argv[])
{
system("color 07");
/*Declaracin de variables*/
struct Alumno {
char nombre [12];
int primer_calif;
int segunda_calif;
int suma;
float pro;
};
struct Alumno datos_alumno1;
struct Alumno datos_alumno2;

strcpy(datos_alumno1.nombre,"Alex");
datos_alumno1.primer_calif=8;
datos_alumno1.segunda_calif=10;

datos_alumno1.suma=datos_alumno1.primer_calif + datos_alumno1.segunda_calif;
datos_alumno1.pro=datos_alumno1.suma /NUM_MATERIAS;

printf("El nombre es: %s\n",datos_alumno1.nombre);
printf("Su calificacion 1 es: %d\n",datos_alumno1.primer_calif);
printf("Su calificacion 2 es: %d\n",datos_alumno1.segunda_calif);
printf("Su promedio es: %.f\n",datos_alumno1.pro);


strcpy(datos_alumno2.nombre,"Alberto");
datos_alumno2.primer_calif=9;
datos_alumno2.segunda_calif=7;

datos_alumno2.suma=datos_alumno2.primer_calif + datos_alumno2.segunda_calif;
datos_alumno2.pro=datos_alumno2.suma /NUM_MATERIAS;

printf("El nombre es: %s\n",datos_alumno2.nombre);
printf("Su calificacion 1 es: %d\n",datos_alumno2.primer_calif);
printf("Su calificacion 2 es: %d\n",datos_alumno2.segunda_calif);
printf("Su promedio es: %.f\n",datos_alumno2.pro);
system("PAUSE");
return 0;
}










Codificacin con Estructura de Datos con ESTRUCT y SCANF
#include <stdio.h>
#include <stdlib.h>
/*Declaracin de constante*/
#define NUM_MATERIAS 2
int main(int argc, char *argv[])
{
system("color 07");
/*Declaracin de variables*/
struct Alumno {
char nombre [12];
int primer_calif;
int segunda_calif;
int suma;
float pro;
};
struct Alumno datos_alumno1;
printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("Calcula tu promedio\n\n");
printf("Escribe tu Nombre:");
scanf("%s",datos_alumno1.nombre);
printf("Ingresa tu primer calificacion:");
scanf("%d",&datos_alumno1.primer_calif);
printf("Ingresa tu segunda calificacion:");
scanf("%d",&datos_alumno1.segunda_calif);
datos_alumno1.suma=datos_alumno1.primer_calif + datos_alumno1.segunda_calif;
datos_alumno1.pro=datos_alumno1.suma /NUM_MATERIAS;



printf("\nEl nombre del alumno es: %s\n",datos_alumno1.nombre);
printf("Su calificacion 1 es: %d\n",datos_alumno1.primer_calif);
printf("Su calificacion 2 es: %d\n",datos_alumno1.segunda_calif);
printf("\t\tSu promedio es: %.f\n\n",datos_alumno1.pro);
system("PAUSE");
return 0;
}








Codificacin de Estructuras en Arreglos



Si fueran por ejemplo solo 2 registro pudiera quedar as:

#include <stdio.h>
#include <stdlib.h>
/*Declaracin de constante*/
#define NUM_MATERIAS 2
int main(int argc, char *argv[])
{
system("color 07");
/*Declaracin de variables*/
struct Alumno {
char nombre [12];
int primer_calif;
int segunda_calif;
int suma;
float pro;
};
struct Alumno lista_alumnos[4];

printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("Calcula tu promedio\n\n");
printf("Escribe tu Nombre:");
scanf("%s",&lista_alumnos[0]);
printf("Ingresa tu primer calificacion:");
scanf("%d",&lista_alumnos[0].primer_calif);
printf("Ingresa tu segunda calificacion:");
scanf("%d",&lista_alumnos[0].segunda_calif);

lista_alumnos[0].suma=lista_alumnos[0].primer_calif +
lista_alumnos[0].segunda_calif;
lista_alumnos[0].pro=lista_alumnos[0].suma /NUM_MATERIAS;

printf("\nEl nombre del alumno es: %s\n",lista_alumnos[0].nombre);
printf("Su calificacion 1 es: %d\n",lista_alumnos[0].primer_calif);
printf("Su calificacion 2 es: %d\n",lista_alumnos[0].segunda_calif);
printf("\t\tSu promedio es: %.f\n\n",lista_alumnos[0].pro);

printf("Escribe tu Nombre:");
scanf("%s",&lista_alumnos[1]);
printf("Ingresa tu primer calificacion:");
scanf("%d",&lista_alumnos[1].primer_calif);
printf("Ingresa tu segunda calificacion:");
scanf("%d",&lista_alumnos[1].segunda_calif);

lista_alumnos[1].suma=lista_alumnos[1].primer_calif +
lista_alumnos[1].segunda_calif;
lista_alumnos[1].pro=lista_alumnos[1].suma /NUM_MATERIAS;

printf("\nEl nombre del alumno es: %s\n",lista_alumnos[1].nombre);
printf("Su calificacion 1 es: %d\n",lista_alumnos[1].primer_calif);
printf("Su calificacion 2 es: %d\n",lista_alumnos[1].segunda_calif);
printf("\t\tSu promedio es: %.f\n\n",lista_alumnos[1].pro);

system("PAUSE");
return 0;
}





Pero si se van a manejar muchos registros entonces usamos estructuras
repetitivas con el FOR ndice y contador:
#include <stdio.h>
#include <stdlib.h>

/*Declaracin de constante*/
#define NUM_MATERIAS 2
int main(int argc, char *argv[])
{
system("color 07");
/*Declaracin de variables*/

struct Alumno {
char nombre [12];
int primer_calif;
int segunda_calif;
int suma;
float pro;
};
int i;
struct Alumno lista_alumnos[4];
printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("Calcula tu promedio\n\n");
for (i = 0;i<4; i++) {
printf("Escribe tu Nombre:");
scanf("%s",&lista_alumnos[i]);

printf("Ingresa tu primer calificacion:");
scanf("%d",&lista_alumnos[i].primer_calif);

printf("Ingresa tu segunda calificacion:");
scanf("%d",&lista_alumnos[i].segunda_calif);

lista_alumnos[i].suma=lista_alumnos[i].primer_calif +
lista_alumnos[i].segunda_calif;
lista_alumnos[i].pro=lista_alumnos[i].suma /NUM_MATERIAS;

printf("\nEl nombre del alumno es: %s\n",lista_alumnos[i].nombre);
printf("Su calificacion 1 es: %d\n",lista_alumnos[i].primer_calif);
printf("Su calificacion 2 es: %d\n",lista_alumnos[i].segunda_calif);
printf("\t\tSu promedio es: %.f\n\n",lista_alumnos[i].pro);

}
system("PAUSE");
return 0;
}


Pero si se van a manejar muchos registros entonces usamos estructuras
repetitivas con el FOR ndice y contador pero por secciones para mostar
una tabla de resultados:
#include <stdio.h>
#include <stdlib.h>
/*Declaracin de constante*/
#define NUM_MATERIAS 2
int main(int argc, char *argv[])
{
system("color 07");
/*Declaracin de variables*/
struct Alumno {
char nombre [12];
int primer_calif;
int segunda_calif;
int suma;
float pro;

};
int i;
struct Alumno lista_alumnos[4];

printf("\t\tEscuela Primaria Luis Gonzalez Obregon\n\n");
printf("Calcula tu promedio\n\n");
for (i = 0;i<4; i++) {
printf("Escribe tu Nombre:");
scanf("%s",&lista_alumnos[i]);

printf("Ingresa tu primer calificacion:");
scanf("%d",&lista_alumnos[i].primer_calif);

printf("Ingresa tu segunda calificacion:");
scanf("%d",&lista_alumnos[i].segunda_calif);
}
for (i = 0;i<4; i++) {
lista_alumnos[i].suma=lista_alumnos[i].primer_calif + lista_alumnos[i].segunda_calif;
lista_alumnos[i].pro=lista_alumnos[i].suma /NUM_MATERIAS;
}
printf ("NOMBRE CAL1 CAL2 PRO\n");
for (i = 0;i<4; i++) {
printf("%s %d %d
%.f\n",lista_alumnos[i].nombre,lista_alumnos[i].primer_calif,lista_alumnos[i].segunda_calif,lista_alumn
os[i].pro);
}
system("PAUSE");
return 0;
}

Potrebbero piacerti anche