Найти ошибку в коде вычисления последовательности - C (СИ)
Формулировка задачи:
#include <stdio.h> #include <conio.h> #include <math.h> void Factorial(int number); main(); { double x,e,an,am; int n; printf ("vizislenie X1 posledovatelnosti,\n"); printf ("dla kotorogo vipolneno uslovie\n"); printf ("vvedite pervii chlen\n"); scanf("%lf",&x); printf ("vvedite toznost\n"); scanf("%lf",&e); printf ("chleni posledovatelnosti\n"); an=x;n=0; do {n++; am=an;number=(n+1) if (number > 1) return number*Factorial(number -1); return 1; an=( 1 + ( pow(-1.0, n)) / number); printf ("%lf\n",an); } while (fabs(an-am)>=e); printf ("vizislenie X1 posledovatelnosti,\n"); printf ("dla kotorogo vipolneno uslovie:%lf",an); getch(); }
Решение задачи: «Найти ошибку в коде вычисления последовательности»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #include <math.h> main(); { double x,e,an,am; int n; printf ("vizislenie X1 posledovatelnosti,\n"); printf ("dla kotorogo vipolneno uslovie\n"); printf ("vvedite pervii chlen\n"); scanf("%lf",&x); printf ("vvedite toznost\n"); scanf("%lf",&e); printf ("chleni posledovatelnosti\n"); an=x;n=0; do {n++; am=an; void Factorial(int number); number=(n+1); { if (number> 1) Factorial(number - 1); printf("%d", number); } an=( 1 + ( pow(-1.0, n)) / number); printf ("%lf\n",an); } while (fabs(an-am)>=e); printf ("vizislenie X1 posledovatelnosti,\n"); printf ("dla kotorogo vipolneno uslovie:%lf",an); getch(); return 0; }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы
- Определяется функция main()
- Объявляются переменные: x, e, an, am (double и int)
- Выводится первое предложение с просьбой ввести первый член последовательности
- Пользователь вводит первый член последовательности и сохраняет его в переменной x
- Выводится второе предложение с просьбой ввести точность и сохраняется в переменной e
- Выводится третье предложение с просьбой ввести члены последовательности
- Переменная an инициализируется значением первого члена последовательности, а переменная n инициализируется нулем
- Запускается цикл do, который будет выполняться до тех пор, пока fabs(an-am)>=e
- Внутри цикла an=( 1 + ( pow(-1.0, n)) / number); вычисляется следующий член последовательности
- Выводится значение an
- Если число n больше 1, то вызывается функция Factorial(n-1) для вычисления факториала (n-1)
- Выводится число n
- После выхода из цикла do, выводится сообщение о том, что последовательность вычислена
- Выводится последнее предложение с сообщением, что условие выполнено и вычисленный член последовательности равен an
- Запускается функция getch() для приостановки выполнения программы до тех пор, пока пользователь не нажмет клавишу
- Возвращается 0, что означает успешное выполнение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д