<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">\documentclass[polish]{article}
\usepackage{babel}
\usepackage[cp1250]{inputenc}
\usepackage[T1]{fontenc}
\newcommand{\impl}{\rightarrow}
\newcommand{\rown}{\leftrightarrow}
\begin{document}
\begin{center}
Zadania na zaliczenie
\end{center}
\begin{enumerate}
\item Na wej"sciu dane jest wyra"renie arytmetyczne zapisane w
postaci infiksowej (standardowej). Wyra"renie mo"re zawiera"c
operatory: +, -, * oraz nawiasy (, )(uwaga na priorytety
operator"ow). Napisa"c program, kt"ory konstruuje drzewo tego
wyra"renia, wy"swietla je na ekranie, a nast"epnie wypisuje w
postaci postfiksowej (ONP).
\item Na wej"sciu dana jesr formu"la logiki zda"n. Formu"la mo"re
zawiera"c sp"ojniki logiczne: negacja, koniunkcja, alternatywa,
implikacja, r"ownowa"rno"s"c. (Sugerowana reprezentacja: -, *,
+,&gt;,=, ale mo"re by"c inna). Napisa"c program, kt"ory skonstruuje
drzewo formu"ly, a nast"epnie sprowadzi j"a do CNF metod"a
przekszta"lcenia otrzymanego drzewa i wynik wy"swietli na ekranie.
Oba drzewa powinny by"c wy"swietlane na "ryczenie u"rytkownika.
Algorytm sprowadzania do CNF znajduje si"e w pliku cnf.ps lub
cnf.pdf.
\item Na wej"sciu dana jesr formu"la logiki zda"n. Formu"la mo"re
zawiera"c sp"ojniki logiczne: negacja, koniunkcja, alternatywa,
implikacja, r"ownowa"rno"s"c. (Sugerowana reprezentacja: -, *,
+,&gt;,=, ale mo"re by"c inna). Napisa"c program, kt"ory skonstruuje
drzewo formu"ly, a nast"epnie sprowadzi j"a do DNF metod"a
przekszta"lcenia otrzymanego drzewa i wynik wy"swietli na ekranie.
Oba drzewa powinny by"c wy"swietlane na "ryczenie u"rytkownika.
Algorytm sprowadzania do DNF znajduje si"e w pliku dnf.ps lub
dnf.pdf.
\item Na wej"sciu dany jest graf nieskierowany, dwa w"ez"ly s i g
oraz funkcja heurystyczna h. Kraw"edzie w grafie s"a etykietowane
kosztem drogi mi"edzy ko"ncami kraw"edzi. Napisa"c program, kt"ory
znajduje drog"e w grafie od s do g pos"luguj"ac si"e algorytmem
A$^*$. Algorytm A$^*$ polega na przeszukiwaniu drzewa
przeszukiwa"n grafu wed"lug funkcji porz"adkuj"acej w"ez"ly
(kolejka priorytetowa) wyznaczonej jako $f(w)=koszt(w)+ h(w)$,
gdzie $koszt(w)$ oznacza sumaryczny koszt drogi od $s$ do $w$, a
$h(w)$ oznacza warto"s"c funkcji heurystycznej dla $w$, b"ed"acej
szacunkowym kosztem drogi  z $w$ do $g$. W kolejnym kroku
rozwa"rany jest w"eze"l o najmniejszej warto"sci funkcji $f$.
Przyk"ladowe dane znajduj"a sie w pliku romania2.ps.
\item Lista dwukierunkowa z elementem aktualnym jest listą dwukierunkową z
trzema wyróżnionymi wskaźnikami: wskaźnik do początku, wskaźnik do
końca i wskaźnik do tzw. rekordu aktualnego. Napisać program
zawierający następujące procedury/funkcje: inicjalizacja,
wstawienie elementu pod wskaźnikiem aktualnym, usuwanie rekordu
pod wskaźnikiem aktualnym, przesuwanie wskaźnika aktualnego
rekordu w lewo lub w prawo. Program powinien demonstrowa"c  takie
operacje w trybie interakcyjnym (tzn. za pomoc"a menu).
\end{enumerate}
\end{document}
</pre></body></html>