Как добавить числа с++
Нужно сгенерировать числа, и вывести те, которые больше 0 и меньше 1, с этим проблем нет, но их ещё нужно добавить (т.е допустим вывело 0.5 и 0.9, нужно найти их суму), а это я не понимаю как реализовать, вот сам код (И ещё нужно как-то сделать, чтобы пользователь сам вводил кол-во генерируемых чисел, пока это 50, но я тоже не понимаю как это реализовать)
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main() {
srand(time(0));
const int size = 50;
double array[size];
for (int i = 0; i < size; ++i)
array[i] = (rand() % 380 - 190) / 10.0;
for (int i = 0; i < size; ++i)
cout << array[i] << " ";
cout << endl;
for (int i = 0; i < size; i++) {
if (array[i] >= 0 && array[i] < 1) {
cout << endl;
cout << "Numbers between 0 and 1 --> " << array[i];
cout << endl;
//cout << "Sum --> " << array[i] + array[i];
//cout << endl;
}
}
cin.get();
return 0;
}
Ответы (2 шт):
И ещё нужно как-то сделать, чтобы пользователь сам вводил кол-во генерируемых чисел, пока это 50, но я тоже не понимаю как это реализовать
выводите текст через std::cout <<
получаете от пользователя ввод через std::cin >>
вам разве этого не давали на занятиях?
массив в этом случае придётся делать динамическим - выделять под него память
вместо:
double array[size];
надо будет сделать:
double *array = new double[size];
но их ещё нужно добавить (т.е допустим вывело 0.5 и 0.9, нужно найти их суму),
если я правильно понял русский, то требуется сделать
double sum = 0;
for (int i = 0; i < size; i++) {
if (array[i] >= 0.5 && array[i] < 0.9) {
sum += array[i];
}
}
P.S.
почему такие вопросы чаще всего в воскресенье возникают?
Массив тут вообще не нужен. А когда пишете код, сначала напишите саму логику, а потом добавьте все выводы, которые захотите (эти сообщения на консоль далеко не самая важная часть кода). Код без сообщений может выглядеть:
int size;
double sum = 0, el;
cin >> size;
for (int i = 0; i < size; ++i) {
cin >> el;
if (el > 0 && el < 1)
sum += el;
}
cout << el;