М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
V5Ch
V5Ch
05.11.2021 18:37 •  Информатика

С клавиатуры вводится 2 целых числа (a и b) и одно натуральное (n). Вывести на экран коэффициенты C_1, C_2 ... C_(n+1) разложения (ax+bx)^n=C_1x^n+C_2x^(n-1)y+...+C_(n+1)y^n.

👇
Ответ:
dimaloz55
dimaloz55
05.11.2021

Пусть C_i^j — коэффициент в разложении (ax+by)^j при x^iy^{j-i}, то есть

(ax+by)^j=C_0^j x^j+C_1^j x^{j-1}y+C_2^jx^{j-2}y^2+\dots+C_j^j y^j

Выразим коэффициенты для j + 1 через j:

(ax+by)^{j+1}=(ax+by)^j\cdot(ax+by)=\\=(C_0^j x^j+C_1^j x^{j-1}y+C_2^jx^{j-2}y^2+\dots+C_j^j y^j)(ax+by)=\\=aC_0^j x^{j+1}+(aC_1^j+bC_0^j)x^jy+(aC_2^j+bC_1^j)x^{j-1}y^2+\dots+bC_j^j y^{j+1}

Таким образом, C_0^{j+1}=aC_0^j, C_{j+1}^{j+1}=bC_j^j и для всех остальных коэффициентов C_i^{j+1}=aC_i^j+bC_{i-1}^j

В ответ нужно вывести все коэффициенты для j = n.

Алгоритм: создадим список из n + 1 элемента, проинициализируем его так: a, b, 0, 0, ..., 0 (всего n - 1 ноль). Это коэффициенты разложения для j = 1. Затем в цикле будем обновлять значения, начиная с больших i.

Код (python 3):

a, b, n = map(int, input().split())

c = [a, b] + [0] * (n - 1)

for j in range(2, n + 1):

   c[j] = b * c[j - 1]

   for i in range(j - 1, 0, -1):

       c[i] = a * c[i] + b * c[i - 1]

   c[0] = a * c[0]

print(*c)

Пример ввода:

1 1 4

Пример вывода:

1 4 6 4 1

___________________________________________-

Можно сразу написать выражение для C_i^j. Тогда, если вы умеете считать биномиальные коэффициенты, всё получается короче (и быстрее):

from math import comb

a, b, n = map(int, input().split())

for i in range(n + 1):

   print(comb(n, i) * a**i * b**(n - i), end=" ")

4,4(6 оценок)
Открыть все ответы
Ответ:
Milana29012000
Milana29012000
05.11.2021

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

2. IDE или Integrated Development Environment среда для разработки софта. "Больше ничего не придумал"

3.

Текстовый редактор, Компилятор или интерпретатор, Средства автоматизации сборки, Отладчик.

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

4,6(1 оценок)
Ответ:
Darvin2004
Darvin2004
05.11.2021

Відповідь:

Microsoft Word (часто — MS Word, WinWord или просто Word) — текстовый процессор, предназначенный для создания, просмотра, редактирования и форматирования текстов статей, деловых бумаг, а также иных документов, с локальным применением простейших форм таблично-матричных алгоритмов. Выпускается корпорацией Microsoft в составе пакета Microsoft Office. Первая версия была написана Ричардом Броди (Richard Brodie) для IBM PC, использующих DOS, в 1983 году. Позднее выпускались версии для Apple Macintosh (1984), SCO UNIX и Microsoft Windows (1989). Текущей версией является Microsoft Office Word 2019 для Windows и macOS, а также веб-версия Word Online (Office Online), не требующая установки программы на компьютер.

Пояснення:

4,4(99 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ