Advertisement
Guest User

Untitled

a guest
Dec 19th, 2014
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.11 KB | None | 0 0
  1. /*
  2. Riešte problém, ktorý vštvorcovej matici zadaného ¾ubovo¾ného rozmeru NxN nájde riadok (riadky èíslujte vo výstupe),
  3. ktorého absolútna hodnota súètu
  4. jeho prvkov je maximum alebo minimum v danej matici.
  5. Všetky údaje vypíšte.
  6. */
  7.  
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10. #include <conio.h>
  11. #include <float.h>
  12.  
  13. int main()
  14. {  
  15.    
  16.     int i, j, ROZMER;
  17.     double min = DBL_MAX, max = -DBL_MAX, x=0;
  18.  
  19.     do
  20.     {
  21.     printf("Zadaj 1 rozmer pre stvorcovu maticu:\n");
  22.     scanf("%d", &ROZMER)    
  23.     if (ROZMER<1)
  24.     {
  25.      printf("***Bol zadany rozmer %d matice, ktory je mensi ako 1, opakujem nacitavanie***\n", ROZMER);
  26.     }
  27.     } while (ROZMER<1);
  28.        
  29.     double matica[ROZMER][ROZMER]; //preto dva krat rozmer lebo to ma byt stvorcova matica
  30.     double *p_pole =  (double*) malloc (ROZMER*sizeof(double));
  31.     if (p_pole==NULL) exit (1);
  32.    
  33.     printf("Zadaj cisla do  maticu %dx%d:\n", ROZMER, ROZMER);      
  34.     for(i=0; i<ROZMER; i++)
  35.     {
  36.      for(j=0; j<ROZMER; j++)
  37.         {
  38.          scanf("%lf",&matica[i][j]);
  39.          x += matica[i][j];
  40.          if(matica[i][j]>max)
  41.          {
  42.           max=matica[i][j];
  43.           printf("Aktualne maximum je %f\n", max);
  44.          }
  45.          if(matica[i][j]<min)
  46.          {
  47.           min=matica[i][j];
  48.           printf("Aktualne minimum je %f\n", min);
  49.          }        
  50.         }
  51.      p_pole[i]=fabs(x);
  52.      x=0;
  53.     }
  54.        
  55.     printf("\nNacitana  matica je:\n");
  56.     for(i=0; i<ROZMER; i++)
  57.     {
  58.              for(j=0; j<ROZMER; j++)
  59.                  {
  60.                  printf("%.2f ",matica[i][j]);
  61.                  }
  62.     printf("\n");    
  63.     }
  64.    
  65.     for(i=0; i<ROZMER; i++)
  66.     {
  67.      if(p_pole[i] == max)
  68.      {
  69.       printf("\nAbsolutna hodnota suctu %d riadku je taka ista ako maximum  v matici %4.4f \n", i+1, max);
  70.      }
  71.      if(p_pole[i] == min)
  72.      {
  73.       printf("\nAbsolutna hodnota suctu %d riadku je taka ista ako minimum v matici %4.4f \n", i+1, min);
  74.      }
  75.     }
  76.      
  77.    free((void *)p_pole);
  78.    p_pole=NULL;  
  79.    
  80.    system("pause");
  81.    return 0;    
  82.    
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement