Введение
В этом практическом занятии мы научимся писать программу на C++, которая находит сумму ряда 1 + 2 + 4 + 8 + 16 + 32 +... + n. Мы будем использовать два различных подхода. Первый подход использует цикл for для сложения значений в последовательности, а второй подход использует математическую формулу для вычисления суммы.
Создать новый файл
Сначала откройте терминал и перейдите в каталог ~/project. В этом каталоге создайте новый файл с именем main.cpp. Мы можем сделать это с помощью следующей команды:
touch ~/project/main.cpp
Далее откройте файл в своем любимом текстовом редакторе.
Использование цикла for
В этом подходе мы используем цикл for для перебора последовательности и сложения чисел от 1 до n. Сумму будем хранить в переменной под названием sum.
Добавьте следующий код в файл main.cpp:
#include <iostream>
int main() {
int n, sum = 0;
std::cout << "Enter the value of n: ";
std::cin >> n;
for(int i = 1; i <= n; ++i) {
sum += i;
}
std::cout << "The sum of the sequence is: " << sum << std::endl;
return 0;
}
Здесь мы используем функцию std::cout для отображения сообщения, которое просит пользователя ввести значение n. Затем мы используем функцию std::cin для чтения значения n, введенного пользователем. Перед началом цикла for мы инициализируем sum значением 0.
Цикл for перебирает значения i от 1 до n, добавляя каждое значение к sum. Наконец, мы выводим сумму с использованием std::cout.
Прежде чем запустить программу, нам нужно скомпилировать ее. В терминале перейдите в каталог ~/project и запустите следующую команду:
g++ main.cpp -o main &&./main
Это скомпилирует и запустит программу. Вы должны увидеть сообщение, которое просит вас ввести значение n. После ввода значения программа выведет сумму последовательности.
Использование математической формулы
В этом подходе мы используем математическую формулу для вычисления суммы последовательности. Формула выглядит так: sum = 2^n - 1, где n - количество членов последовательности.
Добавьте следующий код в файл main.cpp:
#include <iostream>
#include <cmath>
int main() {
int n;
std::cout << "Enter the value of n: ";
std::cin >> n;
int sum = pow(2, n) - 1;
std::cout << "The sum of the sequence is: " << sum << std::endl;
return 0;
}
Здесь мы используем функцию std::pow для вычисления 2^n. Затем мы вычитаем 1 из этого значения, чтобы получить сумму последовательности. Наконец, мы выводим сумму с использованием std::cout.
Прежде чем запустить программу, нам нужно скомпилировать ее. В терминале перейдите в каталог ~/project и запустите следующую команду:
g++ main.cpp -o main &&./main
Это скомпилирует и запустит программу. Вы должны увидеть сообщение, которое просит вас ввести значение n. После ввода значения программа выведет сумму последовательности.
Полный код
Вот полный код для main.cpp:
#include <iostream>
#include <cmath>
int main() {
int n;
std::cout << "Enter the value of n: ";
std::cin >> n;
int sum = pow(2, n) - 1;
std::cout << "The sum of the sequence is: " << sum << std::endl;
return 0;
}
#include <iostream>
int main() {
int n, sum = 0;
std::cout << "Enter the value of n: ";
std::cin >> n;
for(int i = 1; i <= n; ++i) {
sum += i;
}
std::cout << "The sum of the sequence is: " << sum << std::endl;
return 0;
}
Резюме
В этом практическом занятии мы научились писать программу на C++ для нахождения суммы ряда 1 + 2 + 4 + 8 + 16 + 32 +... + n. Мы использовали два различных подхода - один с использованием цикла for, а другой с использованием математической формулы. Вы можете использовать любой из этих методов для нахождения суммы любой арифметической последовательности.



