Wprowadzenie do informatyki
Informatyka, I rok, studia dzienne i zaoczne
Egzamin/ zaliczenie komisyjne, 16.03.00, czas: 60 min

  1. Liczby Fibonacciego można zdefiniować w następujący sposób:

    F(0)= 0, F(1)= 1
    F( j+2)= F( j+1) + F( j) dla j ≥ 0.

    Przyjmijmy, że ktoś napisał już deklarację funkcji F( j) obliczającej j-tą liczbę Fibonacciego. Zakładając, że funkcja F( j) jest już zrealizowana, uzupełnij poniższy schemat blokowy w taki sposób, aby badał, czy podana liczba N jest liczbą Fibonacciego. N jest liczbą Fibonacciego wtedy i tylko wtedy, gdy istnieje takie j, że F( j)= N. Jeśli N jest liczbą Fibonacciego, to powinien ukazac się napis "TAK", a w przeciwnym razie "NIE".

  2. . Maszyna Turinga ma dopisywać początkowe zero do podanego ciągu binarnego i po zakończeniu obliczeń głowica ma się znajdować nad skrajnie lewym symbolem (czyli w podobnej pozycji jak na początku obliczeń). Na przykład dla ciągu wejściowego 111 wyjście będzie miało postać 0111 i głowica będzie nad zerem. Uzupełnij podane sterowanie.

  3. Odwracanie ciągu polega na przepisaniu go od strony prawej do lewej. Niech r(a) będzie funkcją, która skończonemu niepustemu ciągowi a składającemu się z zer i jedynek przypisuje ciąg odwrotny. Mamy zatem r(10)= 01, r(100)= 001, r(011)= 110, r(110)= 011, r(101)= 101. Uzupełnij poniższą rekurencyjną definicję funkcji r.

  4. Napisz program w AWK, który dla podanego ciągu wierszy, z których każdy zawiera imię i nazwisko odddzielone od siebie spacjami wygeneruje w HTMLu tabelkę z tymi danymi. Na przykład dla danych
        Jan Kowalski
        Ewa Wiśniewska
    powinniśmy otrzymać


  5. Uzupełnij poniższy schemat blokowy tak, aby obliczał największy wspólny dzielnik dwóch liczb naturalnych a,b. Na przykład dla 24 i 40 powinniśmy otrzymać 8, a dla 24 i 35 powinno być 1.


Stronę opracowała Ewa Gałkowska. Ostatnia modyfikacja: