лабораторона 3 завдання 2

Run Settings
LanguageC
Language Version
Run Command
/** * @file lab3_2.c * @author Нездоймишапка А.О., гр. 515 * @date 03 березня 2023 * @brief Лабораторна робота № 3 * * Використання масивів. Завдання 2 */ #include <stdio.h> #include <stdlib.h> #include <time.h> #include <locale.h> // Прототип функції int sum_positive_elements_before_max(const int array[], int n); int main() { setlocale(LC_ALL, "ukr"); int n; int array[100]; int choice; printf("Введіть кількість елементів масиву (макс. 100): "); if (scanf("%d", &n) != 1 || n <= 0 || n > 100) { printf("Неправильне значення n!\n"); return 1; } printf("Виберіть спосіб заповнення масиву:\n"); printf("1 - Ввести з клавіатури\n"); printf("2 - Заповнити випадковими числами\n"); if (scanf("%d", &choice) != 1 || (choice != 1 && choice != 2)) { printf("Неправильний вибір!\n"); return 1; } if (choice == 1) { printf("Введіть %d елементів масиву:\n", n); for (int i = 0; i < n; ++i) { if (scanf("%d", &array[i]) != 1) { printf("Неправильне значення!\n"); return 1; } } } else { srand((unsigned int)time(NULL)); printf("Масив заповнено випадковими числами:\n"); for (int i = 0; i < n; ++i) { array[i] = rand() % 200 - 100; // Генерування чисел від -100 до 99 printf("%d ", array[i]); } printf("\n"); } int result = sum_positive_elements_before_max(array, n); printf("Сума додатних елементів до максимального елемента: %d\n", result); return 0; } int sum_positive_elements_before_max(const int array[], int n) { int max_index = 0; // Знайдіть індекс максимального елемента for (int i = 1; i < n; ++i) { if (array[i] > array[max_index]) { max_index = i; } } int sum = 0; // Обчисліть суму додатних елементів перед максимальним елементом for (int i = 0; i < max_index; ++i) { if (array[i] > 0) { sum += array[i]; } } return sum; }
Editor Settings
Theme
Key bindings
Full width
Lines