
1) Дано натуральне число N. Вивести значення суми Вираз N! - "N факторіал" - позначає добуток
всіх натуральних чисел від 1 до N, тобто N! = 1 • 2 • ... • N. Отримане число S є наближеним значенням константи e = exp (1) = 2.71828183 .... Визначити Е - точність знайденого значення експоненти. (E=|S-exp(1)| ) 2) Дано дійсне число R (задати в діалозі) і масив розміру N (обрати самостійно в діапазоні від 7 до 12). Знайти елемент масиву, який найбільш близький до даного числа (різниця між елементом масива і числом R мінімальна)

Ответы на вопрос

Ответ:
1. Формулы вычисления не было, потому читал и искал теорию. чем больше n, тем лучше точность. Но не задавайте большие значение n, потому что после примерно 20 (даже раньше) нет смысла (уже точности вычислений не хватает), а например 1000 - будет сообщение об ошибке.
import math
def factorial(n):
return 1 if n==1 else n*factorial(n-1)
n,s=int(input()),2
for k in range(2,n+1):
s+=1/factorial(k)
print('вычисленное е=',s,'\nE=',abs(s-math.exp(1)))
2.
import random
R,N=float(input()),10
a=[random.randint(-10,10) for i in range(N)]
print(a)
b=list(map(lambda x:abs(x-R),a))
print(b.index(min(b)))
Объяснение:
постарался как можно более кратко с максимально понятным языком



- Для обчислення наближеного значення константи e та точності E ви можете використовувати наступний Python-код:
pythonimport math
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
def approximate_e(N):
S = 0
for i in range(N+1):
S += 1 / factorial(i)
E = abs(S - math.exp(1))
return S, E
N = int(input("Введіть натуральне число N: "))
result, accuracy = approximate_e(N)
print(f"Наближене значення e: {result}")
print(f"Точність E: {accuracy}")
Цей код обчислює наближене значення e за допомогою ряду Маклорена і порівнює його зі значенням math.exp(1), знаходячи точність E.
- Для знаходження елемента масиву, найближчого до заданого числа R, ви можете використовувати наступний Python-код:
pythondef find_closest_element(arr, R):
closest_element = arr[0]
min_difference = abs(R - arr[0])
for element in arr:
difference = abs(R - element)
if difference < min_difference:
min_difference = difference
closest_element = element
return closest_element
N = int(input("Введіть розмір масиву N: "))
arr = [float(input(f"Введіть елемент масиву #{i+1}: ")) for i in range(N)]
R = float(input("Введіть число R: "))
closest = find_closest_element(arr, R)
print(f"Елемент масиву, найбільш близький до {R}: {closest}")
Цей код приймає введені користувачем значення для масиву та R, а потім знаходить елемент масиву, що найближчий до R, рахуючи різницю між кожним елементом масиву та R.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili