Advertisement
LilChicha174

Untitled

Dec 27th, 2021
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.62 KB | None | 0 0
  1. #include<math.h>
  2. #include<stdio.h>
  3.  
  4. #define THESIZE 100
  5. #define CODE_ASCII 48
  6.  
  7. // Первая подзадача
  8. int first(int arr1[], int number) {
  9.     for (int i = 0; i < number; i++) {
  10.         if (arr1[i] < 0) return i;
  11.     }
  12.     return -1;
  13. }
  14.  
  15. // Вторая подзадача
  16. int second(int arr1[], int number) {
  17.     int last_negative = -1;
  18.     for (int i = 0; i < number; i++) {
  19.         if (arr1[i] < 0) last_negative = i;
  20.     }
  21.     return last_negative;
  22. }
  23.  
  24. // Третья подзадача
  25. int third(int arr1[], int number) {
  26.     int rigth, left, K = 0;
  27.     rigth = first(arr1, number);
  28.     left = second(arr1, number);
  29.     if (rigth != -1 && left != -1)
  30.         for (int i = rigth; i < left; i++) K += fabs(arr1[i]);
  31.     else
  32.         return -1;
  33.     return K;
  34. }
  35.  
  36. // Четвёртая подзадача
  37. int fourth(int arr1[], int number) {
  38.     int rigth, left, G = 0;
  39.     rigth = first(arr1, number);
  40.     left = second(arr1, number);
  41.     if (rigth != -1 && left != -1) {
  42.         for (int i = 0; i < rigth; i++) G += fabs(arr1[i]);
  43.         for (int i = left; i < number; i++) G += fabs(arr1[i]);
  44.     } else
  45.         return -1;
  46.     return G;
  47. }
  48.  
  49. // Главная ф-я
  50. int main() {
  51.     int arr[THESIZE], el = 0, num = 0;
  52.     char g, h;
  53.     for (int i = 0; i < THESIZE; i++) {
  54.         arr[i] = 1;
  55.     }
  56.     h = getchar();
  57.     g = getchar();
  58.     while (g != '\n') {
  59.         g = getchar();
  60.         if (g == '\n') {
  61.             arr[num] *= el;
  62.             num++;
  63.             break;
  64.         }
  65.         if (g == ' ') {
  66.             arr[num] *= el;
  67.             num++;
  68.             el = 0;
  69.         }
  70.         if (g == '-') arr[num] = -1;
  71.         if (g != ' ' && g != '-') {
  72.             el = el * 10 + (g - CODE_ASCII);
  73.         }
  74.     }
  75.     if (h == '0') {
  76.         if (first(arr, num) == -1)
  77.             printf("Данные некорректны\n");
  78.         else
  79.             printf("%d\n", first(arr, num));
  80.     }
  81.     if (h == '1') {
  82.         if (second(arr, num) == -1)
  83.             printf("Данные некорректны\n");
  84.         else
  85.             printf("%d\n", second(arr, num));
  86.     }
  87.     if (h == '2') {
  88.         if (third(arr, num) == -1)
  89.             printf("Данные некорректны\n");
  90.         else
  91.             printf("%d\n", third(arr, num));
  92.     }
  93.     if (h == '3') {
  94.         if (fourth(arr, num) == -1)
  95.             printf("Данные некорректны\n");
  96.         else
  97.             printf("%d\n", fourth(arr, num));
  98.     }
  99.     if (h != '0' && h != '1' && h != '2' && h != '3')
  100.         printf("Данные некорректны\n");
  101.     return 0;
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement