Najdłuższe i najkrótsze słowo

Zadanie 10 z 19 · rozdział 11Trudność: 1 z 3napisysłowamin/max

Treść zadania

Wczytaj zdanie i znajdź w nim (zgodnie z konwencją rozdziału — bez interpunkcji):

a) najdłuższe słowo,
b) najkrótsze słowo.

Jeśli kilka słów ma tę samą długość, wybierz to, które występuje w zdaniu wcześniej.

Dane wejściowe

  • 1. linia: zdanie (zawiera co najmniej jedno słowo)

Dane wyjściowe

  • 1. linia: najdłuższe słowo
  • 2. linia: najkrótsze słowo

Przykład

Wejście
Kaczka lubi wiosnę.
Wyjście
Kaczka
lubi

Słowa Kaczka i wiosnę mają po 6 liter — wygrywa wcześniejsze Kaczka.

Potrzebujesz teorii?

Zasady obowiązujące w rozdziale 11

Zadania w tym rozdziale ćwiczą podstawowe operacje na napisach: indeksowanie, wycinanie, zamianę znaków, dzielenie zdania na słowa i składanie napisów z części.

Konwencje wspólne:

  • Każde zadanie jest osobnym programem: czyta standardowe wejście i wypisuje wynik na standardowe wyjście.
  • Program nie wypisuje komunikatów typu „Podaj napis:”.
  • Napis lub zdanie wczytuj jako całą linię — może zawierać spacje.
  • Słowo to fragment zdania oddzielony od innych spacjami. Znaki interpunkcyjne (np. . , ! ? ; : - ( ) ") stojące na początku lub końcu fragmentu nie należą do słowa (kota. → kota), a fragment złożony wyłącznie z interpunkcji (np. samotny myślnik -) nie jest słowem. W Pythonie słowa uzyskasz tak: podziel zdanie metodą split(), z każdego fragmentu usuń interpunkcję metodą strip(string.punctuation) i pomiń puste wyniki.
  • Gdy wynikiem jest lista, wypisz ją tak, jak robi to print(lista) w Pythonie, np. ['Ala', 'ma', 'kota']. Pusta lista to [].

Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.

Python uruchomi się w przeglądarce przy pierwszym teście.

Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.

Testy

Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.

Test 1

Nie uruchomiono
Wejście
one three five.
Oczekiwane wyjście
three
one

Test 2

Nie uruchomiono
Wejście
aa bbb cc
Oczekiwane wyjście
bbb
aa

Test 3

Nie uruchomiono
Wejście
Słowo
Oczekiwane wyjście
Słowo
Słowo

Test 4

Nie uruchomiono
Wejście
kot pies mysz
Oczekiwane wyjście
pies
kot

Test 5

Nie uruchomiono
Wejście
Ala ma bardzo, bardzo dużego psa!
Oczekiwane wyjście
bardzo
ma

Test 6

Nie uruchomiono
Wejście
Hej, ty!
Oczekiwane wyjście
Hej
ty
Uruchom z własnymi danymi