C/C++

C++ Дано натуральное число N. Вычислить

#include <iostream>
#include <iomanip>
using namespace std;
unsigned integer(const char* msg) {
cout << msg;
unsigned value;
cin >> value;
cin.ignore(cin.rdbuf()->in_avail());
return value;
}
double sin_sum(unsigned n) {
static auto sum = 0.0;
if (!n) {
auto res = sum;
sum = 0.0;
return res;
}
sum += sin(n);
return sin_sum(n - 1);
}
double cos_sum(unsigned n) {
static auto sum = 0.0;
if (!n) {
auto res = sum;
sum = 0.0;
return res;
}
sum += cos(n);
return cos_sum(n - 1);
}
double multiplys(unsigned n) {
static auto mul = 1.0;
if (!n) {
auto res = mul;
mul = 0.0;
return res;
}
mul *= cos_sum(n) / sin_sum(n);
return multiplys(n - 1);
}
void show(const char* msg, double value, streamsize prec = 15U) {
cout << msg << fixed << setprecision(prec) << value << '\n';
}
int main() {
auto n = integer("N: ");
auto m = multiplys(n);
show("Sum: ", m);
system("pause > nul");
}
Дмитро Ризюк
Дмитро Ризюк
95 596
Лучший ответ
#include <iostream>
#include <cmath>
using namespace std;
int main() { double c = 0, s = 0, p = 1; int i, N;
cout << "N » "; cin >> N; for (int i = 1; i <= N; i++)
{ c += cos(i); s += sin(i); p *= c / s; } cout << p << endl; system("pause > nul"); return 0; }
Константин Галюк как быстро, молодец
Константин Лукьянцев ʘ‿ʘ На кой тут i объявлен два раза int?

Похожие вопросы