
Напишите, программу, которая заполняет массив из 10 элементов случайными числами на, отрезке [–5;
5] и находит сумму положительных элементов. (язык c++)

Ответы на вопрос

Ответ:
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int arr[10], sum = 0; // Создаём массив и переменную, в которой будет сумма
for (int i = 0; i < 10; i++) {
int r = rand() %11 - 5; // Генерация случайного числа в промежутке от [-5; 5]
arr[i] = r; // Присваем значение перменной
cout << arr[i] << " "; // Вывод массива.
}
cout << endl;
for (int i = 0; i < 10; i++) {
if (arr[i] > 0) {
sum += arr[i]; // sum = sum + arr[i]
}
}
cout << "Summa polozhitelnih: " << sum << endl;
return 0;
}
Более оптимальный способ:
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int arr[10], sum = 0; // Создаём массив и переменную, в которой будет сумма
for (int i = 0; i < 10; i++) {
int r = rand() %11 - 5; // Генерация случайного числа в промежутке от [-5; 5]
arr[i] = r; // Присваем значение перменной
cout << arr[i] << " "; // Вывод массива.
if (i == 9) { cout << endl;}
if (arr[i] > 0) {
sum += arr[i]; // sum = sum + arr[i]
}
}
cout << "Summa polozhitelnih: " << sum << endl;
return 0;
}



Конечно, вот пример программы на C++, которая выполняет указанные действия:
cpp#include <iostream>
#include <cstdlib>
#include <ctime>
int main() {
// Установим seed для генератора случайных чисел на основе текущего времени
std::srand(static_cast<unsigned int>(std::time(nullptr)));
const int arraySize = 10;
int array[arraySize];
int sumOfPositives = 0;
// Заполнение массива случайными числами от -5 до 5 и подсчёт суммы положительных элементов
for (int i = 0; i < arraySize; ++i) {
array[i] = std::rand() % 11 - 5; // Генерируем случайное число от -5 до 5
if (array[i] > 0) {
sumOfPositives += array[i];
}
}
// Вывод сгенерированного массива
std::cout << "Сгенерированный массив: ";
for (int i = 0; i < arraySize; ++i) {
std::cout << array[i] << " ";
}
std::cout << std::endl;
// Вывод суммы положительных элементов
std::cout << "Сумма положительных элементов: " << sumOfPositives << std::endl;
return 0;
}
Эта программа использует библиотеку <cstdlib>
для работы с генерацией случайных чисел и функцию std::time(nullptr)
для установки начального значения генератора случайных чисел. Затем она заполняет массив случайными числами в указанном диапазоне, подсчитывает сумму положительных элементов и выводит как сам массив, так и сумму положительных элементов.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili