SHARE
TWEET

Serega

a guest Apr 21st, 2019 76 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*14. Для кожного гравця в баскетбол під час гри збираються такі дані: номер гравця, кількість
  2. спроб влучити у кільце та кількість влучних кидків (останніх не може бути більше ніж спроб).
  3. Напишіть програму, що дозволяє зберігати такі дані для кожного гравця.
  4. Програма повинна виводити список всіх гравців та їх показники впорядковані по зростанню номерів гравців
  5. та надавати інформацію про найрезультативнішого гравця (найбільший відсоток влучних кидків).
  6. */
  7. #include <stdio.h>
  8. #include <malloc.h>
  9.  
  10. typedef struct
  11. {
  12.     char name[10];
  13.     int number;
  14.     int attempts;
  15.     int attemptsgood;
  16. }player;
  17.  
  18. void InputInformation(player* list);
  19. void OutputInformation(player* list);
  20. void NumberSort(player* list);
  21. void BestPlayer(player* list);
  22.  
  23. int main()
  24. {
  25.     system("color F0");
  26.     player* list;
  27.     list = (struct player*)malloc(3 * sizeof(struct player*));
  28.  
  29.     InputInformation(list);
  30.     NumberSort(list);
  31.     OutputInformation(list);
  32.     BestPlayer(list);
  33.  
  34.     return 0;
  35. }
  36.  
  37. void InputInformation(player* list)
  38. {
  39. checkpoint:
  40.     printf("\n");
  41.     for (int i = 0; i < 3; i++)
  42.     {
  43.         printf("Name :  ");
  44.         fgets(&list[i].name, 10, stdin);
  45.         printf("Number : ");
  46.         scanf_s("%d", &list[i].number);
  47.         printf("Attempts : ");
  48.         scanf_s("%d", &list[i].attempts);
  49.         printf("Realized attempts : ");
  50.         scanf_s("%d", &list[i].attemptsgood);
  51.         if (list[i].attempts < list[i].attemptsgood)
  52.         {
  53.             printf("\n\nError\n\n");
  54.             goto checkpoint;
  55.         }
  56.         printf("\n");
  57.         getchar();
  58.     }
  59. }
  60.  
  61. void OutputInformation(player* list)
  62. {
  63.     for (int i = 0; i < 3; i++)
  64.     {
  65.         printf("\nName : %s ", list[i].name);
  66.         printf("Number : %d  ", list[i].number);
  67.         printf("Attempts : %d  ", list[i].attempts);
  68.         printf("Successfully attempts : %d  \n", list[i].attemptsgood);
  69.  
  70.     }
  71. }
  72.  
  73. void NumberSort(player* list)
  74. {
  75.  
  76.     player temp;
  77.  
  78.     for (int i = 0; i < 3; i++)
  79.     {
  80.         for (int j = 0; j < 3; j++)
  81.         {
  82.             if (list[j].number > list[j + 1].number)
  83.             {
  84.                 temp = list[j];
  85.                 list[j] = list[j + 1];
  86.                 list[j + 1] = temp;
  87.             }
  88.  
  89.         }
  90.     }
  91. }
  92.  
  93. void BestPlayer(player* list)
  94. {
  95.     player tmp;
  96.  
  97.     for (int i = 0; i < 3; i++)
  98.     {
  99.         for (int j = 0; j < 3; j++)
  100.         {
  101.             if (list[j].attemptsgood > list[j + 1].attemptsgood)
  102.             {
  103.                 tmp = list[j];
  104.                 list[j] = list[j + 1];
  105.                 list[j + 1] = tmp;
  106.             }
  107.  
  108.         }
  109.     }
  110.  
  111.     printf("\n\nThe best player : %s \nNumber : %d \nAttempts : %d  \nSuccessfully attempts : %d\n\n", list[2].name, list[2].number, list[2].attempts, list[2].attemptsgood);
  112. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top