Programación Estructurada
Foto de perfil
viernes, 6 de junio de 2014
miércoles, 4 de junio de 2014
Practica 7
Problema 1
a)
Codigo
a)
Codigo
// Practica 7 Problema 1 Fehca:02/06/14
#include <fstream.h>
#include <iostream.h>
#include <conio.h>
main()
{
ofstream entrada;
entrada.open("problema1.txt",ios::out|ios::app);
if(entrada.fail())
{
cout<<"Error al abrir el archivo";
getch();
}
else{
float automovil;
float millas;
float galones;
char dec;
cout<<"Se han creado el archivo correctamente."<<endl;
do
{
cout<<"\nIntroduce el numero de automovil: ";
cin>>automovil;
cout<<"Introduce las millas recorridas: ";
cin>>millas;
cout<<"Introduce los galones consumidas: ";
cin>>galones;
cout<<"\nDeseas registrar otro? ";
cin>>dec;
entrada<<automovil<<" "<<millas<<" "<<galones<<endl;
} while(dec!='n');
entrada.close();
cout<<"\nLos datos se almacenados correctamente.";
}
getch();
}
b)
Codigo
//Practica 7 Problema 1 b) Fecha:02/06/14
#include <iostream>
#include <fstream>
#include <conio.h>
#include <math.h>
main()
{
ifstream salida;
salida.open("problema1.txt",ios::in);
if (salida.fail())
{
cout<<"\nError al abrir el archivo";
getch();
}
else
{
float automovil;
float millas;
float galones;
float totalMillas=0;
float totalGasolinas=0;
float promedio;
salida>>automovil;
while (!salida.eof())
{
salida>>millas;
salida>>galones;
cout<<"No.automovil Millas Galones"<<endl;
cout<<" "<<automovil;
cout<<" "<<millas<<" "<<galones<<endl;
totalMillas=totalMillas+millas;
totalGasolinas=totalGasolinas+galones;
promedio=totalMillas/totalGasolinas;
salida>>automovil;
}
cout<<"\nTotal de millas recorridas es: "<<totalMillas<<endl;
cout<<"\nTotal de gasolinas utilizadas es: "<<totalGasolinas<<endl;
cout<<"\nEl promedio de millas por galon es: "<<promedio<<endl;
}
getch();
}
Problema 2
a)
// Practica 7 Problema 2 Fecha:02/06/14
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
main()
{
ofstream entrada;
entrada.open("problema2.txt",ios::out);
if (entrada.fail()){
cout<<"El archivo no se creo correctamente";
getch();
}
else{
char nombre[15],dec;
int inicial;
int vendida;
int minima;
cout<<"Archivo creado correctamente"<<endl;
do
{
cout<<"Introduce el numero de parte: "; cin>>nombre;
cout<<"Introduce la cantidad inicial: "; cin>>inicial;
cout<<"Introduce la cantidad vendida: "; cin>>vendida;
cout<<"Introduce la cantidad minima: "; cin>>minima;
cout<<"\nDesea registrar otro? "; cin>>dec;
entrada<<nombre<<" "<<inicial<<" "<<vendida<<" "<<minima<<endl;
}while(dec!='N');
entrada.close();
cout<<"\nDatos almacenados correctamente.";
}
getch();
}
b)
codigo
// Practica 7 Problema 2 b) Fecha:02/06/14
#include <iostream>
#include <conio.h>
#include <fstream>
main()
{
ifstream salida;
salida.open("problema2.txt",ios::in);
if(salida.fail()){
cout<<"Fallo en abrir en archivo";
getch();
}
else{
char nombre[15];
int inicial;
int vendida;
int minima;
salida>>nombre;
while (!salida.eof()){
salida>>inicial;
salida>>vendida;
salida>>minima;
cout<<"No. de partes C.inicial C.final C.minima"<<endl;
cout<<nombre;
cout<<" "<<inicial<<" "<<vendida<<" "<<minima<<endl;
salida>>nombre;
}
}
getch();
}
Problema 3
a)
codigo
// Practica 7 Problema 3 Fecha: 02/06/14
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
main()
{
ofstream entrada;
entrada.open("problema3.txt",ios::out|ios::app);
if(entrada.fail()){
cout<<"Fallo en abrir";
getch();
}
else{
char nombre[8][20],dec;
float tarifa[8];
int horas[8],i;
do
{
cout<<"Introduce el nombre: "; cin>>nombre[i];
cout<<"Introduce la tarifa: "; cin>>tarifa[i];
cout<<"Introduce las horas: "; cin>>horas[i];
cout<<"Desea registrar otro? "; cin>>dec;
entrada<<nombre[i]<<" "<<tarifa[i]<<" "<<horas[i]<<" "<<endl;
i++;
} while(dec!='N');
cout<<"Datos almacenados correctamente"<<endl;
entrada.close();
}
getch();
}
b)
codigo
// Practica 7 Problema 3 b) Fecha: 02/06/14
#include <fstream.h>
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
main()
{
ifstream salida;
salida.open("problema3.txt",ios::in);
if (salida.fail()){
cout<<"Fallo al abrir";
getch();
}
else{
char nombre[4][15];
float tarifa[4];
float horas[4];
int i;
float temp[4];
float extra[4];
float bruto[4];
float regular[1];
for(i=0; i<4; i++){
salida>>nombre[i];
while(!salida.eof()){
salida>>tarifa[i];
salida>>horas[i];
if(horas[i]<=40){
temp[i]=(tarifa[i]*horas[i]);
extra[i]=(0);
bruto[i]=(temp[i]);
cout<<"nombre: "<<nombre[i]<<endl;
cout<<"tarifa: "<<tarifa[i]<<endl;
cout<<"horas: "<<horas[i]<<endl;
cout<<"pago tiempo extra: "<<extra[i]<<endl;
cout<<"pago regular: "<<bruto[i]<<endl;
cout<<"pago bruto: "<<temp[i]<<endl;
}
else{
temp[i]=(tarifa[i]*horas[i]);
extra[i]=(horas[i]-40);
regular[i]=(extra[i]*1.5*tarifa[i]);
bruto[i]=(temp[i]+regular[i]);
cout<<"nombre: "<<nombre[i]<<endl;
cout<<"tarifa: "<<tarifa[i]<<endl;
cout<<"horas: "<<horas[i]<<endl;
cout<<"pago tiempo extra: "<<extra[i]<<endl;
cout<<"pago regular: "<<temp[i]<<endl;
cout<<"pago bruto: "<<bruto[i]<<endl;
}
salida>>nombre[i];
}
}
salida.close();
}
getch();
}
Problema 4
a)
codigo
// Practica 7 Problema 4 Fecha: 02/06/14
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
main()
{
ofstream entrada;
entrada.open("problema4.txt",ios::out);
if(entrada.fail()){
cout<<"Fallo en abrir";
getch();
}
else{
char dec;
int numero;
do
{
cout<<"Introduce el numero: "; cin>>numero;
cout<<"Deseas registrar otro? "; cin>>dec;
entrada<<numero<<" ";
} while(dec!='N');
cout<<"Datos almacenados correctamente"<<endl;
entrada.close();
}
getch();
}
b)
Codigo
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
void almacenarNums();
void Promedio();
int main()
{
almacenarNums();
getch();
clrscr();
Promedio();
return 0;
getch();
}
void almacenarNums()
{
ofstream entrada;
entrada.open("problema4.txt",ios::out);
if(entrada.fail())
{
clrscr();
cout<<"Fallo en abrir";
getch();
}
else{
char dec;
int numero;
for(int i=0;i<18;i++)
{
cout<<"Introduce el numero: "; cin>>numero;
entrada<<numero<<" ";
}
cout<<"Datos almacenados correctamente!"<<endl;
entrada.close();
}
}
void Promedio()
{
ifstream salida;
salida.open("problema4.txt",ios::in);
if(salida.fail())
{
clrscr();
cout<<"Fallo en abrir";
getch();
}
else{
int numero,i;
double prom,n1=5.0,n2=4.0,n3=6.0,suma=0.0;
do{
for (i=0;i<6;i++)
{
salida>>numero;
suma=suma+numero;
}
prom=(suma-n1)/n1;
cout<<"\n Promedio del primer grupo es: "<<prom<<" con "<<n1<<" elementos\n"<<endl;
suma=0;
for (i=7;i<12;i++)
{
salida>>numero;
suma=suma+numero;
}
prom=(suma-n2)/n2;
cout<<"\n Promedio del segundo grupo es: "<<prom<<" con "<<n2<<" elementos\n"<<endl;
suma=0;
for (i=13;i<20;i++)
{
salida>>numero;
suma=suma+numero;
}
prom=(suma-n3)/n3;
cout<<"\n Promedio del tercer grupo es: "<<prom<<" con "<<n3<<" elementos\n"<<endl;
}while(salida.eof());
salida.close();
}
getch();
}
lunes, 2 de junio de 2014
Practica 6
Problema 1
Pseudocodigo
Inicio
reticula[5][11],max_accidentes1=0, max_accidentes2=0,max_accidentes3=0, av1, calle1,av2,calle2,av3, calle3: int
leer_datos(reticula)
mostrar_datos(reticula)
inter_mas_pelig(reticula,max_accidentes1,max_accidentes2,max_accidentes3, av1, calle1,av2, calle2,av3, calle3)
Fin
funcion leer_datos( a[5][11]: int)
{
i,j : int
for (i=0 to 5 step i ++)
{
Write " Avenida ", (i+1)
Write " --------- "
for (j=0 to 11 step j++)
{
Write " Calle ", (j+30), " : "
Read a[i][j]
}}
}
funcion mostrar_datos(int a[5][11])
{
i,j : int
Write " Calles | 30 31 32 33 34 35 36 37 38 39 40"
Write "---------------------------------------------------------"
for (i=0 to 5 step i ++)
{
Write "Avenida ", (i+1), " |"
for (j=0 to 11 step j++)
{Write a[i][j] }
Write
}
}
funcion inter_mas_pelig(a[5][11]: int, max_accidentes1: int, max_accidentes2: int, max_accidentes3: int , av1:int, calle1:int , av2:int, calle2:int, av3:int, calle3:int)
{
i,j : int
for (i=0 to 5 step i ++){
for (j=0 to 11 step j++){
if(a[i][j]>max_accidentes1 && a[i][j]<max_accidentes2)
{ max_accidentes1=a[i][j]
av1=(i+1) calle1=(j+30) }
if(a[i][j]>max_accidentes2 && a[i][j]<max_accidentes3)
{max_accidentes1=max_accidentes2
max_accidentes2=a[i][j]
av2=(i+1) calle2=(j+30) }
if(a[i][j]>max_accidentes3)
{max_accidentes1=max_accidentes2
max_accidentes2=max_accidentes3
max_accidentes3=a[i][j]
av3=(i+1) calle3=(j+30) }
}}
Write " Las tres Intersecciones mas Peligrosas son: "
Write "============================================"
Write "Avenida: ", av3, "Calle: ", calle3
Write "Con ", max_accidentes3 , " Accidentes"
Write "Avenida: ", av2, "Calle: ", calle2
Write "Con ", max_accidentes2 ", Accidentes"
Write "Avenida: ", av1 , "Calle: ", calle1
Write "Con ", max_accidentes1 ," Accidentes"
}
Codigo
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void leer_datos(int a[5][11]);
void mostrar_datos(int a[5][11]);
void inter_mas_pelig(int a[5][11],int max_accidentes1,int max_accidentes2,int max_accidentes3,int av1,int calle1,int av2,int calle2,int av3,int calle3);
int main()
{
int reticula[5][11],max_accidentes1=0, max_accidentes2=0,max_accidentes3=0, av1, calle1,av2, calle2,av3, calle3;
leer_datos(reticula);
mostrar_datos(reticula);
inter_mas_pelig(reticula,max_accidentes1,max_accidentes2,max_accidentes3, av1, calle1,av2, calle2,av3, calle3);
getch();
return 0;
}
void leer_datos(int a[5][11])
{
int i,j;
for(i=0;i<5;i++)
{clrscr();
cout<<" Avenida "<<(i+1)<<endl;
cout<<" --------- "<<endl;
for(j=0;j<11;j++)
{
cout<<" Calle "<<(j+30)<<" : ";
cin>>a[i][j];
}}
}
void mostrar_datos(int a[5][11])
{
clrscr();
int i,j;
cout<<"\n Calles | 30 31 32 33 34 35 36 37 38 39 40"<<endl;
cout<<"---------------------------------------------------------"<<endl;
for(i=0;i<5;i++)
{
cout<<setw(5)<<"Avenida "<<(i+1)<<" |";
for(j=0;j<11;j++)
{cout<<setw(4)<<a[i][j];}
cout<<endl;
}
}
void inter_mas_pelig(int a[5][11],int max_accidentes1,int max_accidentes2,int max_accidentes3,int av1,int calle1,int av2,int calle2,int av3,int calle3)
{
int i,j;
for (i=0;i<5;i++){
for (j=0;j<11;j++){
if(a[i][j]>max_accidentes1 && a[i][j]<max_accidentes2)
{ max_accidentes1=a[i][j];
av1=(i+1); calle1=(j+30);}
if(a[i][j]>max_accidentes2 && a[i][j]<max_accidentes3)
{max_accidentes1=max_accidentes2;
max_accidentes2=a[i][j];
av2=(i+1); calle2=(j+30);}
if(a[i][j]>max_accidentes3)
{max_accidentes1=max_accidentes2;
max_accidentes2=max_accidentes3;
max_accidentes3=a[i][j];
av3=(i+1); calle3=(j+30);}
}}
cout<<"\n\n\t Las tres Intersecciones mas Peligrosas son: "<<endl;
cout<<"\t============================================"<<endl;
cout<<"\tAvenida: "<<av3<<"\n\tCalle: "<<calle3<<endl;
cout<<"\tCon "<<max_accidentes3<<" Accidentes\n"<<endl;
cout<<"\tAvenida: "<<av2<<"\n\tCalle: "<<calle2<<endl;
cout<<"\tCon "<<max_accidentes2<<" Accidentes\n"<<endl;
cout<<"\tAvenida: "<<av1<<"\n\tCalle: "<<calle1<<endl;
cout<<"\tCon "<<max_accidentes1<<" Accidentes\n"<<endl;
getch();
}
Problema 2
Pseudocodigo
Inicio
{
A[3][5]:int
X[5]:int
Y[3]:int
y[3]={0,1,2}:int
leerDatos(A,X)
calcular(A,X,Y)
desplegar(A,X,Y,y)
}
Fin
funcion leerDatos( A[3][5]:int X[5]:int)
{
i,j,q:int
write"Introduce los datos de la tabla A "
for(i=0 to 3 step i++)
{
for(j=0 to 5 step j++)
{
write"datos ["<<i+1<<"] ["<<j+1<<"] : " read A[i][j]
}
}
write"Introduece los datos X "
for(q=0 to 5 step q++)
{
write"datos ["<<q+1<<"] : " read X[q]
}
}
funcion calcular( A[3][5]:int X[5]:int Y[3]:int)
{
i,j,suma: int
for(i=0 to 3 step i++)
{
suma=0
for(j=0 to 5 step j++)
{
suma=suma+((A[i][j])*(X[j]))
}
Y[i]=suma
}
}
funcion desplegar(int A[3][5],int X[5],int Y[3],int y[3])
{
i,j:int
for(i=0 to 3 step i++)
{
write" Y["<<y[i]<<"] : "
for(j=0 to 5 step j++)
{
write" ("<<A[i][j]<<" * "<<X[j]<<") + "
}
write" = "<<Y[i]
}
}
Codigo
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <iomanip.h>
void leerDatos(int A[3][5],int X[5]);
void calcular(int A[3][5],int X[5],int Y[3]);
void desplegar(int A[3][5],int X[5],int Y[3],int y[3]);
int main()
{
int A[3][5];
int X[5];
int Y[3];
int y[3]={0,1,2};
leerDatos(A,X);
calcular(A,X,Y);
desplegar(A,X,Y,y);
getch();
return 0;
}
void leerDatos(int A[3][5],int X[5])
{
int i,j,q;
cout<<"Introduce los datos de la tabla A "<<endl;
for(i=0; i<3; i++)
{
for(j=0; j<5; j++)
{
cout<<"datos ["<<i+1<<"] ["<<j+1<<"] : "; cin>>A[i][j];
}
}
cout<<"\n\nIntroduece los datos X "<<endl;
for(q=0; q<5; q++)
{
cout<<"datos ["<<q+1<<"] : "; cin>>X[q];
}
}
void calcular(int A[3][5],int X[5],int Y[3])
{
int i,j,suma;
for(i=0; i<3; i++)
{
suma=0;
for(j=0; j<5; j++)
{
suma=suma+((A[i][j])*(X[j]));
}
Y[i]=suma;
}
}
void desplegar(int A[3][5],int X[5],int Y[3],int y[3])
{
int i,j;
cout<<"\n\n\n";
for(i=0; i<3; i++)
{
cout<<" Y["<<y[i]<<"] : ";
for(j=0; j<5; j++)
{
cout<<" ("<<A[i][j]<<" * "<<X[j]<<") + ";
}
cout<<" = "<<Y[i]<<endl;
}
}
Problema 3
Pseudocodigo
Inicio
{
tabla[50][50]: int
N,M: int
leer(tabla,N,M)
write" "
write"---------------------------------------------"
CalcularFilas(tabla,N,M)
write" "
CalcularColumnas(tabla,N,M)
write" "
Desplegar(tabla,N,M)
}
Fin
funcion LeerDatos(tabla[50][50]:int, int&N, int&M)
{
i,j: int
write"Introduzca el numero de filas : "
read N
write"Introduzca el numero de columnas : "
read M
for(i=0 to i<N step i++)
{
for(j=0 to j<M step j++)
{
write"Introduzca el dato [",i+1, "," ,j+1 ,"] : "
read tabla[i][j]
}
}
}
funcion CalcularFilas(tabla[50][50],N,M: int)
{
i,j,mayor,menor,suma: int
for(i=0 to i<N step i++)
{
suma=0
for(j=0 to j<M step j++)
{
suma=suma+tabla[i][j]
}
write"La suma del fila ",(i+1)," es: ",suma
if(i == 0)
then
{
menor=i+1;
}
if(suma > 0)
then
{
mayor=i+1;
}
if(suma < 0)
then
{
menor=i+1;
}
}
write"La fila con la suma mayor es: ",mayor
write"La fila con la suma menor es: ",menor
}
funcion CalcularColumnas(tabla[50][50],N,M: int)
{
i,j,suma,menor,mayor: int
for(i=0 to i<M step i++)
{
suma=0
for(j=0 to j<N step j++)
{
suma=suma+tabla[j][i]
}
write"La suma de la columna ",(i+1)," es: ",suma
if( i== 0)
then
{
menor=i+1
}
if(suma > 0)
then
{
mayor=i+1
}
if(suma < 0)
then
{
menor=i+1
}
}
write"La columna con la suma mayor es: ",mayor
write"La columna con la suma menor es: ",menor
}
funcion Desplegar(tabla[50][50],N,M: int)
{
i,j: int
numero,maximo,minimo: int
promedio,sumaTotal=0: real
for(i=0 to i<N step i++)
{
for(j=0 to j<M step j++)
{
numero=tabla[i][j]
sumaTotal=sumaTotal+tabla[i][j]
if( i== 0 || j == 0)
then
{
minimo=tabla[i][j]
}
if(numero < minimo)
then
{
minimo=numero
}
if(numero > maximo)
then
{
maximo=numero
}
}
promedio=sumaTotal/(N*M)
}
write"La suma total de la tabla es: ",sumaTotal
write"El promedio de la tabla es: ",promedio
write"El valor maximo en la tabla es: ",maximo
write"El valor minimo en la tabla es: ",minimo
}
Codigo
#include <iostream>
#include <conio.h>
#include <math.h>
void LeerDatos(int tabla[50][50],int&N, int&M);
void CalcularFilas(int tabla[50][50], int N, int M);
void CalcularColumnas(int tabla[50][50], int N, int M);
void Desplegar(int tabla[50][50], int N, int M);
int main()
{
int tabla[50][50];
int N, M;
LeerDatos(tabla,N,M);
cout<<"\n\n";
cout<<"------------------------------------------------------------------"<<endl;
CalcularFilas(tabla,N,M);
cout<<"\n\n";
CalcularColumnas(tabla,N,M);
cout<<"\n\n";
Desplegar(tabla,N,M);
getch();
return 0;
}
void LeerDatos(int tabla[50][50], int&N, int&M)
{
int i,j;
cout<<"\n Introduzca el numero de filas : ";
cin>>N;
cout<<"\n Introduzca el numero de columnas : ";
cin>>M;
cout<<"\n\n";
for(i=0; i<N; i++)
{
for(j=0; j<M; j++)
{
cout<<"Introduzca el dato ["<<(i+1)<<","<<(j+1)<<"] : ";
cin>>tabla[i][j];
}
}
}
void CalcularFilas(int tabla[50][50], int N, int M)
{
int i,j,mayor,menor,suma;
for(i=0; i<N; i++)
{
suma=0;
for(j=0; j<M; j++)
{
suma=suma+tabla[i][j];
}
cout<<"\nLa suma del fila "<<(i+1)<<" es: "<<suma;
if(i == 0)
{
menor=i+1;
}
if(suma > 0)
{
mayor=i+1;
}
if(suma < 0)
{
menor=i+1;
}
}
cout<<"\n\nLa fila con la suma mayor es: "<<mayor;
cout<<"\nLa fila con la suma menor es: "<<menor;
}
void CalcularColumnas(int tabla[50][50], int N, int M)
{
int i,j,suma,menor,mayor;
for(i=0; i<M; i++)
{
suma=0;
for(j=0; j<N; j++)
{
suma=suma+tabla[j][i];
}
cout<<"\nLa suma de la columna "<<(i+1)<<" es: "<<suma;
if( i== 0)
{
menor=i+1;
}
if(suma > 0)
{
mayor=i+1;
}
if(suma < 0)
{
menor=i+1;
}
}
cout<<"\n\nLa columna con la suma mayor es: "<<mayor;
cout<<"\nLa columna con la suma menor es: "<<menor;
}
void Desplegar(int tabla[50][50], int N, int M)
{
int i,j;
int numero,maximo,minimo;
double promedio,sumaTotal=0;
for(i=0; i<N; i++)
{
for(j=0; j<M; j++)
{
numero=tabla[i][j];
sumaTotal=sumaTotal+tabla[i][j];
if( i== 0 || j == 0)
{
minimo=tabla[i][j];
}
if(numero < minimo)
{
minimo=numero;
}
if(numero > maximo)
{
maximo=numero;
}
}
promedio=sumaTotal/(N*M);
}
cout<<"\nLa suma total de la tabla es: "<<sumaTotal;
cout<<"\nEl promedio de la tabla es: "<<promedio;
cout<<"\nEl valor maximo en la tabla es: "<<maximo;
cout<<"\nEl valor minimo en la tabla es: "<<minimo;
}
Problema 4
Pseudocodigo
inicio
nombres[15][30]: char
calificacion[15][4]: int
promedio[15]: real
promedioGeneral[1]: real
leerDatos(nombres,calificacion)
calcularPromedio(calificacion, promedio)
calcularGeneral(promedio, promedioGeneral)
desplegar(nombres,promedio,calificacion,promedioGeneral)
write"alumno destacados: "
Mayor(promedio, nombres)
fin
funcion leerDatos(nombres[15][30]: char , calificacion[15][4]: int)
{
i,j:int
for(i=0 to 15 step i++)
{
write"Introduce el nombre del alumno: " read nombres[i]
for(j=0 to 4 step j++)
{
do
{
write"calificacion del examen", j+1
read calificacion[i][j]
}
while (calificacion[i][j]<0 || calificacion[i][j]>100)
}
}
}
funcion calcularPromedio(calificacion[15][4]: int , promedio[15]: real)
{
i,j: int
suma: real
for(i=0 to 15 step i++)
{
suma=0
for(j=0 to 4 step j++)
{
suma=suma+calificaion[i][j]
}
promedio[i]=suma/4.0
}
}
funcion calcularGeneral(promedio[15]: real , promedioGeneral[1]: real)
{
i: int
sumar=0: real
for(i=0 to 15 step i++)
{
sumar=sumar+promedio[i]
}
promedioGeneral[1]=sumar/15.0
}
funcion desplegar(nombres[15][30]: char , promedio[15]: real , calificacion[15][4]: int , promedioGeneral[1]: real)
{
z,q: int
for(z=0 to 15 step z++)
{
write" ", nombres[z]
for(q=0 to 4 step q++)
{
write" ", calificacion[z][q]
}
write"promedio: ", promedio[z]
}
write"promedio general: ", promedioGeneral[1]
}
funcion Mayor (promedio[15]: real , nombres[15][30]: char)
{
i,j,temp,temp2: int
for(i=0 to 3 step i++)
{
temp=0
}
for(j=0 to 15 step j++)
{
if (promedio[j] > temp)
{
temp=promedio[j]
temp2=j
}
}
write" ", nombres[temp2], "promedio", promedio[temp2]
promedio[temp2]=0
}
}
Codigo
// Practica 6 Problema 4 Fecha:19/05/2014
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
void leerDatos (char nombres[15][30] , int calificacion[15][4]);
void calcularPromedio (int calificacion[15][4], float promedio[15]);
void calcularGeneral (float promedio[15],float promedioGeneral[1]);
void desplegar (char nombres[15][30],float promedio[15], int calificacion[15][4],float promedioGeneral[1]);
void Mayor (float promedio[15], char nombres[15][30]);
int main()
{
char nombres[15][30];
int calificacion[15][4];
float promedio[15];
float promedioGeneral[1];
leerDatos(nombres,calificacion);
cout<<"\n";
calcularPromedio(calificacion,promedio);
cout<<"\n\n\t";
calcularGeneral (promedio, promedioGeneral);
cout<<"\n";
desplegar(nombres,promedio,calificacion, promedioGeneral);
cout<<" \n\n\t\t alumno destacados: "<<endl;
Mayor (promedio,nombres);
getch();
return 0;
}
void leerDatos(char nombres[15][30], int calificacion[15][4])
{
int i,j;
for(i=0; i<15; i++)
{
cout<<"Introduce el nombre del alumno: "; cin>>nombres[i];
getch();
for(j=0; j<4; j++)
{
do
{
cout<<"calificacion del examen "<<(j+1)<<" : ";
cin>>calificacion[i][j];
} while(calificacion[i][j]<0 || calificacion[i][j]>100);
}
}
}
void calcularPromedio(int calificacion[15][4],float promedio[15])
{
int i, j;
double suma;
for (i=0; i<15 ; i++)
{
suma=0;
for(j=0; j<4 ; j++)
{
suma=suma+calificacion[i][j];
}
promedio[i]=(suma/4.0);
}
}
void calcularGeneral(float promedio[15],float promedioGeneral[1])
{
int i;
double sumar=0;
for (i=0; i<15; i++)
{
sumar=sumar+promedio[i];
}
promedioGeneral[1]=sumar/15.0;
}
void desplegar (char nombres[15][30],float promedio[15], int calificacion[15][4],float promedioGeneral[1])
{
int z, q;
for (z=0; z<15; z++)
{
cout<<" "<<nombres[z]<<endl;
for (q=0; q<4; q++)
{
cout<<""<<calificacion[z][q]<<" "<<endl;
}
cout<<"\t\t promedio : "<<promedio[z]<<endl;
}
cout<<"\t\t\t promedio general : "<<promedioGeneral[1]<<endl;
getch();
}
void Mayor (float promedio[15], char nombres[15][30])
{
int i,j,temp,temp2;
for(i=0; i<3; i++)
{
temp=0;
for(j=0; j<15; j++)
{
if(promedio[j] > temp)
{
temp=promedio[j];
temp2=j;
}
}
cout<<"\n "<<nombres[temp2]<<" promedio "<<promedio[temp2]<<endl;
promedio[temp2]=0;
}
}
Suscribirse a:
Entradas (Atom)