Wiązka zadań Ciągi rekurencyjne

Dana jest następująca funkcja rekurencyjna:

funkcja wynik( i )
  jeżeli i < 3
    zwróć 1 i zakończ;
  w przeciwnym razie
    jeżeli i mod 2 = 0
      zwróć wynik(i – 3) + wynik(i – 1) + 1
    w przeciwnym razie
      zwróć wynik(i – 1) mod 7

Uwaga: Operator mod oznacza resztę z dzielenia.

1.1. Uzupełnij poniższą tabelkę:

i wynik( i )
2 1
3 1
4 3
5 3
6 5
7 5
8 9

Ćwiczenie 1

Zdefiniuj funkcję ile_cyfr(liczba), której wynikiem będzie liczba cyfr danej liczby. Sprawdź działanie funkcji dla podanych poniżej parametrów.

  • Wynikiem funkcji ile_cyfr(123) jest 3.
  • Wynikiem funkcji ile_cyfr(17923) jest 5.

Wskazówka
Zauważ, że algorytm sumowania cyfr opiera się na wyodrębnianiu cyfr od końca i kolejno ich sumowania. W każdym kroku wyliczana jest ostatnia cyfra jako reszta dzielenia przez 10 oraz liczba jest dzielona przez 10.

Matura 2007. Zadanie 5.

Zadanie. (20 pkt)

System audio-tele zarejestrowała numery telefonów komórkowych osób, które telefonowały pod wskazany numer, aby otrzymać nagrodę. Wiele osób, licząc na zwiększenie prawdopodobieństwa otrzymania wygranej, dzwoniło wielokrotnie. W pliku tekstowym o nazwie telefony.txt znajduje si 1000 zarejestrowanych numerów telefonów (połączeń), w tym także wielokrotnie zapisane numery telefonów osób, które bardzo chciały wygrać.

Każdy numer telefonu umieszczony jest w jednym wierszu.

Korzystając z danych umieszczonych w pliku telefony.txt, wykonaj polecenia a) – h). Każdą odpowiedź do punktów a) – g) umieść w pliku o nazwie zad_6.txt poprzedzając ją oznaczeniem odpowiedniego punktu.

  1. Ile razy telefonowano z numeru 504 669 045?
  2. Z którego numeru telefonowano najczęściej i ile razy?
  3. Ile numerów telefonów pochodzi z grupy numeracyjnej rozpoczynającej si od 511?
  4. I nagroda będzie losowana spośród osób, w których numerze telefonu suma cyfr parzystych jest większa od 42. Ile osób weźmie udział w losowaniu?
  5. II nagroda będzie losowana spośród osób, w których numerze telefonu występuję przynajmniej cztery cyfry 1. Ile osób weźmie udział w losowaniu?
  6. III nagroda będzie losowana spośród osób, w których numerze telefonu ostatni cyfr jest 2, a mediana wszystkich cyfr wchodzących w skład numeru telefonu jest liczbą podzielną przez 3 bez reszty. Ile osób weźmie udział w losowaniu?
  7. Utwórz zestawienie zawieraj ce w pierwszej kolumnie numery telefonów, z których dzwoniono przynajmniej 2 razy, a w drugiej kolumnie odpowiadając liczbę połączeń z tego numeru telefonu.
  8. Wykonaj wykres kolumnowy do zestawienia z punktu g. Pamiętaj o prawidłowym i czytelnym opisie osi wykresu.

Matura 2010 (maj). Zadanie 1. Anagram

Matura 2010 (maj). Zadanie 1. Anagram

Anagram to słowo powstałe z innego słowa przez przestawienie liter. Przez słowo rozumiemy w tym zadaniu dowolny ciąg liter alfabetu łacińskiego.

Przykłady anagramów:
dla słowa: barok – korba, robak, arobk, rokab, orkab …
dla słowa: ranty – tyran, narty, ntyra, natyr, ytnar …
W pliku tekstowym anagram.txt znajduje si 200 wierszy zawierających po 5 słów w każdym wierszu. Słowa oddzielone są znakiem odstępu. Długość każdego ze słów wynosi od 1 do 20 znaków.

Przykład:
abcd cdba dbac cbad dcba
barbakan xle ala foto otof
smok ayszkm lampa ayszkm bakara
skok arabanta oko agnieba dyskietka
… …

Napisz program w wybranym przez siebie języku programowania, za pomoc którego wykonasz poniższe polecenia:

  1. Wyszukaj w pliku anagram.txt te wiersze, w których wszystkie słowa znajdujące się w danym wierszu mają taką samą liczbę znaków. Zapisz te wiersze w pliku odp_4a.txt.
  2. Wyszukaj w pliku anagram.txt wszystkie wiersze tekstu, w których wszystkie słowa są anagramami pierwszego słowa w danym wierszu. Zapisz te wiersze w pliku odp_4b.txt.

 

 

Python – zbiór zadań

Python – zbiór zadań

Zadeklaruj tablicę o rozmiarze 100. Wypełnij tablicę zgodnie z regułami Ciągu Fibbonacciego (pierwszy i drugi element = 1, każdy następny to suma dwóch poprzednich: 1,1,2,3,5,8, itd.).


Czytaj dalej…


Python – zbiór zadań

Python – zbiór zadań

Napisać program, który odgaduje liczbę całkowitą z zakresu 1, …, 100 pomyślaną przez użytkownika. Użytkownik odpowiada jedynie, czy zgadywana liczba jest za mała / za duża.


Czytaj dalej…