Сегодня у нас самостоятельная работа. Работу нужно выполнить в форме реферата.
Продумайте сценарий своего «умного дома», что должна уметь ваша система «умного дома». Определить какие датчики можно вставить в указанных точках комнаты. (Какие датчики используются в умном доме вы можете посмотреть в видеоуроке, который я прикрепила к данной теме).
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 обозревает крайний левый символ строки. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.
Задача 1
program z1;
var n,a,i,k:integer;
begin
write ('Введите количество чисел: ');
read (n);
for i:=1 to n do
begin
write ('Введите число: ');
read (a);
if a = 0 then k:=k+1
end;
writeln('Количество нулей среди чисел: ',k)
end.
Задача 2
program z2;
var n,a,i,m:integer;
begin
write ('Введите количество чисел: ');
read (n);
for i:=1 to n do
begin
write ('Введите число: ');
read (a);
if i = 1 then m:=a;
if a > m then m:=a
end;
writeln('Максимальное число среди чисел: ',m)
end.
или
program z2;
var n,i,m:integer;
a:array[1..100] of integer;
begin
write ('Введите количество чисел (n<=100): ');
read (n);
for i:=1 to n do
begin
write ('Введите число: ');
read (a[i]);
if i = 1 then m:=a[i];
if a[i] > m then m:=a[i]
end;
writeln('Максимальное число среди чисел: ',m)
end.