Определить максимальное число в первой половине массива и минимальное число во второй - C (СИ) (74842)
Формулировка задачи:
Помогите написать программу пожалуйста!!Вот условие: заполнить массив из N ячеек случайными целыми числами от 1 до 24.Определить максимальное число в первой половине массива и минимальное число во второй половине массива (использование только одного цикла приветствуется).Массив одномерный!!
Решение задачи: «Определить максимальное число в первой половине массива и минимальное число во второй»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define n 10
int main(){
int mas[n];
int i,j, max, min ;
for(i = 0; i < n; i++){
mas[i] = rand()% 24 + 1;
printf("%d ", mas[i]);
}
max = mas[0]; min = mas[n/2];
for(i = 1, j = (n/2) + 1; i < n/2, j < n ; i++, j++){
if(mas[i] > max)
max = mas[i];
if(mas[j] < min)
min = mas[j];
}
printf("\n Max = %d Min = %d", max, min);
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с массивами и выводом данных в консоль
- Определение размера массива (n = 10)
- Создание массива типа int с размером n (mas[n])
- Инициализация переменных i, j, max и min значением 0
- Заполнение массива случайными числами от 1 до 24 с помощью функции rand()
- Вывод заполненного массива на экран с помощью цикла for и функции printf()
- Инициализация переменных max и min значением первого элемента массива (mas[0]) и серединного элемента массива (mas[n/2]) соответственно
- Вторая часть цикла for для поиска максимального числа в первой половине массива и минимального числа во второй половине массива
- Если текущий элемент массива больше max, то обновляем значение max
- Если текущий элемент массива меньше min, то обновляем значение min
- После завершения цикла for выводим на экран значения max и min
- Возвращаем 0, чтобы указать, что программа успешно завершилась