Foto de perfil

Foto de perfil

miércoles, 4 de junio de 2014

Practica 7

Problema 1

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)

                                                       Codigo
         

// 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;
  }

}