//Timothy Price CS1A CH5 Challenge 1
/*******************************************************************************
* Calculate total
*
* This program receives a number and calculates the total of all previous
* numbers up to the selected number.
*
* Inputs:
* Positive number
*
* Output:
* Sum of numbers
******************************************************************************/
#include <iostream>
using namespace std;
int main() {
// Data dictionary:
int number; // The number must be positive
int sum = 0;
// Program asks for a positive value, and gives choice feedback:
cout << "Enter a positive integer value: " << endl;;
cin >> number;
cout << "You have entered the number " << number << "." << endl;
// Rejection for invalid input:
if (number <= 0) {
cout << "Invalid input. Please enter a positive integer: " << endl;
}
// For valid input:
if (number > 0) { // Loop crated to calculate sum of all numbers:
for (int base = 1; base <= number; ++base) {
sum += base;
}
// Display sum:
cout << "The sum of all numbers between 1 and " << number << " is ";
cout << sum << "." << endl;
}
return 0;
}
Ly9UaW1vdGh5IFByaWNlCQkJQ1MxQQkJCUNINSBDaGFsbGVuZ2UgMQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogKiBDYWxjdWxhdGUgdG90YWwKICogCiAqIFRoaXMgcHJvZ3JhbSByZWNlaXZlcyBhIG51bWJlciBhbmQgY2FsY3VsYXRlcyB0aGUgdG90YWwgb2YgYWxsIHByZXZpb3VzCiAqIG51bWJlcnMgdXAgdG8gdGhlIHNlbGVjdGVkIG51bWJlci4KICogCiAqIElucHV0czoKICogUG9zaXRpdmUgbnVtYmVyCiAqIAogKiBPdXRwdXQ6CiAqIFN1bSBvZiBudW1iZXJzCiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAKI2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewoJCgkvLyBEYXRhIGRpY3Rpb25hcnk6CiAgICBpbnQgbnVtYmVyOwkJLy8gVGhlIG51bWJlciBtdXN0IGJlIHBvc2l0aXZlCiAgICBpbnQgc3VtID0gMDsKCgkvLyBQcm9ncmFtIGFza3MgZm9yIGEgcG9zaXRpdmUgdmFsdWUsIGFuZCBnaXZlcyBjaG9pY2UgZmVlZGJhY2s6CiAgICBjb3V0IDw8ICJFbnRlciBhIHBvc2l0aXZlIGludGVnZXIgdmFsdWU6ICIgPDwgZW5kbDs7CiAgICBjaW4gPj4gbnVtYmVyOwogICAgY291dCA8PCAiWW91IGhhdmUgZW50ZXJlZCB0aGUgbnVtYmVyICIgPDwgbnVtYmVyIDw8ICIuIiA8PCBlbmRsOwoKCS8vIFJlamVjdGlvbiBmb3IgaW52YWxpZCBpbnB1dDoKICAgIGlmIChudW1iZXIgPD0gMCkgewogICAgICAgIGNvdXQgPDwgIkludmFsaWQgaW5wdXQuIFBsZWFzZSBlbnRlciBhIHBvc2l0aXZlIGludGVnZXI6ICIgPDwgZW5kbDsKICAgIH0KICAgIC8vIEZvciB2YWxpZCBpbnB1dDoKICAgIGlmIChudW1iZXIgPiAwKSB7CQkvLyBMb29wIGNyYXRlZCB0byBjYWxjdWxhdGUgc3VtIG9mIGFsbCBudW1iZXJzOgoJCWZvciAoaW50IGJhc2UgPSAxOyBiYXNlIDw9IG51bWJlcjsgKytiYXNlKSB7CgkJCXN1bSArPSBiYXNlOwoJCX0KCQkvLyBEaXNwbGF5IHN1bToKCQljb3V0IDw8ICJUaGUgc3VtIG9mIGFsbCBudW1iZXJzIGJldHdlZW4gMSBhbmQgIiA8PCBudW1iZXIgPDwgIiBpcyAiOwoJCWNvdXQgPDwgc3VtIDw8ICIuIiA8PCBlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0=