Работа проги: пользователь вводит номер функции и количество переменныхж программа выводит таблицу значений функции и строит СКНФ и СДНФ.
Многие вроде писали подобную программу!!Исправьте ошибки в моей, плиииииз!!!!! Не работает свосем!!!!
| Код | Program lab1; Uses crt; Type m2=arra[1..40,1..40] of string; Var i,j,k,x,x1,h,y,s:string; c:m2; v2:string; m1:array[0..30,0..30] of string;
procedure step(var s:string); var s1,i,n:string; begin s1:=1; for i:=1 to n do s1:=s*2; Writeln(s); end;
procedure vvod(Var a:m2; s:string); Var i,j,n:string; begin for i;=1 to s+1 do begin for j:=1 to n+2 do a[i,j]:=0; end; j:=1; for i:=1 to s+1 do begin a[i,j]:=j-1; inc(j); end; end;
procedure per(v1,n:=string); Var r:array[0..50] of string; v2:string; begin for i:=0 to s-1 do begin k:=i; for j:=n-1 downto 0 do begin h:=k div s; write(h); m1[i,n]:=h; h:=mods; end;
if v1=0 then v2:='0'; v2;=chr(48+(v1 mod 2)); r[i]:=v2; v1;=v2; v1 div 2; Writeln(v2); end; Writeln; Writeln('SKNF='); x1:=0; for i:=0 to s-1 do begin if (x1<>0) and (r[i-1]<>'0') then whrite (' '); for y:=1 to n do begin if r[i]='1' then begin if (r[i,y]='1') then write ('x',y) else write ('-x',y); end; end; end; Writeln; Writeln ('SKNF='); for i:=0 to s-1 do for y:=1 to n do begin if (r[i,y]='0') then write ('x',y); else write('x',y); end; end;
Var n,m,num;integer; begin writeln ('vvedite kolichestvo peremennih'); Readln(n); writeln('vvedite nomer funktsii'); readln(num); step(s); vvod(c,s); per(num,n); readln; end.
|
Не знаю, как перевести в 2-ную систему циферки(процедура per)..... Вообще уже не знаю, что делать с этой прогой!!!!!!
M alexeis1 | Модератор: для выделения кода у нас есть кнопочка "КОД" справа выше поля ввода. Не правда ли так красивее смотрится? |
|