Варіанти розв'язків задач.

Приводимо варіанти розв'язків задач, які містять і блоки вводу і виводу даних. Якщо існує інший, більш цікавий розв'язок, тоді це дуже добре.

1.
#множинне присвоєння
a,с=int(input()),int(input())
a,с=с,a
print(a,с)

2.
#на натуральні числа обмеження накладає тільки доступний 
#розмір оперативної пам'яті!!!
a,b=int(input()),int(input())
print(a*b)
Приклад вхідних даних:
a=12345678901112131415    (у цьому числі 20 цифр)
b=123456789101112131415  (у цьому числі 21 цифра)
Результат:
1524157876404650180898569056284229902225

3.
text=input('Text:')
text2=text.split()
print(len(text2))

4.
text=input('Text:')
text2=set(text.lower())
print(len(text2))

5.1
m=input('Число:')
s=sum(int(m[i]) for i in range(len(m)) if int(m[i])%2!=0)
print(s)

5.2
m=input('Число:')
s=sum(int(el) for el in m if int(el)%2!=0)

print(s)

6.
def fibonacci(n):
    if n in (1, 2):
        return 1
    return fibonacci(n - 1) + fibonacci(n - 2)
N=int(input('Число N:'))
if N<300: print(fibonacci(N))

7.
text=input('Текст:')
print(''.join(sorted(text)))

8.
import fractions
a1=int(input('Чисельник 1:'))
b1=int(input('Знаменник 1:'))
a2=int(input('Чисельник 2:'))
b2=int(input('Знаменник 2:'))
summa=fractions.Fraction(a1, b1)+fractions.Fraction(a2, b2)
print ('Чисельник=', summa.numerator, ' Знаменник=',summa.denominator)

9.
from string import  maketrans  # імпортуємо maketrans із модуля string
intab = "abcdehf" # перелік символів, які потрібно шифрувати
outtab = "tdersva"# перелік символів, якими потрібно шифрувати ( a-->t, b -->d ....)
trantab = str.maketrans(intab, outtab) # задаємо таблицю шифрування
text = input('Текст для шифрування:')
print (text.translate(trantab)) # транслюємо (шифруємо) текст відповідно до таблиці trantab

10.
text=input('Текст:')
c='Не паліндром'
if text==text[::-1]: c='Паліндром'
print(text[::-1], '{}'.format(c))

Приклад для слухачів курсів.
# -*- coding: utf-8 -*-
#пошук літер(и) в слові, яка(які) в нього входить максимальну
#кількість разів
s='rrrtrythgvbfdhaaaa'
l=[]
l=[s.count(m) for m in set(s)]
mx=max(l)
elem=[y for y in set(s) if s.count(y)==mx]
print('Max=',mx, "Element=",elem)



Коментарі