Сортировка, группировка, определение частоты попадания в интервалы - C (СИ)
Формулировка задачи:
1. Дано натуральне число N і одновимірний масив A1, A2, …, AN цілих чисел. Визначити найбільше й найменше значення, отримані значення розглядати як кінці відрізка. Розбити відрізок на 5 діапазонів значень по зростанню й підрахувати частоту влучень елементів масиву в кожній із цих діапазонів.
Дано натуральное число N иодномерный массив A1, A2, …, AN целых чисел.
Найти найибольшее и наименьшее значение и рассматривать их как концы отрезка.
Разбить отрезок на 5 диапазонов значений по возрастанию и подсчитать частоту попаданий элементов массива в каждый из этих диапазонов.
#include <stdio.h> #include <stdlib.h> int N,i,j=0; int main() { system("chcp 1251"); printf("Введите число N: "); scanf("%d",&N); int mas[N+1]; for (i=1;i<=N;i++) { printf("Введите элемент массива A%d: ",i); scanf("%d",&mas[i]); } int k[N]; for (i=1;i<=N;i++) { if(mas[i+1]>mas[i]) { k[i]=mas[i]; } if(mas[i+1]<mas[i]) { k[i]=mas[i+1]; } } j=0; for (i=N;i>=1;i--) { if (mas[i]>mas[i-1]&&j<mas[i]) { j=mas[i]; } } printf("Минимальное значение: %d\n Максимальное значение: %d",k[1],j); return 0; }
Решение задачи: «Сортировка, группировка, определение частоты попадания в интервалы»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #define N 10 int funkmin(int A[N]) { int i, mmin=A[0]; for (i=0; i<N-1; i++) { if(A[0]>=A[i+1]) { mmin=A[i+1]; A[0]=A[i+1]; } } return mmin; } int funkmax(int A[N]) { int i, mmax=A[0]; for (i=0; i<N-1; i++) { if(A[0]<A[i+1]) { mmax=A[i+1]; A[0]=A[i+1]; } } return mmax; } int main () { int i; int Vektor[N]; for (i=0;i<N;i++) { printf("Введите Массив [%d]\n", i); scanf("%d", &Vektor[i]); } printf("минимальное значение =%d\n",funkmin(Vektor)); printf("максимальное значение =%d\n",funkmax(Vektor)); return 0; }
Объяснение кода листинга программы
- Программа включает две функции:
funkmin
иfunkmax
, которые принимают массив целых чисел и возвращают минимальное и максимальное значение соответственно. - Функция
funkmin
начинает сравнивать первый элемент массива со всеми последующими элементами. Если текущий элемент больше первого, то он становится новым минимальным значением, а первый элемент присваивается значение текущего элемента. - Функция
funkmax
работает аналогичноfunkmin
, но сравнивает первый элемент с последующими элементами в обратном порядке. Это позволяет найти максимальное значение в массиве, так как при обычном переборе массива в циклеfor
первым проверяется последний элемент массива. - В функции
main
создается массивVektor
размеромN
и заполняется значениями, введенными пользователем. - Затем вызываются функции
funkmin
иfunkmax
для нахождения минимального и максимального значения в массивеVektor
. - Выведенные значения минимального и максимального значения массива
Vektor
вычисляются и выводятся на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д