Поиск непрерывной последовательности непрерывных чисел - C (СИ)
Формулировка задачи:
Объявить массив целых чисел и заполнить его случайными значениями. Размер массива и диапазон значений его элементов заданы в Вашем варианте индивидуального задания. В индивидуальных заданиях (см. приложение) указано также, какую обработку массива следует произвести.
Для всех вариантов задания следует иметь в виду следующее:
• 0 считается положительным числом, если в задании не оговорен какой-то другой его статус;
• когда речь идет о какой-то последовательности чисел, имеется в виду последовательность с длиной, большей 1;
• в тех случаях, когда задание требует выполнения каких-то вычислений, разрешается выполнять их с той точностью, которую обеспечивают операции целочисленной арифметики.
Решение задачи: «Поиск непрерывной последовательности непрерывных чисел»
textual
Листинг программы
#include <stdio.h> #include <time.h> #include <Windows.h> #define ARRAY_SIZE 100 #define LOWER_BORDER -100 #define HIGHER_BORDER 100 int main() { srand(time(NULL)); int *a, i, sum = 0, max_sum = 0; BOOL start_flag = FALSE; a = malloc(ARRAY_SIZE * sizeof(int)); for (i = 0; i < ARRAY_SIZE; i++) { a[i] = (rand() % (HIGHER_BORDER - LOWER_BORDER + 1)) + LOWER_BORDER; //printf("%d\n", a[i]); } for (i = 0; i < ARRAY_SIZE; i++) { if (a[i] >= 0) start_flag = TRUE; else { start_flag = FALSE; sum = 0; } if (start_flag) { sum += a[i]; start_flag = FALSE; } if (max_sum < sum) max_sum = sum; } printf("Longest sum of positive elements is: %d\n", max_sum); system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявляются макросы для определения размера массива и границ значений, которые могут принимать случайные числа.
- Задаются начальные значения переменных: селектор случайной последовательности чисел, сумма, максимальная сумма и флаг начала последовательности.
- В цикле заполняется массив случайными числами.
- В цикле подсчитывается сумма положительных чисел, начиная с каждого числа массива, и проверяется, является ли эта сумма максимальной.
- Выводится сообщение с максимальной суммой положительных чисел.
- Требуется нажатие клавиши для выхода из программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д