Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Dflapo tarea files_dos

217 views

Published on

  • Be the first to comment

  • Be the first to like this

Dflapo tarea files_dos

  1. 1. Tarea # 5 “FICHEROS 2” (Electrónica) Fundamentos de ProgramaciónUniversidad Técnica Particular de Loja Versión [1.0.0] CONFIDENCIAL
  2. 2. Fundamentos de ProgramaciónUniversidad Técnica Particular de Loja Versión [1.0.0]Información del DocumentoTÍTULO: Fundamentos de ProgramaciónSUBTÍTULO: Universidad Técnica Particular de LojaVERSIÓN: [1.0.0]ARCHIVO: (NombreEstudiante)-Cap_ProcedimientosFunciones.docxAUTOR: Daniel Irene RobalinoESTADO: FinalLista de CambiosVERSIÓN FECHA AUTOR DESCRIPCIÓN1.0.0 20/01/2012 DRI Emisión InicialFirmas y AprobacionesELABORADO Darwin LapoPOR:FECHA: 20/01/2012 Firma:REVISADO POR: [Nombre] [Cargo]FECHA: [AAA-MM- Firma: DD]APROBADO [Nombre]POR: [Cargo]FECHA: [AAAA-MM- Firma: DD]© UTPL -ELECTRONICA CONFIDENCIAL Pag. 1 de 5
  3. 3. Fundamentos de ProgramaciónUniversidad Técnica Particular de Loja Versión [1.0.0]1. Diseño / Verificación / Ejecución.7.1.:Determinar los valores de I,J, después de la ejecución de las instrucciones siguientes . CODIGO (Diseño) EJECUCIÓN //Numero: 7.1 //Nombre: Valores //Descripcion: determinar los valores de I,J despues de la ejecución de las instrucciones siguientes //Autor: Darwin Lapo //Fecha Act: 13-12-2011 #include <iostream> #include <fstream> #include <ctime> #include <cstdlib> #include <stdio.h> using namespace std; constint m=3; void asignarMatrices(intmatriz[][m]) { for(int i=0;i<m;i++) for(int j=0;j<m;j++) { matriz[i][j]=rand() % 10 + 1; } } void grabarMatrices(intmatriz[][m], ofstream&oArchivoMatrices, char nomArchivoMatriz[]) { oArchivoMatrices.open(nomArchivoMatriz,ios::app); for(int i=0;i<m;i++){ for(int j=0;j<m;j++) oArchivoMatrices<<matriz[i][j]<<";"; oArchivoMatrices<<endl; } oArchivoMatrices.close(); } voidpresentarMatrices(int matriz[][m]) { cout<<endl<<"LA MATRIZ ES"<<endl; //cout<<"-- ------ --"<<endl; for(int i=0;i<m;i++) { for(int j=0;j<m;j++) cout<<matriz[i][j]<<"t"; cout<<endl; } } void grabarResultados(intmatriz_sum[][m], intmatriz_rest[][m], intmatriz_mul[][m],intmatriz_A[][m],intmatriz_B[][m]) { charnomArchivoMatriz[]="matricesRespuesta.csv"; ofstreamoArchivoMatrices(nomArchivoMatriz); oArchivoMatrices<<";Matriz A"<<endl; oArchivoMatrices.close(); grabarMatrices(matriz_A,oArchivoMatrices,nomArchivoMatriz); oArchivoMatrices.open(nomArchivoMatriz,ios::app); oArchivoMatrices<<";Matriz B"<<endl; oArchivoMatrices.close();© UTPL -ELECTRONICA CONFIDENCIAL Pag. 2 de 5
  4. 4. Fundamentos de ProgramaciónUniversidad Técnica Particular de Loja Versión [1.0.0] grabarMatrices(matriz_B,oArchivoMatrices,nomArchivoMatriz); oArchivoMatrices<<";Multiplicacion"<<endl; oArchivoMatrices.close(); grabarMatrices(matriz_mul,oArchivoMatrices,nomArchivoMatriz); oArchivoMatrices.open(nomArchivoMatriz,ios::app); oArchivoMatrices<<";Suma"<<endl; oArchivoMatrices.close(); grabarMatrices(matriz_sum,oArchivoMatrices,nomArchivoMatriz); oArchivoMatrices.open(nomArchivoMatriz,ios::app); oArchivoMatrices<<";Resta"<<endl; oArchivoMatrices.close(); grabarMatrices(matriz_rest,oArchivoMatrices,nomArchivoMatriz); } intpresentarResultados() { charnomArchivoMatriz[]="matricesRespuesta.csv"; ifstreamiArchivoMatrices(nomArchivoMatriz); if(!iArchivoMatrices){ cout<<"Existe un error al abrir el archivo.."; exit(1); //Fuerza el cierre del programa } stringlineas; //Varible para almacenar las lineas del archivo de entrada while(getline(iArchivoMatrices,lineas)){ cout<<lineas<<endl; } system("PAUSE"); return 0; } void multiplicacion(intmatriz_A[][m], intmatriz_B[][m], intmatriz_mul[][m]) { int sum=0; for(int i=0;i<m;i++) { for(int j=0;j<m;j++) { sum=0; for(int k=0;k<m;k++) sum=sum+matriz_A[i][k]*matriz_B[k][j]; matriz_mul[i][j]=sum; } } cout<<"Multiplicacion procesada"<<endl; system("PAUSE"); } void suma(intmatriz_A[][m], intmatriz_B[][m], intmatriz_sum[][m]) { for(int i=0;i<m;i++) for(int j=0;j<m;j++) matriz_sum[i][j]=matriz_A[i][j]+matriz_B[i][j]; cout<<"Suma procesada"<<endl; system("PAUSE"); } void resta(intmatriz_A[][m], intmatriz_B[][m], intmatriz_rest[][m]) { for(int i=0;i<m;i++) for(int j=0;j<m;j++) matriz_rest[i][j]=matriz_A[i][j]-matriz_B[i][j]; cout<<"Restaprocesada"<<endl; system("PAUSE"); } void menu() {© UTPL -ELECTRONICA CONFIDENCIAL Pag. 3 de 5
  5. 5. Fundamentos de ProgramaciónUniversidad Técnica Particular de Loja Versión [1.0.0] system("cls"); cout<<"ALGEBRA DE MATRICES"<<endl; cout<<"==================="<<endl; cout<<"V. PRESENTAR MATRICES"<<endl; cout<<"S. SUMAR MATRICES"<<endl; cout<<"R. RESTAR MATRICES"<<endl; cout<<"M. MULTIPLICAR MATRICES"<<endl; cout<<"P. PRESENTAR RESULTADOS"<<endl; cout<<"O. SALIR"<<endl<<endl; cout<<"SU OPCION ?"<<endl; } void visualizarMatrices(intmatriz_A[][m], intmatriz_B[][m]) { asignarMatrices(matriz_A); asignarMatrices(matriz_B); presentarMatrices(matriz_A); presentarMatrices(matriz_B); system("PAUSE"); } int main() { srand(time(NULL)); intmatriz_A[m][m],matriz_B[m][m]; intmatriz_mul[m][m]; intmatriz_sum[m][m]; intmatriz_rest[m][m]; char op; while (true) { menu(); op=getchar(); switch (op) { case V: visualizarMatrices(matriz_A, matriz_B); break; case R: resta(matriz_A,matriz_B,matriz_rest); break; case S: suma(matriz_A,matriz_B,matriz_sum); break; case M: multiplicacion(matriz_A,matriz_B,matriz_mul); break; case P: grabarResultados(matriz_sum,matriz_rest,matriz_mul,matriz_A, matriz_B); presentarResultados(); break; case O: exit(0); } } system("PAUSE"); return 0; }© UTPL -ELECTRONICA CONFIDENCIAL Pag. 4 de 5

×