возрастание:
const n=10;
var a: array [1..n] of integer;
i,j,v: integer;
begin
write(' исходный массив: ');
for i: =1 to n do
begin
a[i]: =random(90)+10;
write(a[i],' ')
end;
writeln;
for i: =1 to n do
for j: =1 to n-i do
if a[j]> a[j+1] then
begin
v: =a[j];
a[j]: =a[j+1];
a[j+1]: =v
end;
write('отсортированный массив: ');
for i: =1 to n do write(a[i],' ');
end.
убывание:
const n=10;
var a: array [1..n] of integer;
i,j,v: integer;
begin
write(' исходный массив: ');
for i: =1 to n do
begin
a[i]: =random(90)+10;
write(a[i],' ')
end;
writeln;
for i: =1 to n do
for j: =1 to n-i do
if a[j]< a[j+1] then
begin
v: =a[j];
a[j]: =a[j+1];
a[j+1]: =v
end;
write('отсортированный массив: ');
for i: =1 to n do write(a[i],' ');
end.
1. на ленте машины тьюринга содержится последовательностью символов “+”. напишите программу для машины тьюринга, которая каждый второй символ “+” заменит на “–”. замена начинается с правого конца последовательности. автомат в состоянии q1 обозревает один из символов указанной последовательности. кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
2. дано число n в восьмеричной системе счисления. разработать машину тьюринга, которая увеличивала бы заданное число n на 1. автомат в состоянии q1 обозревает некую цифру входного слова. кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
3. дана десятичная запись натурального числа n > 1. разработать машину тьюринга, которая уменьшала бы заданное число n на 1. автомат в состоянии q1 обозревает правую цифру числа. кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
4. дано натуральное число n > 1. разработать машину тьюринга, которая уменьшала бы заданное число n на 1, при этом в выходном слове старшая цифра не должна быть 0. например, если входным словом было “100”, то выходным словом должно быть “99”, а не “099”. автомат в состоянии q1 обозревает правую цифру числа. кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
5. дан массив из открывающих и закрывающих скобок. построить машину тьюринга, которая удаляла бы пары взаимных скобок, т.е. расположенных подряд “( )”.
например, дано “) ( ( ) ( ( )”, надо получить “) . . ( ( ”.
автомат в состоянии q1 обозревает крайний левый символ строки. кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
6. дана строка из букв “a” и “b”. разработать машину тьюринга, которая переместит все буквы “a” в левую, а буквы “b” — в правую части строки. автомат в состоянии q1 обозревает крайний левый символ строки. кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
Поделитесь своими знаниями, ответьте на вопрос: