Задача разворот последовательности python

Разворот последовательности чисел в Python, через рекурсию

Добрый день уважаемые форумчане!
Стоит следующая задача.Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту последовательность в обратном порядке. При решении этой задачи нельзя пользоваться массивами и прочими динамическими структурами данных.

Посмотрел ответы до моих, посмотрел на других форумах все одинаково. Единственный вопрос, выходит слово None, после разворота, и тестирощик не пропускает даже первый тест.

def rev(): x = int(input()) if x != 0: rev() print(x) rev()

Вычисление последовательности через рекурсию C++
Вот код нахождения членов последовательности через цикл, надо переписать с помощью рекурсии double.

Определите наибольшее значение числа в последовательности через рекурсию
Дана последовательность натуральных чисел. Определите наибольшее значение числа в этой.

Используя рекурсию подсчитать количество чисел и сумму последовательности
Здравствуйте, помогите пожалуйста с задачкой Задана последовательность положительных чисел.

Эксперт Python

>>> input()[::-1] 1234567890 '0987654321' >>>

Добавлено через 43 секунды
P.S. Зачем использовать рекурсию?

Добавлено через 14 минут
Но если очень надо, то

def rec(n,i): return i if (n==0) else rec( n//10, i*10 + n%10 ) print(rec(158, 0)) # 858 print(rec(123456789, 0)) #987654321

Добавлено через 22 минуты
P.S. Похоже код №2 для другого типа задания — разворот цифр в числе, а не списка (если под последовательностью понимается он) чисел. Тогда тем более не понимаю, зачем здесь рекурсия, когда есть синтаксис a[::-1] и функция reverse.

Эксперт Python

ЦитатаСообщение от Garry Galler Посмотреть сообщение

Эксперт Python

Пример: Ввод: 1 2 3 0 Вывод: 0 3 2 1

, чтобы вывод был в одну строку.
А, вообще, так странная задача. бесполезная.

Добавлено через 4 минуты

ЦитатаСообщение от dondublon Посмотреть сообщение

Эксперт по компьютерным сетям

ЦитатаСообщение от dondublon Посмотреть сообщение

Я согласен с Вами и Вы конечно правы в том, что задача бесполезная и создана для того чтобы понять рекурсию. Вопрос стоит в другом, почему в моем коде ВЫХОДИТ NONE В КОНЦЕ! КОД работает все прекрасно переворачивает, Пробую у себя тесты все ответы правильные!

Эксперт Python

ЦитатаСообщение от Neznaika90 Посмотреть сообщение

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
>>> def rev(): x = int(input()) if x != 0: rev() print(x) >>> rev() 1 2 3 4 5 6 0 0 6 5 4 3 2 1 >>>

Добавлено через 3 минуты
P.S. Если, конечно, вы так не делаете

1 2 3 4 5 6 7 8 9 10 11 12 13
>>> print(rev()) 1 2 3 4 0 0 4 3 2 1 None >>>

ЦитатаСообщение от Jabbson Посмотреть сообщение

Вычислить сумму чисел от 1 до n через рекурсию
напишите функцию sumTo(n), которая для данного n вычисляет сумму чисел от 1 до n через рекурсию

Генератор двоичных чисел через рекурсию
Сгенерировать все двоичные числа с ненулевой первой цифрой, состоящие из a нулей и b единиц.

Поиск чисел Фибоначчи через рекурсию
Описать рекурсивную функцию Fib2(N) целого типа, вычисляющую N-й элемент последовательности чисел.

Разворот последовательности
Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту последовательность в.

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

Перевод чисел из 10сс в 2сс через рекурсию
Перевести число из 10сс в 2сс с помощью рекурсии.. Люди, помогите, не знаю, как делать.. Еще.

Источник

Разворот введённой последовательности

Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту последовательность в обратном порядке.

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

Пример:
Ввод:
1
2
3
0
Вывод: 0 3 2 1

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

Разворот последовательности чисел в Python, через рекурсию
Добрый день уважаемые форумчане! Стоит следующая задача.Дана последовательность целых чисел.

Найти наименьшее число среди чисел введенной последовательности
Напишите программу, на вход которой подаются отрицательные числа, ввод оканчивается вводом точки.

Разворот последовательности
Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту последовательность в.

# -*- coding: utf-8 -*- a = tuple('1230') c = (len(a) - 1) while c != -1: print(a[c]) c -= 1
numbers = (1, 2, 3, 0) def abc(numbers): print(numbers[-1]) abc(numbers[0: len(numbers) - 1]) try: abc(numbers) except IndexError: pass

Источник

Python-сообщество

[RSS Feed]

  • Начало
  • » Центр помощи
  • » Задача «Разворот последовательности» без применения динамических структур данных

#1 Янв. 10, 2018 08:54:28

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

Всем Коничива! Условие задачи:

“Дана последовательность целых чисел (вводится с клавиатуры), заканчивающаяся числом 0. Выведите эту последовательность в обратном порядке. При решении этой задачи нельзя пользоваться массивами и прочими динамическими структурами данных.Рекурсия вам поможет.”

def reverse(l): if len(l) > 1: print(l[len(l)-1]) del l[len(l)-1] return reverse(l) else: return l[0] def ss(n): if n != 0: l.append(n) return ss(int(input())) elif n == 0 and len(l) == 0: return n elif n == 0 and len(l) != 0: l.append(n) return reverse(l) l = [] print(ss(int(input()))) 

Да, я использовал динамическую структуру. Но, мне кажется, что структура алгоритма, с помощью которого поставленную задачу возможно решить, не может не содержать динамических структур. Принцип таков: для каждого нового значения необходимо место в памяти. Количество значений заранее не предопределено. Вопрос: как в такой ситуации, можно решить задачу без динамических структур? Кстати, рылся в интернете, так и не нашел толком, что такое ч точки зрения Python динамические и (не динамические) статические структуры данных. Проверил решение на тестах сайта Питон для начинающих (не помню точно адрес), все 5 возможных тестов проходит. В принципе для меня главное решить задачу в общем, а не изощряться с типами применяемых данных. Но на Курсере есть какой-то 6 тест, который мой алгоритм не проходит. Что он проверяет я не знаю. Может, в моем алгоритме есть ошибки? На малых числах все работает исправно.

Отредактировано kamikadze (Янв. 10, 2018 09:50:17)

#2 Янв. 10, 2018 09:46:20

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

>>> def print_reversed(seq, pos=0): . elem = seq[pos] . if elem != 0: . print_reversed(seq, pos + 1) . print(elem) . >>> print_reversed([1, 2, 3, 4, 5, 0]) 0 5 4 3 2 1 >>> 

kamikadze
Кстати, рылся в интернете, так и не нашел толком, что такое ч точки зрения Python динамические и (не динамические) статические структуры данных.

Динамическая структура данных — это такая структура данных, количество элементов которой может меняться после её создания. Примеры: стек, очередь, дек, линейный список, множество, динамический вектор. В питоне многие из этих динамических структур реализованы в виде встроенных типов: стек — list, множество — set(), нагруженное множество — dict, динамический вектор — list. При этом есть и библиотечный тип: дек — collections.deque. А вот динамической структуры последовательность в питоне не реализовано, но частично её роль выполняют итераторы, так как не все операции над последовательностью можно выполнять с итератором (нельзя добавить элемент после создания, нельзя сделать подсматривание следующего элемента без его взятия и нельзя опустошить итератор в любое время и начать заново заполнять).

Отредактировано py.user.next (Янв. 10, 2018 09:59:30)

Источник

Разворот последовательности

Помогите, пжл. Дается последовательность, к-я заканчивается нулем. Нужно вывести эту последовательность, включая нуль.

def rec(): n = int(input()) if n != 0: rec() print(n) rec()
1 2 3 0 3 2 1 Process finished with exit code 0

Разворот последовательности чисел в Python, через рекурсию
Добрый день уважаемые форумчане! Стоит следующая задача.Дана последовательность целых чисел.

Разворот слов в строке
Нужно реализовать программу в одной строке которая переворачивает слова в строке Пока я додумался.

Разворот введённой последовательности
Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту последовательность в.

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

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

def rec(): n = int(input()) if n != 0: rec() print(n) else: print(0) rec()
def rev(): x = int(input()) if x != 0: rev() print(x) rev()

Добавлено через 39 секунд
Спасибо.

Разворот одномерного массива в столбик. (.T) не работает
Я читаю одномерный массив из файла, и пытаюсь развернуть его при помощи (.T) import numpy as np.

Разворот последовательности
Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту последовательность в.

Разворот последовательности. Рекурсия
Всем добрый вечер) Дана последовательность целых чисел, заканчивающаяся числом 0. Выведите эту.

Разворот строки
Как лучше сделать прогу: "цикл, который переварацивает строку" (из abcd получится dcba) Я вроде.

разворот картинки
делаю гифку и нужно сделать разворот этой картинки по 18 градусов 10 кадров относительно центра.

Разворот числа
Необходимо ‘развернуть’ введенное с клавиатуры число. Прошу помочь.

Источник

Читайте также:  Initializing objects in javascript
Оцените статью