Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <locale.h>
- float WorkWithMass(float **Mass,int n,int m,float *a){
- float max=-100000;
- Mass=(float**)malloc(n*sizeof(float*));
- for (int i=0;i<n;i++){
- Mass[i]=(float*)malloc(m*sizeof(float));
- for (int j=0;j<m;j++){
- printf("Mass[%d][%d] = ",i,j);
- scanf("%f",&Mass[i][j]);
- if (Mass[i][j]>max){
- max=Mass[i][j];
- }
- }
- *(a+i)=max;
- max = -10000;
- }
- for(int i=0;i<n;i++){
- free(Mass[i]);
- }
- free(Mass);
- return *a;
- }
- float WorkWithMassFF(float **Mass,int n,int m,float *a,FILE *Number){
- float max=-100000;
- Mass=(float**)malloc(n*sizeof(float*));
- for (int i=0;i<n;i++){
- Mass[i]=(float*)malloc(m*sizeof(float));
- for (int j=0;j<m;j++){
- fscanf(Number,"%f",&Mass[i][j]);
- if (Mass[i][j]>max){
- max=Mass[i][j];
- }
- }
- *(a+i)=max;
- max = -10000;
- }
- for(int i=0;i<n;i++){
- free(Mass[i]);
- }
- free(Mass);
- return *a;
- }
- int main(){
- setlocale(LC_ALL,"Rus");
- setlocale(LC_NUMERIC,"C");
- float **Mass,*a;
- int k,j,p,n,m;
- while(p!=0){
- printf("Откуда будет загружена информация?\n0-Консоль;1-Файл\n");
- scanf("%d",&k);
- if (k==0){
- printf("Где будет показана информация?\n0-Консоль;1-Файл\n");
- scanf("%d",&j);
- if (j==0){
- printf("Введите размерность \n");
- scanf("%d%d",&n,&m);
- a = (float *)malloc(n*sizeof(float));
- WorkWithMass(*Mass,n,m,a);
- for (int i=0;i<n;i++){
- printf("%.3f,",*(a+i));
- }
- }
- else{
- FILE *Answer;
- Answer=fopen("Answer.txt","w");
- printf("Введите размерность \n");
- scanf("%d%d",&n,&m);
- a = (float *)malloc(n*sizeof(float));
- WorkWithMass(*Mass,n,m,a);
- for (int i=0;i<n;i++){
- fprintf(Answer,"%.3f,",*(a+i));
- }
- fclose(Answer);
- }
- printf("Нужно ли повторить?\n0-Нет;1-Да\n");
- scanf("%d",&p);
- }
- else{
- FILE *Answer, *Number;
- Number = fopen("Number.txt","r");
- Answer = fopen("Answer.txt","w");
- printf("Где будет показана информация?\n0-Консоль;1-Файл\n");
- scanf("%d",&j);
- if(j==0){
- fscanf(Number,"%d%d",&n,&m);
- a = (float *)malloc(n*sizeof(float));
- WorkWithMassFF(*Mass,n,m,a,Number);
- for (int i=0;i<n;i++){
- printf("%.3f,",*(a+i));
- }
- }
- else{
- fscanf(Number,"%d%d",&n,&m);
- a = (float *)malloc(n*sizeof(float));
- WorkWithMassFF(*Mass,n,m,a,Number);
- for (int i=0;i<n;i++){
- fprintf(Answer,"%.3f,",*(a+i));
- }
- }
- p = 0;
- fclose(Answer);
- fclose(Number);
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement