Определить количество и процентное соотношение положительных, отрицательных и нулевых элементов - C (СИ)
Формулировка задачи:
Разработать программу, которая формирует случайным образом в диапазоне [-99, 99] одномерный целочисленный массив из N элементов (N вводится) и определяет количество и процентное соотношение положительных, отрицательных и нулевых элементов.
Решение задачи: «Определить количество и процентное соотношение положительных, отрицательных и нулевых элементов»
textual
Листинг программы
- #include <stdio.h>
- #include <time.h>
- #include <Windows.h>
- #define LOW_BORDER -99
- #define HIGH_BORDER 99
- int main(int argc, char *argv[])
- {
- srand(time(NULL));
- int *arr, min, i, size;
- int count_neg = 0, count_zero = 0, count_pos = 0, count_sum;
- printf("Enter the number of elements in array\n");
- scanf("%d", &size);
- arr = malloc(size * sizeof(int));
- printf("Randomly generated array of %d elements:\n", size);
- for (i = 0; i < size; i++) {
- arr[i] = rand() % (HIGH_BORDER + 1 - LOW_BORDER) + LOW_BORDER;
- printf("%2d ", arr[i]);
- }
- for (i = 0; i < size; i++) {
- if (arr[i] > 0) {
- count_pos++;
- }
- else if (arr[i] < 0) {
- count_neg++;
- }
- else if (arr[i] == 0) {
- count_zero++;
- }
- }
- count_sum = count_pos + count_neg + count_zero;
- printf("\nThe number of positive elements is %d, what is %f percents\n", count_pos, ((double)count_pos / count_sum) * 100);
- printf("The number of positive elements is %d, what is %f percents\n", count_neg, ((double)count_neg / count_sum) * 100);
- printf("The number of positive elements is %d, what is %f percents\n", count_zero, ((double)count_zero / count_sum) * 100);
- system("pause");
- return 0;
- }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем границы для случайного генерирования чисел
- Инициализируем переменные для подсчета количества положительных, отрицательных и нулевых элементов, а также переменную для хранения суммы элементов
- Запрашиваем у пользователя количество элементов в массиве
- Выделяем память под массив с помощью функции malloc
- Выводим случайно сгенерированный массив на экран
- Проходим по всем элементам массива и увеличиваем счетчик в зависимости от значения элемента
- Вычисляем общее количество элементов
- Выводим на экран количество положительных, отрицательных и нулевых элементов в виде процентов от общего количества элементов
- Используем функцию system для приостановки работы программы до нажатия клавиши пользователем
- Возвращаем 0, чтобы указать на успешный конец работы программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д