Новини

Розбираємо цікаве завдання про словник

Прокрутити вниз
Опубліковано:

Простий Пайтон – програміст працює з ним щодня

Простий Пайтон. Одна із складових діяльності програміста – це навчання. Вік живи, а вік навчайся – це точно для майстрів айті-сфери. Тому сьогодні ми пропонуємо своїм читачам перевірити свої сили та вирішити одне цікаве завдання про словник. Якщо вважаєте, що вам це під силу – скоріше приступайте до рішення! Умови:


Вхідні дані:

3

apple – malum, pomum, popula

fruit – baca, bacca, popum

punishment – malum, multa

Вихідні дані:

7

baca – fruit

bacca – fruit

malum – apple, punishment

multa – punishment

pomum – apple

popula – apple

popum – fruit


Вище ви бачите приклад однієї з олімпіадних завдань, які пропонують рішення молодим програмістам. Її суть у тому, щоб перетворити з англо-латинського словника латино-англійську. Спершу спробуйте вирішити її самі. Якщо щось не вийде, підгляньте рішення GoMother.

Всі наші хлопці знають про вирішення таких завдань. Справа в тому, що на уроках ми не записуємо нудні конспекти і не повторюємо той самий матеріал сотні разів. На думку фахівців GoMother, навчання має бути цікавим і легким. Інакше це не навчання, а примус.

Якщо ви хочете креативності, створення цікавих проектів, любите малювати на графічному планшеті або мрієте розробляти ігри – чекаємо на вас в офісі на м.Житомирська та м.Академмістечко.

Розв’язання задачі для простий Пайтон

Що ж, сподіваємось, у тебе вийшло придумати своє рішення. В іншому випадку, не варто засмучуватися – практикуйся і в інший раз все обов’язково вийде.


f = open(‘input.txt’)

N = f.readline()

d = {}

for line in f:

words = line.strip().split(‘ – ‘)

en = words[0]

lat = words[1].split(‘, ‘)

for key in lat:

if key in d:

d[key].append(en)

else:

d[key] = [en]

f.close()

for key in d:

d[key].sort()

g = open(‘output.txt’, ‘w’)

g.write(str(len(d)) + ‘\n’)

for lat in sorted(d):

g.write(lat + ‘-‘ + ‘, ‘.join(d[lat]) + ‘\n’)

g.close()


Пояснимо програмування на Python

Відкрийте файл та прочитайте число N (воно нам не знадобиться); також створіть порожній словник.

Відокремте слово від його перекладів; з рядка з перекладами отримайте список латинських слів.

Далі перевірте, чи є латинське слово у словнику. Якщо є, допишіть ще один англійський переклад. Якщо ні – впишіть його. Після махінацій закрийте файл. Далі потрібно всі списки перекладів відсортувати (як вимагається від нас умов завдання).

Відкрийте файл для запису. Першим рядком запишіть кількість слів, що виходять. Далі у відсортованому порядку запишіть латинські слова, а потім їх переклади. Закрийте файл.

Python розробка: де навчать?

Ось і все) Звичайно, варіантів існує маса, але цей – один із найестетичніших в оформленні. У нашій школі ми розповімо ще кілька варіантів – приходьте на пробне безкоштовне заняття та випробувайте себе!

Залиште номер і ми допоможемо підібрати курс

Зроби крок до успішного майбутнього сьогодні

Child looks up!