Advertisement
FazEN

Untitled

Oct 22nd, 2022
696
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 4.09 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <windows.h>
  3. #include <time.h>
  4. #define min(x,y) (((x)<(y)) ? (x):(y))
  5. #define max(x,y) (((x)>(y)) ? (x):(y))
  6. /// ФУНКЦИЯ ДЛЯ ЧИСЛА ФИБОНАЧИ. ЗАДАЧА 2
  7. int f(int n)
  8. {
  9.     if ( n == 1 || n == 2) return 1;
  10.     return f(n-1) + f(n-2);
  11.  
  12. }
  13. void bubble_sort(int *a,int size)
  14. {
  15.     for (int i = 0; i < size - 1; i++)
  16.     {
  17.         for (int j = (size - 1); j > i; j--) // для всех элементов после i-ого
  18.         {
  19.             if (a[j - 1] > a[j]) // если текущий элемент меньше предыдущего
  20.             {
  21.                 int t = a[j - 1]; // меняем их местами
  22.                 a[j - 1] = a[j];
  23.                 a[j] = t;
  24.             }
  25.         }
  26.     }
  27. }
  28. void print(int *a,int size)
  29. {
  30.     for (int i = 0; i < size; ++i) printf("%d ",a[i]);
  31. }
  32. int main()
  33. {
  34.    /* srand(time(NULL));
  35.     /// ЗАДАНИЕ 4. ОДНОМЕРНЫЕ МАССИВЫ
  36.     SetConsoleOutputCP(CP_UTF8);
  37.     int n;
  38.     printf("Введите размерность массива: "); scanf("%d",&n);
  39.     printf("Введите границы диапозона через пробел, в котором элементы массива будут заполняться случайным образом: ");
  40.     int a,b;
  41.     scanf("%d %d",&a,&b);
  42.     int array[n];
  43.     int s1=0,s2=0, mi = b + 1, ma = a - 1,c1=0,c2=0;
  44.     for (int i = 0; i < n; ++i)
  45.     {
  46.         array[i]=rand()%(b-a+1)+a;
  47.         mi=min(mi,array[i]);
  48.         ma=max(ma,array[i]);
  49.         if(array[i]>0) s1+=array[i]; else s2+=array[i];
  50.         if(array[i]>0) c1++; else if (array[i]<0) c2++; ///количество отрицательных и положительных чисел"""
  51.     }
  52.     printf("Наш массив:");
  53.     for (int i = 0; i < n; ++i) printf("%d ",array[i]);
  54.     printf("\nСумма положительных элементов:%d\nСумма отрицательных элементов:%d\n",s1,s2);
  55.     printf("Максимальный элемент:%d\nМинимальный элемент:%d\nРазница между минимальным и максимальным:%d\n",ma,mi,mi-ma);
  56.     printf("Количество положительных элементов:%d\nКоличество отрицательных элементов:%d\n",c1,c2);
  57.     printf("Элементы, которые больше среднего арифметического:");
  58.     for (int i = 0; i <n ; ++i) if (array[i]>(s1+s2)/n) printf("%d ",array[i]);
  59.     printf("\n==================\nВыведем наш исходный массив: ");
  60.     for (int i = 0; i <n ; ++i) printf("%d ",array[i]);
  61.     printf("Сколько элементов будем заменять? : ");
  62.     int el=0;
  63.     scanf("%d",&el);
  64.     if(el==0)
  65.     {
  66.         printf("Отличный выбор!!!!\n");
  67.     }
  68.     else
  69.     {
  70.         printf("Внимание, массив 0 индексации\n");
  71.         for (int i = 0; i < el; ++i)
  72.         {
  73.             int x,t;
  74.             printf("Введите индекс массива, который будем менять: ");
  75.             scanf("%d",&x);
  76.             printf("Значение этого элемента= %d , на какой меняем?\n",array[x]);
  77.             scanf("%d",&t);
  78.             array[x]=t;
  79.         }
  80.         printf("Изменённый массив: ");
  81.         print(array,n);
  82.     }
  83.     bubble_sort(array,n);
  84.     printf("Отсортированынй массив методом пузырька: ");
  85.     print(array,n);
  86.     printf("Сравним, что больше: сумма от 1 до x или с x До n. Введите номер элемента, начиная с 0:");
  87.     int x;
  88.     scanf("%d",&x);
  89.     int s3=0;
  90.     for (int i = 0; i <= x; ++i) s3+=array[i];
  91.     if (s3>s1+s2-array[x]) printf("Сумма от 1 до x больше"); else printf("сумма от 1 до x меньше");*/
  92.     int n;
  93.     printf("n= ");scanf("%d",&n);
  94.     for (int i = 1; i <=n; ++i) {
  95.         printf("%d ",f(i));
  96.     }
  97.  
  98.     return 0;
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement