Машина Тьюринга
Здравствуйте!
Написала программу для определения, слова, в которое преобразует данная машина входные данные исходя из стандартного положения. Программа работает правильно, но необходимо внести какие то новшества, точнее проявить фантазию.
То, что могла я изменила, но больше ничего нового придумать не смогла.(
Не могли Вы бы помощь мне в решении этой проблемы?!
program upr1;uses crt;
var a,s:string;
i,j,k,q:integer;
begin
clrscr;
writeln('введите слово :');
readln(s);
s:='aaaaa'+s+'aa';
i:=length(s)-2;
q:=1;
for j:=i downto 1
do a:=a+' ';
while q<>0 do
begin
a:=#24;
writeln(s);
writeln(a);
a:=' ';
if q=1 then case s of
'a': begin q:=4; s:='a'; inc(i);end;
'1': begin q:=2; s:='1'; dec(i);
end; end;
if q=2 then case s of
'a': begin q:=6; s:='a'; inc(i);end;
'1': begin q:=3; dec(i);
end;end;
if q=3 then case s of
'a': begin q:=6; s:='a'; inc(i);end;
'1': begin q:=1; s:='1'; dec(i);
end;end;
if q=4 then case s of
'a':begin q:=0; s:='1';end;
'1': begin q:=5; s:='a';
end;end;
if q=5 then case s of
'a':begin q:=4; s:='a'; inc(i);end;
'1': begin q:=5; s:='a';
end; end;
if q=6 then case s of
'a':begin q:=0; s:='a';end;
'1': begin q:=7; s:='a';
end;end;
if q=7 then case s of
'a':begin q:=6; s:='a'; inc(i);end;
'1': begin q:=7; s:='a';
end; end;
delay(150);
end;
writeln(s);
end.
Здравствуйте!
Написала программу для определения, слова, в которое преобразует данная машина входные данные исходя из стандартного положения. Программа работает правильно, но необходимо внести какие то новшества, точнее проявить фантазию.
То, что могла я изменила, но больше ничего нового придумать не смогла.(
Не могли Вы бы помощь мне в решении этой проблемы?!
program upr1;uses crt;
var a,s:string;
i,j,k,q:integer;
begin
clrscr;
writeln('введите слово :');
readln(s);
s:='aaaaa'+s+'aa';
i:=length(s)-2;
q:=1;
for j:=i downto 1
do a:=a+' ';
while q<>0 do
begin
a:=#24;
writeln(s);
writeln(a);
a:=' ';
if q=1 then case s of
'a': begin q:=4; s:='a'; inc(i);end;
'1': begin q:=2; s:='1'; dec(i);
end; end;
if q=2 then case s of
'a': begin q:=6; s:='a'; inc(i);end;
'1': begin q:=3; dec(i);
end;end;
if q=3 then case s of
'a': begin q:=6; s:='a'; inc(i);end;
'1': begin q:=1; s:='1'; dec(i);
end;end;
if q=4 then case s of
'a':begin q:=0; s:='1';end;
'1': begin q:=5; s:='a';
end;end;
if q=5 then case s of
'a':begin q:=4; s:='a'; inc(i);end;
'1': begin q:=5; s:='a';
end; end;
if q=6 then case s of
'a':begin q:=0; s:='a';end;
'1': begin q:=7; s:='a';
end;end;
if q=7 then case s of
'a':begin q:=6; s:='a'; inc(i);end;
'1': begin q:=7; s:='a';
end; end;
delay(150);
end;
writeln(s);
end.