Длина списка: Рекурсивно вычислите длину списка. Для этого напишите функцию recursive_len(some_list), принимающую в себя список и возвращающую его длину.
Вот КОД: def recursive_len(some_list): if not some_list: return 0 return 1 + recursive_len(some_list[:-1])
Вот задача которую надо решить: косипс ьтунревереП
А теперь попробуйте рекурсивно перевернуть список. Для этого напишите функцию recursive_reverse(some_list).
Примечания При решении данной задачи не используйте циклы.
Я уже отвечал на подобный вопрос. Эту колдунью зовут Кодировка КОИ-8. Таблица кодирования: А-Ю, Б-А, В-Б, Г-Ц, Д-Д, Е-Е, Ж-Ф, З-Г, И-Х, Й-И, К-Й, Л-К, М-Л, Н-М, О-Н, П-О, Р-П, С-Я, Т-Р, У-С, Ф-Т, Х-У, Ц-Ж, Ч-В, Ш-Ь, Щ-Ы, Ъ-З, Ы-Ш, Ь-Э, Э-Щ, Ю-Ч, Я-Ъ, Ё-╦ Таблица построена так. Слева стоят буквы по русскому алфавиту, а справа русские буквы, соответствующие английскому алфавиту. @ - Ю (код 40), A - А (41), B - Б, C - Ц, D - Д, E - E, F - Ф, и т.д. Буква Ё - 33-ья в алфавите, она выбивается из ряда в 32 буквы, поэтому превращается не в букву, а в элемент псевдографики. И еще меняется регистр, 1-ая буква маленькая, остальные большие. Эти имена по порядку: Глеб, Степан, Иван, Фёдор, Кирилл, Леонид
Треугольник существует, если сумма длин двух любых его сторон больше длины третьей стороны. Длина стороны может быть определена как расстояние между соответствующими сторонами треугольника:
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016 type Point=record x,y:real end;
procedure GetPoint(c:char;var M:Point); begin Write('Введите координаты точки ',c,': '); Read(M.x,M.y) end;
function Dist(a,b:Point):=sqrt(sqr(b.x-a.x)+sqr(b.y-a.y));
begin var A,B,C:Point; GetPoint('A',A); GetPoint('B',B); GetPoint('C',C); var ab:=Dist(A,B); var bc:=Dist(B,C); var ac:=Dist(A,C); if (ab<bc+ac) and (bc<ab+ac) and (ac<ab+bc) then Writeln('Треугольник существует') else Writeln('Треугольник не существует') end.
Тестовое решение: Введите координаты точки A: -6.9 -5.3 Введите координаты точки B: 0 11.4 Введите координаты точки C: 9 3 Треугольник существует
Эту колдунью зовут Кодировка КОИ-8. Таблица кодирования:
А-Ю, Б-А, В-Б, Г-Ц, Д-Д, Е-Е, Ж-Ф, З-Г, И-Х, Й-И, К-Й, Л-К, М-Л,
Н-М, О-Н, П-О, Р-П, С-Я, Т-Р, У-С, Ф-Т, Х-У, Ц-Ж, Ч-В, Ш-Ь,
Щ-Ы, Ъ-З, Ы-Ш, Ь-Э, Э-Щ, Ю-Ч, Я-Ъ, Ё-╦
Таблица построена так. Слева стоят буквы по русскому алфавиту, а справа русские буквы, соответствующие английскому алфавиту.
@ - Ю (код 40), A - А (41), B - Б, C - Ц, D - Д, E - E, F - Ф, и т.д.
Буква Ё - 33-ья в алфавите, она выбивается из ряда в 32 буквы, поэтому превращается не в букву, а в элемент псевдографики.
И еще меняется регистр, 1-ая буква маленькая, остальные большие.
Эти имена по порядку:
Глеб, Степан, Иван, Фёдор, Кирилл, Леонид
Длина стороны может быть определена как расстояние между соответствующими сторонами треугольника:
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
type
Point=record
x,y:real
end;
procedure GetPoint(c:char;var M:Point);
begin
Write('Введите координаты точки ',c,': ');
Read(M.x,M.y)
end;
function Dist(a,b:Point):=sqrt(sqr(b.x-a.x)+sqr(b.y-a.y));
begin
var A,B,C:Point;
GetPoint('A',A); GetPoint('B',B); GetPoint('C',C);
var ab:=Dist(A,B);
var bc:=Dist(B,C);
var ac:=Dist(A,C);
if (ab<bc+ac) and (bc<ab+ac) and (ac<ab+bc) then
Writeln('Треугольник существует')
else Writeln('Треугольник не существует')
end.
Тестовое решение:
Введите координаты точки A: -6.9 -5.3
Введите координаты точки B: 0 11.4
Введите координаты точки C: 9 3
Треугольник существует