Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Інститут комп’ютерних наук та інформаційних технологій
Кафедра ПЗ
ЗВІТ
Лабораторна робота № 5
з курсу «Дискретна математика»
Тема: " Побудова істиннісних таблиць ”
Завдання:
Побудувати істиннісну таблицю для виразу з проміжними кроками (атоми p,q,s). (p ~ q) and (not s -> q)
Відлагодити, скомпілювати і зберегти програму.
Оформити звіт про роботу.
Текст програми
program logika;
uses crt;
type boolmasyv = array[1..8]of boolean;
const T=true;
F=false;
p:boolmasyv=(T,T,T,T,F,F,F,F);
q:boolmasyv=(F,F,T,T,T,T,F,F);
s:boolmasyv=(F,T,F,T,T,F,T,F);
var i:integer;
not_s,p__q,nots__q,result:boolmasyv;
begin
clrscr;
{(p~q)^(not_s->q)}
for i:=1 to 8 do
begin
not_s[i]:=not s[i];
if p[i]=q[i] then p__q[i]:=true else p__q[i]:=false;
if (not_s[i]=true)and(q[i]=false) then nots__q[i]:=false else nots__q[i]:=true;
end;
for i:=1 to 8 do
result[i]:=(p__q[i]) and (nots__q[i]);
{Vuvid rezyltativ}
writeln(' P Q S not S P~Q not_S->Q (P~Q)^(not_S->Q)');
writeln;
writeln;
for i:=1 to 8 do
begin
writeln(P[i],' ',Q[i],' ',s[i],' ',not_s[i],
' ',p__q[i],' ',nots__q[i],' ',
result[i]);
writeln;
end;
readln;
end.
Висновок:
На цій лабораторній роботі я навчився будувати таблиці істинностей для логічних виразів в середовищі Turbo Pascal.