Advertisement
Guest User

Untitled

a guest
Apr 4th, 2020
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.44 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <locale.h>
  4.  
  5. float WorkWithMass(float **Mass,int n,int m,float *a){
  6.     float max=-100000;
  7.     Mass=(float**)malloc(n*sizeof(float*));
  8.     for (int i=0;i<n;i++){
  9.         Mass[i]=(float*)malloc(m*sizeof(float));
  10.         for (int j=0;j<m;j++){
  11.             printf("Mass[%d][%d] = ",i,j);
  12.             scanf("%f",&Mass[i][j]);
  13.             if (Mass[i][j]>max){
  14.                 max=Mass[i][j];
  15.             }
  16.         }
  17.         *(a+i)=max;
  18.         max = -10000;
  19.     }
  20.     for(int i=0;i<n;i++){
  21.         free(Mass[i]);
  22.     }
  23.     free(Mass);
  24.     return *a;
  25. }
  26. float WorkWithMassFF(float **Mass,int n,int m,float *a,FILE *Number){
  27.     float max=-100000;
  28.     Mass=(float**)malloc(n*sizeof(float*));
  29.     for (int i=0;i<n;i++){
  30.         Mass[i]=(float*)malloc(m*sizeof(float));
  31.         for (int j=0;j<m;j++){
  32.             fscanf(Number,"%f",&Mass[i][j]);
  33.             if (Mass[i][j]>max){
  34.                 max=Mass[i][j];
  35.             }
  36.         }
  37.         *(a+i)=max;
  38.         max = -10000;
  39.     }
  40.     for(int i=0;i<n;i++){
  41.         free(Mass[i]);
  42.     }
  43.     free(Mass);
  44.     return *a;
  45. }
  46. int main(){
  47.     setlocale(LC_ALL,"Rus");
  48.     setlocale(LC_NUMERIC,"C");
  49.     float **Mass,*a;
  50.     int k,j,p,n,m;
  51.     while(p!=0){
  52.         printf("Откуда будет загружена информация?\n0-Консоль;1-Файл\n");
  53.         scanf("%d",&k);
  54.         if (k==0){
  55.             printf("Где будет показана информация?\n0-Консоль;1-Файл\n");
  56.             scanf("%d",&j);
  57.             if (j==0){
  58.                 printf("Введите размерность \n");
  59.                 scanf("%d%d",&n,&m);
  60.                 a = (float *)malloc(n*sizeof(float));
  61.                 WorkWithMass(*Mass,n,m,a);
  62.                 for (int i=0;i<n;i++){
  63.                     printf("%.3f,",*(a+i));
  64.                 }
  65.             }
  66.             else{
  67.                 FILE *Answer;
  68.                 Answer=fopen("Answer.txt","w");
  69.                 printf("Введите размерность \n");
  70.                 scanf("%d%d",&n,&m);
  71.                 a = (float *)malloc(n*sizeof(float));
  72.                 WorkWithMass(*Mass,n,m,a);
  73.                 for (int i=0;i<n;i++){
  74.                     fprintf(Answer,"%.3f,",*(a+i));
  75.                 }
  76.                 fclose(Answer);
  77.             }
  78.             printf("Нужно ли повторить?\n0-Нет;1-Да\n");
  79.             scanf("%d",&p);
  80.         }
  81.         else{
  82.             FILE *Answer, *Number;
  83.             Number = fopen("Number.txt","r");
  84.             Answer = fopen("Answer.txt","w");
  85.             printf("Где будет показана информация?\n0-Консоль;1-Файл\n");
  86.             scanf("%d",&j);
  87.             if(j==0){
  88.                 fscanf(Number,"%d%d",&n,&m);
  89.                 a = (float *)malloc(n*sizeof(float));
  90.                 WorkWithMassFF(*Mass,n,m,a,Number);
  91.                 for (int i=0;i<n;i++){
  92.                     printf("%.3f,",*(a+i));
  93.                 }
  94.             }
  95.             else{
  96.                 fscanf(Number,"%d%d",&n,&m);
  97.                 a = (float *)malloc(n*sizeof(float));
  98.                 WorkWithMassFF(*Mass,n,m,a,Number);
  99.                 for (int i=0;i<n;i++){
  100.                     fprintf(Answer,"%.3f,",*(a+i));
  101.                 }
  102.             }
  103.             p = 0;
  104.             fclose(Answer);
  105.             fclose(Number);
  106.         }
  107.     }
  108.     return 0;
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement