У меня возникли проблемы с проблемой из моей книги на C++. Он не должен был делать, но я хочу, чтобы заставить его работать:C++ add 1 + 2 + 3 + ... + N
Сумма чисел
Написать программу, которая запрашивает пользователь для положительного целого числа, и использует цикл для подтвердите ввод. * Затем программа должна использовать второй цикл для вычисления суммы всех целых чисел от 1 до введенного числа. Например, если пользователь вводит 50, петля найдет сумму 1, 2, 3, 4, ... 50.
* Я не прошу этот первый цикл, только второй. Но если вы чувствуете, что кодирование, оно идет вперед.
Это довольно просто, чтобы написать программу, которая уменьшает число до тех пор, пока не достигнет один:
#include <iostream>
using namespace std;
int main()
{
int number;
cout << "Enter a number: ";
cin >> number;
while(number >= 1)
{
cout << number << " ";
number--;
}
system("pause"); //I usually go with cin.get() but my current
//compiler doesn't handle it
return 0;
}
Но если добавить «номер - 1» в число, число становится больше, и теперь число - 1 будет увеличиваться от этого. Например, 7 + 6 = 13, 13 + 12 = 25, 25 + 24 = 49 и т.д. Вот программа, которую я пытаюсь приспособиться, чтобы сделать работу:
#include <iostream>
using namespace std;
int main()
{
int number;
cout << "Enter a number: ";
cin >> number;
for(count = 1; count <= number; count++)
{
number += number - 1;
}
cout << "The sum is" << number << endl;
system("pause"); //
return 0;
}
Это бесконечный цикл, к сожалению.
Любые идеи о том, как адаптировать эту программу, чтобы она удовлетворяла вопрос? Или ссылки на исходный код, который уже сделал это раньше, и т.д.
EDIT:
Так что это может быть другой вопрос полностью, но мой код не компиляции:
#include <iostream>
using namespace std;
int main()
{
int number, sum = 0;
cout << "Enter a number: ";
cin >> number;
for(count = 1; count <= number; count++)
{
number--;
sum += number;
}
cout << "The sum is" << sum << endl;
system("pause"); //
return 0;
}
EDIT 2: Я только что избавился от цикла for и изменил его на «while (number> = 1) "
Мне не нравятся пустые голоса, поэтому, пожалуйста, попросите меня сначала добавить или изменить что-либо. Спасибо –
Вам нужна дополнительная переменная для суммы и декремента, как и раньше. –
Я пробовал это на самом деле, но мне не повезло –