Исправьте ошибку: Ввести вещественное число x и натуральное n - C (СИ)
Формулировка задачи:
Ввести вещественное число x и натуральное n. Вычислить:
Все что я смог написать, но это явно неверно
#include<stdio.h> #include<math.h> int main() { int n,i; float x; double p=1; printf("Vvedi 4iclo x: "); scanf("%f",&x); printf("Vvedi 4iclo n: "); scanf("%d",&n); for(i=1;i<=n;i++) { p*=(1+1/x)*(1+1/i*x); } printf("p=%lf",p); }
Решение задачи: «Исправьте ошибку: Ввести вещественное число x и натуральное n»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int main(void) { int n, i; double p = 1, x; printf("Vvedi 4iclo x: "); scanf("%lf", &x); printf("Vvedi 4iclo n: "); scanf("%d", &n); for (i = 1; i <= n; i++) { p *= 1.0 + (1.0 / ((double)i * x)); } printf("p=%lf", p); system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявлены переменные:
n
- целочисленная переменная типаint
, используется для хранения значения количества итераций;i
- целочисленная переменная типаint
, используется как счётчик в цикле;p
- вещественная переменная типаdouble
, используется для хранения результата;x
- вещественная переменная типаdouble
, используется для хранения значения, введённого пользователем.
- Введен цикл, который выполняется
n
раз. - Внутри цикла значение переменной
p
умножается на значение выражения1.0 + (1.0 / ((double)i * x))
. - После окончания цикла выводится значение переменной
p
. - Вызов
system(
pause)
приостанавливает выполнение программы до нажатия клавиши. - В конце программы возвращается 0, что означает успешное завершение работы программы.