C++ OD PODSTAW DO MATURY

Słowa - zadanie maturalne z roku 2018

(rozszerzenie, stara formuła)

Zadanie 3

Treść zadania

Anagram to słowo powstałe z przestawienia liter danego słowa, wykorzystujące wszystkie jego litery.

Przykład:
Anagramami słowa SLOMA są na przykład: MASLO, SLMAO, SOLMA, …

Podaj liczbę wierszy w pliku slowa.txt, w których występują pary słów takich, że pierwsze słowo jest anagramem drugiego. Wypisz te pary.

Omówienie i przykładowe rozwiązanie

Spróbuj rozwiązać zadanie samodzielnie. Tylko w taki sposób możesz przygotować się do matury. Poniżej znajdziesz przykładowe rozwiązanie wraz z omówieniem. Zaglądnij tam dopiero po uzyskaniu przez Ciebie wyników. Porównaj Twoje rozwiązanie z przykładowym. Życzę, aby Twoje było lepsze.

Skoro anagramy zbudowane są dokładnie z tych samych znaków, można w obu badanych słowach posortować znaki, z których te słowa się składają. Jeżeli badane słowa są anagramami, po procedurze sortowania powinny być takie same.

W poniższym rozwiązaniu (Listing 1) została zdefiniowana funkcja "sortuj()", która korzystając z metody sortowania bąbelkowego zwraca posortowany ciąg znaków. Pamiętajmy, że jeśli funkcji jako argument zostaje dostarczona tablica, funkcja taka pracuje na oryginale tej tablicy, a nie na kopii, jak to jest w przypadku innego rodzaju zmiennych.

Klucz CKE

Zwróć uwagę na to, że inaczej rozwiązuje się zadanie z kluczem odpowiedzi, a inaczej, gdy nieznane są nam wyniki. Na maturze nie ma dostępu do klucza, dlatego zapoznanie się z kluczem odłóż na sam koniec Twoich ćwiczeń.

W nagłówku zdjęcie z Wenecji

Źródło: https://fshoq.com/free-photos/p/267/panorama-of-venice (publikowane na wolnych licencjach)