Программа принимает на вход строку и выводит ее в обратном порядке с использованием рекурсии.
Решение задачи
- Принимается строка и записывается в отдельную переменную.
- Далее эта переменная передается в качестве аргумента в рекурсивную функцию.
- В качестве базового условия рекурсии принимаем равенство длины строки нулю. В этом случае возвращается нулевая строка и функция завершает свою работу.
- В противном случае опять рекурсивно вызываем эту же функцию, но без первого символа, и просто прибавляем к ней этот символ. Таким образом, в результате у нас накапливается эта же строка, но в обратном порядке.
- Выводим результат на экран.
- Конец.
Исходный код
Ниже дан исходный код, который осуществляет вывод строки в обратном порядке с использованием рекурсии. Результаты работы программы также даны ниже.
def reverse(string): if len(string) == 0: return string else: return reverse(string[1:]) + string[0] a = str(input(«Введите строку: «)) print(reverse(a))
Объяснение работы программы
- Пользователь вводит строку, которая записывается в переменную a .
- Далее эта переменная передается в качестве аргумента в рекурсивную функцию reverse() .
- В качестве базового условия рекурсии принимаем равенство 0 длины строки, для вычисления которой используем встроенную функцию len() . В этом случае возвращается нулевая строка и функция завершает свою работу.
- В противном случае опять рекурсивно вызываем эту же функцию, но без первого символа, используя для этого срез строки string[1:] , и просто прибавляем к ней этот символ, обращаясь к нему по индексу string[0] . Таким образом, в результате у нас накапливается эта же строка, но в обратном порядке.
- Выводим результат на экран.
Результаты работы программы
Пример 1: Введите строку: hello world dlrow olleh Пример 2: Введите строку: first tsrif
Источник: pythonist.ru
Вывести символы строки в обратном порядке
Написать программу которая записывает слово в обратном порядке
Пользователь
: 12
Составить программу, которая записывает каждое слово в тексте в обратном порядке.Delphi
Дан текст (массив строк) в котором слова разделены одним пробелом. Составить программу, которая записывает каждое слово в тексте в обратном порядке.
Нужен ввод через форму.Memo1(текст), Memo2(результат).
Пользователь
: 32
function naoborot(str1:string):string;//str1 — строка, которую переворачиваем var str2, //перевернутая строка buf:string;//вспомогательный буфер begin repeat ///////////// buf:=copy(str1,1,pos(‘ ‘,str1)-1); //-в цикле берем первое слово из исходной строки str2:=buf+’ ‘+str2; //-пишем его в начало итоговой строки delete(str1,1,pos(‘ ‘,str1)); //-обрезаем исходную строку until pos(‘ ‘,str1)=0; // повторяем пока не останется пробелов str2:=str1+’ ‘+str2;//когда пробелов не осталось — значит в исходной //строке — одно-единственное слово, пишем его в начало //итоговой строки Result:=str2; end;
используем
ВЫВОД МАССИВА В ОБРАТНОМ ПОРЯДКЕ C# | РАБОТА С МАССИВАМИ | СИ ШАРП УРОКИ | ДОМАШНИЕ ЗАДАНИЯ # 7
memo2.Text:=naoborot(memo1.Text); |
Форумчанин
: 225
эм функция copy откуда берётся?из стандартной библиотеки?
За помощь: Нажмите на весы слева от сообщения!
Пользователь
: 12
Спасибо. Помогло.
Форумчанин
: 785
2 savva — из unit System
Изо всей благодати
В руках крепко сжатых
Я донесу только капли
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Дано 2 слова. Написать программу, которая будет определять присутствует ли слово 1 в слове 2. | Паскалька^^ | Помощь студентам | 5 | 19.10.2010 00:55 |
Сортировка данных в обратном порядке (Delphi 7) | NuR1k | БД в Delphi | 4 | 24.08.2010 19:36 |
Сколько раз в тексте встречается каждое слово. | 08ekhiv1 | Помощь студентам | 2 | 11.03.2009 10:56 |
Составить в алфавитном порядке список всех слов, встречающихся в тексте, и количество этих слов. | KAPAHDAW | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 17.02.2009 01:19 |
Во вводимом тексте переписать все слова в обратном порядке. | menlo | Помощь студентам | 5 | 17.11.2007 10:18 |
Источник: www.programmersforum.ru
Напишите программу PHP, которая читает слово и печатает слово в обратном порядке. Например, если пользователь предоставляет вход «Гарри», программа печатает yrraH
Напишите программу PHP, которая читает слово и печатает слово в обратном порядке. Например, если пользователь предоставляет вход «Гарри», программа печатает yrraH. Некоторое время я застрял в этой проблеме.
Мне также были даны несколько советов о том, как начать, как указано здесь; Подсказка: используйте цикл, а метод strlen() для строки strlen («Hello») даст значение 5, поскольку Hello имеет 5 символов. Строки также могут обрабатываться как массив, поэтому, например: $ s = «Hello»; print $ s [0]; //это даст H, поскольку H находится в позиции 0 строки. Подумайте об использовании цикла for, который начинается с длины строки и отсчитывается назад. До сих пор я шел туда и обратно между кодом, но прямо сейчас я даже не могу подумать о том, как начать код. Любая помощь будет оценена по достоинству.
спросил(а) 2023-02-03T12:41:05+03:00 4 месяца, 3 недели назад
Источник: progi.pro