Как сделать арифметическую прогрессию в питоне


Скачай курс
в приложении
Перейти в приложение
Открыть мобильную версию сайта
© 2013 — 2023. Stepik
Наши условия использования и конфиденциальности

Public user contributions licensed under cc-wiki license with attribution required
Арифметическая прогрессия
Составить программу вычисления n первых членов арифметической прогрессии, заданных формулой ak+1=ak+d, где a1, k и d запрашиваются при запуске программы При вводе данных: a1 = 1, d = 2, k = 3 Ответ выводит 1 3 5 Написал код, но хотел бы спросить, правильный ли он?
a1 = int(input('Введите первый номер члена a1: ')) d = int(input('Введите разность ар.пр. : ')) k = int(input('Введите последний номер члена k: ')) result = '' #Инициализация переменной с пустым значением for i in range(k): result += str(a1+i*d) + ' ' print('\nВсе члены прогрессии', result)
Отслеживать
задан 22 дек 2022 в 14:55
user528532 user528532
print(‘\nВсе члены прогрессии’, *range(a1, a1 + d * k, d))
22 дек 2022 в 15:18
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Единственное, что можно сказать: так как вы собираете последовательность, то логичнее хранить ее в списке, а не строке, и также логичнее не преобразовывать элементы к строке до того момента, пока вам не понадобится вывести элементы на печать.
Иначе представьте: вам в дальнейшем придется работать с этой последовательностью, и тогда придется доставать ее из этой строки, что не очень удобно.
Предлагаю написать как-то так, логика работы не меняется, но этот код чуть более архитектурный:
a1 = int(input('Введите первый номер члена a1: ')) d = int(input('Введите разность ар.пр. : ')) k = int(input('Введите последний номер члена k: ')) result = [] for i in range(k): result.append(a1+i*d) print('\nВсе члены прогрессии', ' '.join([str(x) for x in result]))
Сумма арифметической прогрессии
4) Найти сумму членов арифметической прогрессии, если известны её первый член, знаменатель и число членов прогрессии.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Сумма арифметической прогрессии
Как это реализовать в python 3 через циклы? n = int(input(‘Будут выведены на экран n первых.
При любом n сумма первых членов ар. прогрессии равна 5n^2 . Найти разность прогрессии
Арифметическая прогрессия обладает следующим свойством: при любом n сумма ее первых членов равна.

Тройка арифметической прогрессии
Рассмотрим отсортированный по возрастанию список L целых чисел (тип int) не менее трех. Найдите в.
Найти сумму арифметической прогрессии
Найти сумму арифметической прогрессии по а1, d, n
Регистрация: 20.10.2016
Сообщений: 153
по этой формуле сумму искать?
Регистрация: 20.10.2016
Сообщений: 153

Сообщение было отмечено LOMANI как решение
Решение
сделал по первой формуле, через разность, оно есть в условии задачи
1 2 3 4 5 6
import math a = float(input('Vvedite pervyi chlen: ')) d = float(input('VVedite raznost: ')) n = float(input('VVedite chislo clenov: ')) s = (((2*a)+(d*(n-1)))/2)*n print 'summa chlenov', s
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Поиск арифметической прогрессии в массиве
1. Дано функцию для создания массива import random column = 5 lines = 5 masive = for i.

Найти n-ый член арифметической прогрессии
Найдите 1543-й член арифметической прогрессии, если её нулевой член равен 179, а шаг — 2007.

Вычислить и вывести n членов арифметической прогрессии
1.Вычислить и вывести n членов арифметической прогрессии с пер-вым членом а и разностью прогрессии.

Вычисление суммы арифметической прогрессии (цикл for)
1)При помощи программы с циклом for вычислите сумму арифметической прогрессии: 1 + 3 + 5 + … +.
Вычисления n первых членов арифметической прогрессии
Составить программу вычисления n первых членов арифметической прогрессии, заданных формулой.

Написать программу по схеме арифметической прогрессии
Сколько яблок я куплю на 7650 рублей. 1-ое яблоко стои 100 руб., второе 200 руб., 3-е 300 руб. и.
Найти сумму членов арифметической прогрессии
Найти сумму членов арифметической прогрессии a, a + d. a + (n + 1)d.
Как сделать арифметическую прогрессию в питоне
Однажды Петя узнал очень важную последовательность из \(n\) чисел. Тщательно проанализировав ее, он обнаружил, что она является арифметической прогрессией. Чтобы не забыть он записал ее элементы на \(n\) карточках.
Но затем случилась неприятность. Не зная всю важность этой последовательности, его брат Вовочка взял еще \(n\) карточек и написал на них произвольные числа, а потом перемешал все \(2n\) карточек.
Теперь Петя хочет восстановить исходную последовательность по этим карточкам. К сожалению возможно, что это можно сделать несколькими способами, но Петю устроят любые \(n\) чисел, образующие арифметическую прогрессию.
Петя не может сделать это вручную, поэтому обратился к вам за помощью.
Напомним что последовательность \(a_1, a_2, \ldots, a_n\) называется арифметической прогрессией, если \(a_i = a_ + d\) для всех \(i\) от 2 до \(n\) и некоторого \(d\). Число \(d\) называется разностью арифметической прогрессии.
Входные данные
В первой строке входного файла находится целое число \(n\) (\(1 \le n \le 100\,000\)). В следующей строке находится \(2n\) целых чисел по модулю не превосходящих \(10^9\) — числа, написанные на карточках, перечисленные в произвольном порядке. Гарантируется, что можно выбрать \(n\) из них так, чтобы они образовывали арифметическую прогрессию.
Выходные данные
В первой строке выходного файла выведите \(a_1\) и \(d\) — первый элемент и разность найденной арифметической прогрессии. Если \(d = 0\), число \(a_1\) должно встречаться среди заданных чисел \(n\) раз.
Если существует несколько решений, выведите любое.
