Advertisement
Guest User

Untitled

a guest
Dec 11th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int i,j;
  5. const int dim=3;
  6.  
  7. int A[dim][dim];
  8. int B[dim][dim];
  9. int R[dim][dim];
  10. int Ra[dim-1];
  11.  
  12. int main(void){
  13. //Fichero donde pillo las matrices.
  14. FILE *Matriz;
  15. do{
  16. Matriz=fopen("Matriz.txt","r");
  17. }while(Matriz==NULL);
  18. if(Matriz!=NULL)
  19. printf("Fichero abierto \n");
  20. //Fichero donde Guardo los resultados.
  21. FILE *Resultados;
  22. do{
  23. Resultados=fopen("Resultados.txt","w");
  24. }while(Resultados==NULL);
  25. if(Resultados!=NULL)
  26. printf("Fichero abierto \n");
  27.  
  28. //Entro al archivo a coger los datos.
  29. while(!feof(fileInput)){
  30. //Guardo en la Variable A los primeros 9 numeros.
  31. for(i=0;i<dim;i++)
  32. for(j=0;j<dim;j++)
  33. fscanf(fileInput,"%i",&A[i][j]);
  34. //Guardo en la Variable B los siguientes 9 numeros.
  35. for(i=0;i<dim;i++)
  36. for(j=0;j<dim;j++)
  37. fscanf(fileInput,"%i",&B[i][j]);
  38. }
  39. fclose(Matriz);
  40.  
  41. //Imprimir A
  42. for(i=0;i<dim;i++){
  43. for(j=0;j<dim;j++)
  44. printf("%i ",A[i][j]);
  45. printf("\n");
  46. }
  47. //Imprimir B
  48. for(i=0;i<dim;i++){
  49. for(j=0;j<dim;j++)
  50. printf("%i ",B[i][j]);
  51. printf("\n");
  52. }
  53. //R = A + B
  54. for(i=0;i<dim;i++){
  55. for(j=0;j<dim;j++)
  56. R[i][j] = A[i][j] + B[i][j];
  57. }
  58. //Sumar cada fila de A
  59. int k = 0;
  60. int sumaFila = 0;
  61. for(i=0;i<dim;i++){
  62. for(j=0;j<dim;j++){
  63. sumaFila=sumaFila+A[i][j];
  64. }
  65. Ra[k] = sumaFila;
  66. k++;
  67. sumaFila = 0;
  68. }
  69. //Valor minimo de la diagonal de B
  70. int valorMinimo = 0;
  71. for(i=0;i<dim;i++){
  72. for(j=0;j<dim;j++)
  73. if((B[i] == B[j]) && (B[i][j] < 0))
  74. valorMinimo = B[i][j];
  75. }
  76. //Escribir todo en el fichero.
  77. //R = A + B
  78. for(i=0;i<dim;i++){
  79. for(j=0;j<dim;j++)
  80. fwrite("%i ",R[i][j], Resultados);
  81. printf("\n");
  82. }
  83. printf("\n");
  84. //Sumar cada fila de A
  85. for(k=0;k<dim;k++)
  86. fwrite("%i ",Ra[k], Resultados);
  87. //Valor minimo de la diagonal de B
  88. fwrite("%i ",valorMinimo, Resultados);
  89.  
  90. fclose(Resultados);
  91.  
  92.  
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement