Вычислить сумму 1/sin1+1/(sin1+sin2)+…1/(sin1+…+sinn), где n — заданное натуральное число.
Не сложная задача, решение которой неоднозначно, можно использовать различные операторы и структуры кода. конечно же без цикла тут не обойтись. Результат работы программы показан ниже:
// sum_sin.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include <iostream> #include <cmath> using namespace std; double sumSin(int); //прототип функции суммирования синусов по формуле int main(int argc, char* argv[]) { int n; // энный член выражения double sum = 0; // сумма setlocale(LC_ALL, "rus"); cout << "Введите n: "; cin >> n; for (int counter = 1; counter <= n; counter++) { sum += 1 / sumSin(counter); // вычисляем сумму согласно выражению } cout << "Сумма = " << sum << endl; system("pause"); return 0; } double sumSin(int n) // функция суммирования синусов согласно формуле { double p = M_PI; double temp_sum = 0; // временная переменная для хранения суммы for (int counter = 1; counter <= n; counter++) temp_sum += sin((double)counter*p/180); // накапливаем сумму синусов return temp_sum; }
Пример работы программы:
CppStudio.com
Введите n: 10 Сумма = 104.203
Комментарии
odto11
colt
gro
Migizi
#include <conio.h>
#include <iostream>
#include <istream>
#define _USE_MATH_DEFINES
#include <math.h>
using namespace std;
int main(void)
{
setlocale(LC_ALL, «Russian»);
int y;
cin >> y;
double x = 0;
double u = 0;
for (int i = 1; i <= y; i++)
{
u = 0;
for (int j = 1; j <= i; j++)
{
u += sin(j*M_PI / 180);
}
x += 1/u;
}
cout << x;
_getch();
return 0;
}