• Nie Znaleziono Wyników

Paradygmaty programowania - Laboratorium 13 (Prolog, cz. III) Zadanie 1.

N/A
N/A
Protected

Academic year: 2021

Share "Paradygmaty programowania - Laboratorium 13 (Prolog, cz. III) Zadanie 1."

Copied!
2
0
0

Pełen tekst

(1)

przygotował Dariusz Wardowski 1 Paradygmaty programowania - Laboratorium 13 (Prolog, cz. III)

Zadanie 1. Napisz predykat o nazwie powtorz, działający w następujący sposób:

?- powtorz(‘Ale proste!!!’, 5).

Ale proste!!!

Ale proste!!!

Ale proste!!!

Ale proste!!!

Ale proste!!!

Zadanie 2. Napisz predykat kalkulator, który dla podanych przez użytkownika dwóch liczb zwróci ich sumę, różnicę oraz iloczyn.

Przykładowe działanie:

?- kalkulator.

Witamy w super programie Kalkulator!

Podaj a: 10.

Podaj b: 14.

suma: 24 różnica: -4 iloczyn: 140 true .

Wskazówki:

Predykat read służy do wczytywania danych ze standardowego wejścia.

Predykat nl – przejście do nowej linii

write(‘tekst’) – wypisuję tekst na standardowe wyjście (ekran).

Zadanie 3. Używając ! (przerwanie nawracania), zmodyfikuj program z zadania 1, aby program działał w pętli:

?- kalkulator.

Witamy w super programie Kalkulator!

Podaj a:15.

Podaj b:-1.

suma: 14 różnica: 16 iloczyn: -15

liczysz dalej [tak/nie]?tak.

Witamy w super programie Kalkulator!

Podaj a:7.

Podaj b:3.

suma: 10 różnica: 4

(2)

przygotował Dariusz Wardowski 2 iloczyn: 21

liczysz dalej [tak/nie]?nie.

true.

Zadanie 4. Napisz program, który po podaniu liczby naturalnej n zapisze do pliku o nazwie przekazanej jako argument ciąg liczb o wartościach 1, 2, 6, 24, …, n!.

silnie(6,’silnie.txt’).

Wskazówka

Poniżej przedstawiam prosty kod zapisujący tekst do pliku:

zapisz_do_pliku :-

open('plik.txt',write,X), current_output(SW),

set_output(X),

write('Sprawdź plik o nazwie plik.txt'), close(X),

set_output(SW).

W przypadku operacji odczytu używamy odpowiednio: read, current_input, set_input.

Zadanie 5. Napisz program, który dla podanej tablicy zapisze do pliku tę tablicę oraz element maksymalny i minimalny tej tablicy. Np.

minmax([1,5,4,2,3],’minmax.txt’).

Zadanie 6. Napisz program, który po odczytaniu z danego pliku liczby n, dopisze (atrybut append) do tego samego pliku listę n kolejnych kwadratów.

np.

?- kwadraty(‘plikZLiczba.txt’).

Zawartość plikZLiczba.txt

5. %kropka jest konieczna

[25,16,9,4,1]

Cytaty

Powiązane dokumenty

Uwaga: ka˙zde zadanie warte jest 6 punkt´ow, niezale˙znie od stopnia trudno´sci.

Napisać operator (%%%), który dla podanych dwóch list zwróci listę wszystkich wspólnych elementów obydwu list. Napisz operator o nazwie moje++, który zwróci sumę dwóch

Jednakże kompilator WATCOM dostępny obecnie jako Open Watcom na warunkach open-source jest doskonale przystosowany do budo- wania 16-bitowych binariów systemu DOS za pomocą

[r]

v.push_back(el) - wstawia element na koniec wektora v.pop_back() - usuwa element z końca wektora v.back() - zwraca element z końca wektora v.empty() - zwraca true, jeśli wektor

[r]

b) Jeśli podano liczbę 1234, to program wypisuje na ekranie „Brawo, to właściwy kod” i w kolejnym wierszu „masz teraz dostęp do tajnych informacji”3. Jeśli nie podano

Zadania są rozmieszczane na procesorach w sposób losowy. Jeśli liczba zadań jest duża procesory zostaną obciążone w sposób równomierny. Wady – musi być duża liczba