Вычислить сумму ряда - QBasic (27674)
Формулировка задачи:
Вычислить сумму ряда в системе QBasic, используя зависимость последующего члена от предыдущего (а не общую формулу слагаемого), с точностью е = 0,001 и сравнить полученный результат с точным значением, определяемым по формуле для левой части выражения. Значение аргумента х может быть любым из заданного диапазона.
Вычислить сумму ряда в системе MathCad, используя общую формулу слагаемого и сравнить полученный результат с точным значением, определяемым по формуле для левой части выражения. Значение аргумента х может быть любым из заданного диапазона.
Результаты сравнить.
0,1 < х < 1.
Решение задачи: «Вычислить сумму ряда»
textual
Листинг программы
DEFSNG E, S, X DEFLNG N CLS INPUT "введите х"; x e=.001 s=0 n=0 r=x DO n=n+1 s=s+r r=-r*n/(n+1)*x LOOP UNTIL ABS(r)<e PRINT "ln(1+x)=";s END
Объяснение кода листинга программы
DEFSNG E, S, X- Здесь определяются три константы E, S и X. Значение переменной E не используется в коде, поэтому мы не знаем, что это за константа.DEFLNG N- Здесь определяется константа N. Значение этой переменной также не используется в коде, поэтому мы не знаем, что это за константа.CLS- Очистка экрана перед началом выполнения программы.INPUTвведите х; x- Ввод значения переменной x с клавиатуры. Значение будет использоваться в расчетах.e=.001- Здесь определяется значение переменной e. Это число используется для контроля за окончанием цикла.s=0- Инициализация переменной s. Эта переменная будет использоваться для накопления суммы ряда.n=0- Инициализация переменной n. Эта переменная используется для контроля за циклом.r=x- Инициализация переменной r. Эта переменная будет использоваться для хранения значения выражения, которое мы пытаемся приблизить.DO- Начало цикла. Цикл будет выполняться до тех пор, пока абсолютное значение переменной r не станет меньше, чем e.n=n+1- Увеличение значения переменной n на единицу.s=s+r- Прибавление значения переменной r к переменной s.r=-r*n/(n+1)*x- Обновление значения переменной r. Здесь используется формула для вычисления приближенного значения функции ln(1+x).LOOP- Конец цикла.PRINTln(1+x)=;s- Вывод значения переменной s на экран. Это приближенное значение функции ln(1+x).END- Конец программы.