Составить на Паскале программу для вычисления суммы ряда (см. рисунок).Число Nвводится с клавиатуры.

В этом уроке мы расскажем как вычислить сумму бесконечного сходящегося ряда (последовательности) с определенной точностью. Будет рассмотрена соответствующая программа, написанная на языке программирования Си. В конце статьи можно скачать исходник этой программы для Visual Studio.

Сходящийся ряд – это числовая последовательность элементов множества X, имеющая предел в этом множестве.

image

Сходящийся ряд

Рассмотрим задачу вычисления суммы сходящегося ряда с определенной точностью на примере. Пусть дан ряд:

image

Вычисление суммы ряда с определенной точностью ε означает, что сумма ряда вычисляется до тех пор, пока модуль разности между текущим и предыдущим членом последовательности больше ε. В виде формулы это утверждение можно записать так:    |an – an-1| > ε, то есть пока это выражение истинно, вычисления продолжаются.

Сначала напишем на языке Си функцию, которая будет вычислять и возвращать значение k-го члена ряда по переданному в нее значению k.

res – это переменная вещественного типа повышенной точности double, в которую будет записан результат вычисления k-го члена ряда. Это же значение и будет возвращаться функцией.

Выражение res *= (double)powf(-0.5, k); эквивалентно выражению res = res * (double)powf(-0.5, k);

Оператор powf – это оператор возведения числа в степень. В нашем случае он вычисляет: -0.5k.

Функцию f можно записать короче:

Теперь перейдем к функции main. Для начала считаем с консоли число e – это и будет заданная точность вычислений ε.

Объявим переменные, в которых будут хранится: значение предыдущего, значение текущего члена ряда, сумма ряда и номер текущего члена ряда (число k) соответственно.

Отдельно вычислим первый член ряда (потом он станет “предыдущим”), чтобы затем перейти к вычислениям в цикле.

Запись выражения sum += current; эквивалентна записи: sum = sum + current;

Теперь перейдем к вычислениям в цикле. Условием выхода из цикла будет ложность выражения: |an – an-1| > ε.

Сумма посчитана. Осталось вывести результат вычислений в консоль.

В итоге код программы с необходимыми подключенными библиотеками будет выглядеть следующим образом:

Оператор _getch(); в строке 34 нужен для того, чтобы консоль не закрывалась сразу по завершении исполнения программы.

Демонстрация работы программы для нашего ряда представлена на скриншоте ниже. Точность вычислений составляет: ε = 0.01.

Поделиться в соц. сетях:

Скачиваний: 7611 Добавлен: 20.02.2016 Размер: 17.53 Mб Скачать ☆

86

Часть I

scanf(«%i», &n); summ = 0;

for (i = 1; i <= n; i++) summ = summ+i;</p>

printf(«Сумма первых %i целых положительных чисел «,n); printf(«равна %i», summ);

printf(«nnДля завершения нажмите «); getch();

}

121. Написать программу, которая вычисляет сумму первых n целых положительных четных чисел. Количество суммируемых чисел должно вводиться во время работы программы. Ниже приведен рекомендуемый вид экрана программы (данные, введенные пользователем, выделены полужирным).

Вычисление суммы четных положительных чисел

Введите количество суммируемых чисел и нажмите -> 12

Сумма первых 12 положительных четных чисел равна 156

122. Написать программу, которая вычисляет сумму первых n членов ряда: 1, 3, 5, 7 … Количество суммируемых членов ряда задается во время работы программы. Ниже приведен рекомендуемый вид экрана программы (данные, введенные пользователем, выделены полужирным).

Вычисление частичной суммы ряда: 1,3,5,7, …

Введите количество суммируемых членов ряда —>15Сумма первых 15 членов ряда равна 330

Задача 122

// Вычисляет частичную сумму ряда: 1,3,6,9 …

#include #include void main()

{

int e;

// член ряда

Примеры и задачи

87

int n;

//

кол-во суммируемых членов

int summ = 0; //

частичная сумма ряда

int i;

//

счетчик циклов

printf(«Вычисление частичной суммы ряда: 1,3,6,9, …n»); printf(«Введите количество суммируемых членов -> «); scanf(«%i», &n);

e = 1;

for (i = 1; i <= n; i++)</p>

{

summ += e; e += 2;

}

printf(«Сумма первых %i членов ряда равна %i», n, summ);

printf(«nДля завершения нажмите «); getch();

}

123. Написать программу, которая вычисляет сумму первых n

членов ряда: 1+

1

+

1

+

1

+… Количество суммируемых членов

2

3

4

ряда задается во время работы программы. Ниже приведен рекомендуемый вид экрана программы (данные, введенные пользователем, выделены полужирным).

Вычисление частичной суммы ряда: 1+1/2+1/3+ …

Введите кол-во суммируемых членов ряда ->15Сумма первых 15 членов ряда равна 3.3182

Задача 123

// Вычисление суммы ряда 1+1/2+1/3+ …

#include #include void main()

{

88

Часть I

int n;

//

кол-во суммируемых членов ряда

float i;

//

номер элемента ряда; если объявить как int,

//

то при вычислении 1/i будет выполнено

//

усечение дробной части

float elem;

// значение элемента ряда

float summ = 0

; // сумма элементов ряда

printf(«Вычисление частичной суммы ряда 1+1/2+1/3+…n»); printf(«Введите кол-во суммируемых членов рядаn»); printf(«-> «);

scanf(«%i»,&n); summ = 0;

for (i = 1; i <= n; i++) { elem = 1 / i;</p>

summ += elem;

}

printf(«Сумма первых %i», n);

printf(» членов ряда равна %6.3f»,summ);

printf(«nДля завершения нажмите «); getch();

}

124. Написать программу, которая выводит таблицу степеней двойки, от нулевой до десятой. Ниже приведен рекомендуемый вид экрана программы.

Таблица степеней двойки

1

12

24

38

416

532

664

7128

8256

9512

101024

Примеры и задачи

89

Задача 124

// Таблица степеней двойки

#include #include void main()

{

int n; // показатель степени int x; // значение 2 в степени n

printf(«nТаблица степеней двойкиn»); x = 1;

for (n = 0; n <= 10; n++)</p>

{

printf(«%3i%5in», n, x); x *= 2;

}

printf(«nДля завершения нажмите «); getch();

}

125. Написать программу, которая вычисляет факториал введенного с клавиатуры числа. (Факториалом числа n называется произведение целых чисел от 1 до n. Например, факториал 1 равен 1, факториал 8 — 40 320).

Вычисление факториала Введите число, факториал которого надо вычислить

-> 7

Факториал 7 равен 5040

126. Написать программу, которая вводит с клавиатуры пять дробных чисел и вычисляет их среднее арифметическое. Рекомендуемый вид экрана программы приведен ниже. Данные, введенные пользователем, выделены полужирным.

->5.4 ->7.8

90

Часть I

->3.0 ->1.5 ->2.3

Среднее арифметическое введенной последовательности: 4.00

127. Написать программу, которая вычисляет среднее арифметическое вводимой с клавиатуры последовательности дробных чисел. Количество чисел должно задаваться во время работы программы. Рекомендуемый вид экрана программы приведен ниже.

Вычисление среднего арифметического последовательности дробных чисел.

Введите количество чисел последовательности -> 5 Вводите последовательность. После ввода каждого числа нажимайте

-> 5.4 -> 7.8 -> 3.0 -> 1.5 -> 2.3

128. Написать программу, которая вводит с клавиатуры последовательность из пяти дробных чисел и после ввода каждого числа выводит среднее арифметическое введенной части последовательности. Рекомендуемый вид экрана программы приведен ниже.

Обработка последовательности дробных чисел После ввода каждого числа нажимайте -> 12.3

Введено чисел: 1 Сумма: 12.30 Сред. арифм.: 12.30 -> 15

Введено чисел: 2 Сумма: 27.30 Сред. арифм.: 13.65 -> 10

Введено чисел: 3 Сумма: 37.30 Сред. арифм.: 12.43 -> 5.6

Введено чисел: 4 Сумма: 42.90 Сред. арифм.: 10.73 -> 11.5

Введено чисел: 5 Сумма: 54.40 Сред. арифм.: 10.88

Задача 128

// Среднее арифметическое дробных чисел, вводимых с клавиатуры

#include

Примеры и задачи

91

#include

#define L 5 // количество чисел последовательности

void main()

{

float a;

// число

int n;

// кол-во введенных чисел

float sum;

// сумма введенных чисел

float sred;

// среднее арифметическое введенных чисел

printf(«nОбработка последовательности дробных чиселn»); printf(«После ввода каждого числа нажимайте «); sum = 0;

for (n = 1; n <= L; n++)</p>

{

printf(«-> «); scanf(«%f», &a); sum += a;

printf(«Введено чисел: %i «, n); printf(«Сумма: %6.2fn», sum);

}

sred = sum / L;

printf(«Сред. арифметическое: %6.2fn», sred); printf(«nДля завершения нажмите «); getch();

}

129. Написать программу, которая вычисляет среднее арифметическое последовательности дробных чисел, вводимых с клавиатуры. После ввода последнего числа, программа должна вывести минимальное и максимальное числа последовательности. Количество чисел последовательности должно задаваться во время работы программы. Рекомендуемый вид экрана

92 Часть I

приведен ниже. Данные, введенные пользователем, выделены полужирным.

Обработка последовательности дробных чисел. Введите количество чисел последовательности -> 5

Вводите последовательность. После ввода каждого числа нажимайте

-> 5.4 -> 7.8 -> 3.0 -> 1.5 -> 2.3

Количество чисел: 5 Среднее арифметическое: 4.00 Минимальное число: 1.5 Максимальное число: 7.8

Задача 129

//Вычисляет среднее арифметическое и определяет

//минимальное и максимальное число последовательности

//дробных чисел, вводимых с клавиатуры

#include #include void main()

{

float a;

// очередное число

int n;

// количество чисел

float sum;

// сумма введенных чисел

float sred;

// среднее арифметическое

float min;

// минимальное число последовательности

float max;

// максимальное число последовательности

int i;

// счетчик циклов

printf(«Обработка последовательности дробных чисел.n»); printf(«Введите количество чисел последовательности ->»); scanf(«%i», &n);

printf(«Вводите последовательность.n»); printf(«После ввода каждого числа нажимайте «); printf(«->»);

Примеры и задачи

93

scanf(«%f»,&a); // вводим первое число последовательности // предположим, что:

min = a; // пусть первое число является минимальным max = a; // пусть первое число является максимальным sum = a;

// введем остальные числа for (i = 1; i < n; i++)

{

printf(«->»); scanf(«%f», &a); sum += a;

if (a < min) min = a; if (a > max) max = a;

}

sred = sum / n;

printf(«Количество чисел: %in», n); printf(«Среднее арифметическое: %6.2fn», sred); printf(«Минимальное число: %6.2fn», min); printf(«Максимальное число: %6.2fn», max);

printf(«nДля завершения нажмите «); getch();

}

130. Написать программу, которая генерирует последовательность из 10 случайных чисел (в диапазоне от 1 до 10), выводит эти числа на экран и вычисляет их среднее арифметическое. Рекомендуемый вид экрана программы приведен ниже.

Случайные числа

1

3

4

2

7

4

9

6

2

1

Сред. арифм.: 3.90

94

Часть I

131. Написать программу, которая генерирует три последовательности из десяти случайных чисел (в диапазоне от 1 до 10). Для каждой последовательности программа должна вычислить среднее арифметическое. Рекомендуемый вид экрана программы приведен ниже.

Случайные числа

сред. арифм.: 5.30

6

10

4

2

5

8

1

7

7

3

10

3

6

1

10

1

3

8

7

6

сред. арифм.: 5.50

5

2

2

5

4

2

2

1

6

10

сред. арифм.: 3.90

Для

Задача 131

//Вычисление среднего арифметического случайных

//последовательностей

#include #include

#include // для доступа к srand и rand #include

#define L 10 // длина последовательности #define N 3 // количество последовательностей

void main()

{

int r;

// случайное число

int sum;

// summa чисел последовательности

float sred;

// среднее арифметическое

int i,j;

// счетчики циклов

time_t t;

// текущее время — для инициализации

// генератора случайных чисел

srand((unsigned) time(&t));; // инициализация генератора // случайных чисел

for (i = 1; i <= N; i++)</p>

{

// генерируем последовательность printf(«nСлучайные числа: «);

Примеры и задачи

95

sum = 0; // не забыть обнулить ! for (j = 1; j <= L; j++)</p>

{

r = rand() % 10 +1 ; printf(«%i «, r); sum += r;

}

sred = (float)sum / L; // чтобы не было усечения printf(«nСред.арифм.: %3.2fn», sred);

}

printf(«nДля завершения нажмите «); getch();

}

132. Написать программу, которая выводит на экран таблицу стоимости, например, яблок в диапазоне от 100 г до 1 кг с шагом 100 г. Ниже приведен рекомендуемый вид экрана программы (данные, введенные пользователем, выделены полужирным).

Введите цену одного килограмма и нажмите (копейки от рублей отделяйте точкой)

->16.50

Вес, гр. Стоимость, руб.

100

1.65

200

3.30

300

4.95

400

6.60

500

8.25

600

9.90

700

11.55

800

13.20

900

14.85

1000

16.50

133. Написать программу, которая выводит таблицу значений функции y = | x |. Диапазон изменения аргумента от –4 до 4, шаг приращения аргумента 0,5.

Последовательность — высокоупорядоченный числовой набор, образованный по заданному закону. Термин «ряд» обозначает результат сложения членов соответствующей ему последовательности. Для различных числовых последовательностей мы можем найти сумму всех ее членов или общее число элементов до заданного предела.

Последовательность

Под этим термином понимается заданный набор элементов числового пространства. Каждый математический объект задается определенной формулой для определения общего элемента последовательности, а для большинства конечных числовых наборов существуют простые формулы определения их суммы. Наша программа представляет собой сборник из 8 онлайн-калькуляторов, созданных для вычисления сумм наиболее популярных числовых наборов. Начнем с самого простого — натурального ряда, которым мы пользуемся в повседневной жизни для пересчета предметов.

Натуральная последовательность

Когда школьники изучают числа, они первым делом учатся считать предметы, например, яблоки. Натуральные числа естественным образом возникают при счете предметов, и каждый ребенок знает, что 2 яблока — это всегда 2 яблока, не больше и не меньше. Натуральный ряд задается простым законом, который выглядит как n. Формула гласит, что n-ный член числового набора равен n: первый — 1, второй — 2, четыреста пятьдесят первый — 451 и так далее. Результат суммирования n первых натуральных чисел, то есть начинающихся от 1, определяется по простой формуле:

∑ = 0,5 n × (n+1).

Благодаря этому выражению легко рассчитать конечную сумму натурального ряда от 1 до n. Очевидно, что натуральная последовательность стремится в бесконечность, поэтому, чем больше n, тем больше конечный результат.

Расчет суммы натурального ряда

Для вычислений вам потребуется выбрать в меню калькулятора формулу натурального ряда n и ввести количество членов последовательности. Давайте вычислим сумму натурального ряда от 1 до 15. Указав n = 15, вы получите результат в виде самой последовательности:

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15

и суммы натурального ряда, равной 120.

Легко проверить корректность вычислений при помощи выше приведенной формулы. Для нашего примера результат сложения будет равен 0,5 × 15 × 16 = 0,5 × 240 = 120. Все верно.

Последовательность квадратов

Квадратичная последовательность образуется из натуральной, путем возведения каждого члена в квадрат. Ряд квадратов формируется по закону n2, следовательно, n-ный член последовательности будет равняться n2: первый — 1, второй — 22 = 4, третий — 32 = 9 и так далее. Результат суммирования начальных n элементов квадратичной последовательности вычисляется по закону:

∑ = (n × (n+1) × (2n+1)) / 6.

При помощи этой формулы вы легко можете высчитать сумму квадратов от 1 до n для сколько угодно большого n. Очевидно, что эта последовательность также бесконечна и с ростом n будет расти и общее значение числового набора.

Расчет суммы квадратного ряда

В этом случае вам потребуется выбрать в меню программы закон квадратной последовательности n2, после чего выбрать значение n. Давайте рассчитаем сумму первых десяти членов последовательности (n= 10). Программа выдаст саму последовательность:

1, 4, 9, 16, 25, 36, 49, 64, 81, 100

а также сумму, равную 385.

Кубический ряд

Ряд кубов представляет собой последовательность натуральных чисел, возведенных в куб. Закон образования общего элемента последовательности записывается как n3. Таким образом, первый член ряда равен 13 = 1, второй — 23 = 8, третий — 33 = 27 и так далее. Сумма первых n элементов кубического ряда определяется по формуле:

∑ = (0,5 n × (n+1))2

Как и в предыдущих случаях, элементы числового пространства стремятся в бесконечность, и чем больше количество слагаемых, тем больше результат суммирования.

Расчет суммы кубического ряда

Для начала выберите в меню калькулятора закон кубического ряда n3 и задайте любое значение n. Давайте определим сумму ряда из 13 членов. Калькулятор выдаст нам результат в виде последовательности:

1, 8, 27, 64, 125, 216, 343, 512, 729, 1000, 1331, 1728, 2197

и суммы соответствующего ей ряда, равного 8281.

Последовательность нечетных чисел

Множество натуральных чисел содержит подмножество нечетных элементов, то есть тех, которые не делятся на 2 без остатка. Последовательность нечетных чисел определяется выражением 2n — 1. Согласно закону, первый член последовательности будет равен 2×1 − 1 = 1, второй — 2×2 − 1 = 3, третий — 2×3 − 1 = 5 и так далее. Сумма начальных n элементов нечетного ряда вычисляется по простой формуле:

∑ = n2.

Рассмотрим пример.

Вычисление суммы нечетных чисел

Сначала выберете в меню программы закон образования нечетного ряда 2n−1, после чего введите n. Давайте узнаем первые 12 членов нечетной ряда и его сумму. Калькулятор мгновенно выдаст результат в виде набора чисел:

1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23,

а также суммы нечетного ряда, который равен 144. И действительно, 122 = 144. Все верно.

Прямоугольные числа

Прямоугольные числа относятся к классу фигурных чисел, которые представляют собой класс числовых элементов, необходимых для построения геометрических фигур и тел. К примеру, чтобы построить треугольник необходимо 3, 6 или 10 точек, квадрат — 4, 9 или 16 точек, а для выкладывания тетраэдра потребуется 4, 10 или 20 шаров или кубов. Прямоугольники легко построить при помощи двух последовательных чисел, например, 1 и 2, 7 и 8, 56 и 57. Прямоугольные же числа выражаются в виде произведения двух последовательных натуральных чисел. Формула для общего члена ряда выглядит какn × (n+1). Первые десять элементов такого числового набора выглядят как:

2, 6, 12, 20, 30, 42, 56, 72, 90, 110…

С увеличением n растет и значение прямоугольных чисел, следовательно, сумма такого ряда также будет расти.

Обратная последовательность

Для прямоугольных чисел существует обратная последовательность, определяемая формулой 1 / (n × (n+1)). Числовой набор трансформируется в набор дробей и выглядит как:

1/2 , 1/6, 1/12, 1/20, 1/30, 1/42, 1/56, 1/72, 1/90, 1/110…

Сумма ряда дробей определяется по формуле:

∑ = 1 — 1/(n+1).

Очевидно, что при увеличении количества элементов ряда значение дроби 1/(n+1) стремится к нулю, а результат сложения приближается к единице. Рассмотрим примеры.

Сумма прямоугольного и обратного ему ряда

Давайте рассчитаем значение прямоугольной последовательности для n = 20. Для этого выберете в меню онлайн-калькулятора закон задания общего члена числового набора n × (n+1) и укажите n. Программа выдаст мгновенный результат в виде 3080. Для вычислений обратного ряда измените закон на 1 / (n × (n+1)). Сумма обратных числовых элементов будет равна 0,952.

Ряд произведений трех последовательных чисел

Прямоугольный числовой набор можно изменить, добавив к нему еще один последовательный множитель. Следовательно, формула для вычисления n-ного члена набора преобразится в n × (n+1) × (n+2). Согласно этой формуле элементы ряда образуются в виде произведения трех последовательных чисел, например, 1 × 2 × 3 или 10 × 11 × 12. Первые десять элементов такого ряда выглядят как:

6, 24, 60, 120, 210, 336, 504, 720, 990, 1320

Это быстрорастущий числовой набор, а сумма соответствующего ряда при росте n уходит в бесконечность.

Обратная последовательность

Как и в предыдущем случае, мы можем обратить формулу n-ного члена и получить выражение 1 / (n × (n+1) × (n+2)). Тогда набор целых значений преобразится в ряд дробей, в знаменателе которых будут стоять произведения трех последовательных чисел. Начало такого набора имеет следующий вид:

1/6, 1/24, 1/60, 1/120, 1/210, 1/336…

Сумма соответствующего ряда определяется по формуле:

∑ = 0,5 × (0,5 — 1 / (n+1) × (n+2)).

Очевидно, что при росте количества элементов дробь 1 / ((n+1) × (n+2)) стремится к нулю, а сумма ряда приближается к значению 0,5 × 0,5 = 0,25. Рассмотрим примеры.

Ряд произведений трех последовательных чисел и обратный ему

Для работы с этим набором требуется выбрать закон определения общего элемента n × (n+1) × (n+2) и задать n, к примеру, 100. Калькулятор выдаст вам саму последовательность, а также значение результата сложения сотни чисел, равный 26 527 650. Если выбрать обратный закон 1 / (n × (n+1) × (n+2)), сумма ряда из 100 членов будет равна 0,250.

Заключение

Сборник калькуляторов позволяет рассчитать сумму восьми наиболее популярных последовательностей. Пользуйтесь нашим сервисом для решения учебных заданий по математике или программированию.

Вопрос по информатике:

Паскаль. Программа для вычисления суммы ряда чисел S=1/3+1/5+1/7+1/9+1/n

Пожаловаться

  • 14.05.2018 00:06
  • Информатика
  • remove_red_eye19748
  • thumb_up15
Ответы и объяснения 1

Пожаловаться

  • 15.05.2018 22:52
  • thumb_up42
Знаете ответ? Поделитесь им!

Как написать хороший ответ?

Как написать хороший ответ?

Чтобы добавить хороший ответ необходимо:

  • Отвечать достоверно на те вопросы, на которые знаете правильный ответ;
  • Писать подробно, чтобы ответ был исчерпывающий и не побуждал на дополнительные вопросы к нему;
  • Писать без грамматических, орфографических и пунктуационных ошибок.

Этого делать не стоит:

  • Копировать ответы со сторонних ресурсов. Хорошо ценятся уникальные и личные объяснения;
  • Отвечать не по сути: «Подумай сам(а)», «Легкотня», «Не знаю» и так далее;
  • Использовать мат — это неуважительно по отношению к пользователям;
  • Писать в ВЕРХНЕМ РЕГИСТРЕ.
Есть сомнения?

Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.

Трудности с домашними заданиями? Не стесняйтесь попросить о помощи — смело задавайте вопросы!

Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.

Новые вопросы Информатика Записать логическую функцию, описывающую состояние логической схемы. Составить таблицу истинности. 8… Информатика Какая строка содержит большее количество информации: а) «1100» в алфавите {0,1} или «120» в алфавит… Информатика Алфавит источника сообщений {а,б,в}. Источник сообщений посылает нам слова. а) сколько трит информа… Информатика Дан мешок, в котором лежат 3 чёрных шара, 5 красных и 7 белых шаров (это наш алфавит). Каково количе… Информатика 1. Дана колода из 36 игральных карт (это наш алфавит). Каково количество информации, измеренной в би… Информатика Напишіть програму для виводу діапазону чисел між мінімальним і максимальним числом з кроком.&nb… Информатика Билет № 17. 1. Числа. Infinity, NaN. Преобразование строки в число и числа в строку, округление чис… Информатика ОЧЕНЬ СРОЧНО ПЛИИИЗ Укажите типы виртуальной реальности Количество правильных ответов: 4 Операционн… Вопрос задан8 лет 5 месяцев назад Последняя активность8 лет 5 месяцев назад Просмотрен 2k раз 1

Здравствуйте, Уважаемые кодеры.

Была поставлена задача:

Составить программу вычисления числового ряда для известного числа членов ряда N Y=(3+1-1/81)(5-2+1/27)(7+3-1/9)(9-4+1/3)... 

Вот написал решение на qBasic

CLS 10 INPUT "N"; N IF N < 1 THEN     PRINT "ERROR"     GOTO 10 END IF A = 3 B = 1 C = 81 Y = 1 FOR I = 1 TO N     IF I / 2 = INT(I / 2) THEN         Y = Y * ((A - B) + (1 / C))     END IF     IF I / 2 <> INT(I / 2) THEN         Y = Y * ((A + B) - (1 / C))     END IF     A = A + 2     B = B + 1     C = C / 3 NEXT PRINT Y 

Всё ли верно? Так же, если ввести большое число N, то ответ будет #INF, что делать в таком случае?

Спасибо огромное.

Улучшить вопрос 1

1 ответ 1

Текущие По дате публикации Голоса

Код вроде верный (я не уверен, целочисленное в бейсике деление, или с плавающей запятой).

По поводу огромных чисел — целое число в бейсике (да и почти во всех других языках) ограничено, так что переполнение так просто не обойти. Решением было бы использование чисел произвольной точности. В некоторых языках они доступны (непосредственно или в виде библиотек), в некоторых приходится реализовывать самостоятельно. Не уверен насчёт вашего диалекта бейсика.

Улучшить ответ

Всё ещё ищете ответ? Посмотрите другие вопросы с метками или задайте свой вопрос.

default

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий