TlPuBeT
26.01.2021 16:56

Алгоритм вычисления значения функции F(n), где n - натуральное число, задан следующими соотношениями

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ancass
14.03.2022 00:37

№1.

Написать программу ввода с клавиатуры и вывода на экран значений одномерного массива А, состоящего из n вещественных элементов (n=10). Найти сумму элементов этого массива и вывести ее на экран.

№2.

Используя оператор выбора, написать программу которая запрашивает у пользователя номер месяца и выводит на экран соответствующее название времени года. В случае если пользователь укажет недопустимое число, программа должна вывести сообщение “Ошибка вывода данных. Повторите ввод”.

№3.

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

№4.

Задана некоторая строка S$. Дано число k и слово а$. Вставить в строку после k-ого символа слово а$, результат вывести на экран.

№5.

Составить программу, которая 100 элементов одномерного массива d заполняет квадратами первых ста целых чисел и выводит их на экран.

№6.

Ввести с клавиатуры значения n вещественных элементов массива с (n = 10), посчитать количество отрицательных и сумму положительных элементов. Результаты вывести на экран.

№7.

Написать программу, которая, используя генератор случайных величин выводит на экран пример на умножение 2-х случайных однозначных чисел, запрашивает ответ пользователя, проверяет его и выводит сообщение “ Правильно!” или “Вы ошиблись” и правильный ответ.

Ниже приведён рекомендуемый вид экрана во время работы программы:

Сколько будет 6*7 ?

Введите ответ и нажмите <Enter>

-> 56

Вы ошиблись. 6*7 = 42.

№8.

Написать программу, которая используя функции mod (остаток от деления) и div (целая часть от деления) находит сумму чисел любого трехзначного числа, число вводится с клавиатуры.

№9

Написать программу подсчета количества чисел кратных 7 на отрезке от 40 до 120. Результат вывести на экран.

0,0(0 оценок)
Ответ:
GeneralEsdese
13.06.2022 14:38
Задача, аналогичная той, которую публиковали вчера. Только цикл repeat заменяем на while.

Сначала немного математики.
\displaystyle a_n= \frac{n!}{(2n)!}=\frac{\prod_{i=1}^ni}{\prod_{i=1}^{2n}i}=\frac{\prod_{i=1}^ni}{\prod_{i=1}^{n}i\times\prod_{i=n+1}^{2n}i}=\frac{1}{\prod_{i=n+1}^{2n}i}; \quad n\in\mathbb N
О модуле тут смысла нет говорить, поскольку все an - суть положительные величины на интервале (0;1).

uses Crt;

function ai(n:integer):real;
var
  i:integer;
  p:real;
begin
  p:=1;
  for i:=n+1 to 2*n do p:=p*i;
  ai:=1/p
end;

var
  i:integer;
  eps,s,an:real;
begin
  ClrScr;
  Write('eps='); Read(eps);
  s:=0; i:=1; an:=eps+1;
  while an>=eps do begin
     an:=ai(i);
     if an>=eps then begin s:=s+an; Inc(i) end
  end;
  Writeln('s=',s);
  ReadKey
end.

Тестовые решения:
eps=0.07
s= 5.8333333333E-01

eps=0.000001
s= 5.9229647667E-01

eps=1e-8
s= 5.9229653448E-01

Для контроля результата можно отметить, что сумма первых 1000 членов ряда равна приблизительно 5.922965365Е-01

Если раздражает наличие функции, можно и без нее:
uses Crt;

var
  i,j:integer;
  eps,s,an,p:real;
begin
  ClrScr;
  Write('eps='); Read(eps);
  s:=0; i:=1; an:=eps+1;
  while an>=eps do begin
    p:=1;
    for j:=i+1 to 2*i do p:=p*j;
    an:=1/p;
    if an>=eps then begin s:=s+an; Inc(i) end
  end;
  Writeln('s=',s);
  ReadKey
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота