Advertisement
lukasd

3 zadanie kolokwium poprawa 2016

Feb 15th, 2018
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.03 KB | None | 0 0
  1. typedef struct
  2. {
  3.     int numer;
  4.     char nazwa[50];
  5.     float promien;
  6. }Planeta;
  7. Planeta func(Planeta *arr,int size)
  8. {
  9.  
  10.     float a;
  11.     Planeta b;
  12.     float *v=(float*)malloc(sizeof(float)*size);
  13.     float pi=3.14;
  14.     for (int i = 0; i < size; i++)
  15.     {
  16.         if (arr[i].numer % 2 == 0)
  17.         {
  18.             v[i] = (4 / 3)*pi*pow(arr[i].promien, 3);
  19.         }
  20.         else
  21.         {
  22.             v[i] = 0.9*((4 / 3)*pi*pow(arr[i].promien, 3));
  23.         }
  24.     }
  25.     for (int i = 0; i < size-1; i++)
  26.     {
  27.         for (int j = 0; j < size-1; j++)
  28.         {
  29.             if(v[j]<v[j+1])
  30.             {
  31.                 a = v[j + 1];
  32.                 v[j + 1] = v[j];
  33.                 v[j] = a;
  34.                 b = arr[j + 1];
  35.                 arr[j + 1] = arr[j];
  36.                 arr[j] = b;
  37.             }
  38.         }
  39.     }
  40.     return arr[0];
  41. }
  42. void kolos1()
  43. {
  44.     Planeta arr[3];
  45.     arr[0].numer = 1;
  46.         strcpy(arr[0].nazwa, "Kolos wielki");
  47.     arr[0].promien = 8000;
  48.     arr[1].numer = 2;
  49.         strcpy(arr[1].nazwa, "duza planeta");
  50.     arr[1].promien = 5000;
  51.     arr[2].numer = 3;
  52.         strcpy(arr[2].nazwa, "lodowy gigant");
  53.     arr[2].promien = 2000;
  54.  
  55.     Planeta temp= func(arr, 3);
  56.  
  57.     printf("%d %s %f", temp.numer, temp.nazwa, temp.promien);
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement