lab 3_2

Run Settings
LanguageC
Language Version
Run Command
/* * @file lab3_2.c * @author Герасимюк Д.В., гр. 515і1 * @date 26 березня 2024 * @brief Лабораторна робота №3, варіант 3 * Використання масивів. Завдання 2 */ #include <stdio.h> #include <stdlib.h> #include <time.h> #include <locale.h> #include "sum.h" #define MAX 100 int main() { setlocale(LC_ALL, "Ukr"); int size; int array[MAX]; printf("Введіть кількість елементів масиву (не більше %d): ", MAX); scanf("%d", &size); // Перевірка коректності введеного розміру if (size <= 0 || size > MAX) { printf("Некоректний розмір масиву.\n"); return 1; } printf("Оберіть метод введення елементів масиву:\n"); printf("1. Введення з клавіатури\n"); printf("2. Випадкові числа\n"); int input_choice; scanf("%d", &input_choice); if (input_choice == 1) { // Введення з клавіатури printf("Введіть елементи масиву:\n"); for (int i = 0; i < size; i++) { printf("Елемент %d: ", i + 1); scanf("%d", &array[i]); } } else if (input_choice == 2) { // Введення випадкових чисел srand(time(NULL)); printf("Елементи масиву (випадкові числа):\n"); for (int i = 0; i < size; i++) { array[i] = rand() % 101; printf("%d ", array[i]); } printf("\n"); } else { printf("Некоректний вибір.\n"); return 1; } int result = SumDoLastPositive(array, size); printf("Сума елементів до останнього додатного елемента: %d\n", result); return 0; }
/* * @file sum.h * @author Герасимюк Д.В., гр. 515і1 * @date 26 березня 2024 * @brief Лабораторна робота №3, варіант 3 * Використання масивів. Завдання 2 */ #pragma once int SumDoLastPositive(int array[], int size) { int sum = 0; int last_positive = -1; // індекс останнього додатного елемента for (int i = size - 1; i >= 0; i--) { if (array[i] > 0) { last_positive = i; break; } } // обчислення суми if (last_positive != -1) { for (int i = 0; i < last_positive; i++) { sum += array[i]; } } return sum; }
Editor Settings
Theme
Key bindings
Full width
Lines