Ева12а
16.04.2021 11:50

Срефератом, надо, 25 от web 1.0 к web 3.0 2 курс

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
gusakova2016poly
07.07.2020 12:02
В любом случае, можно просто реализовать на машине Тьюринга, это и будет доказательством. А вообще, вот понятная реализация для десятичной системы (взято с cyberforum): q0 -конечное состояние P - пустой символ L - в лево R - в право N - стоим q1 - начальное состояние 1. бежим в конец числа: q1 n->q1 nR q1 P->q2 PL где n от 0 до 9 2. числа от 0 до 4 можно просто умножить, без запоминания 1 q2 - состояние, когда нет единицы для запоминания q2 0->q2 0L q2 1->q2 2L q2 2->q2 4L q2 3->q2 6L q2 4->q2 8L 3. если цифры от 5 до 9, то нужно запомнить 1 и прибавить на следующем шаге q2 5->q3 0L q2 6->q3 2L q2 7->q3 4L q2 8->q3 6L q2 9->q3 8L q3-состояние, когда мы умножаем на 2 и прибавляем 1 к результату 3. если цифры от 0 до 4, то после "избавления" от 1 ничего запоминать не нужно q3 0->q2 1L q3 1->q2 3L q3 2->q2 5L q3 3->q2 7L q3 4->q2 9L 4. если цифры от 5 до 9, то после "избавления" от 1, мы снова ее запоминаем q3 5->q3 1L q3 6->q3 3L q3 7->q3 5L q3 8->q3 7L q3 9->q3 9L 5. заканчиваем программу, когда встречаем пустой символ q2 P->q0 N q3 P->q0 1N если мы все еще помним 1, а уже число закончилось, то на пустой клетке пишем 1.
0,0(0 оценок)
Ответ:
Karneg
17.09.2021 15:55
//pascal //1) var   a: array[1..5, 1..8] of integer;   i, j: byte;   sumr, sumc: integer; begin   randomize;   writeln('исходный массив': 28);   for i : = 1 to 5 do   begin       for j : = 1 to 8 do       begin           a[i, j] : = random(61)-30;           write(a[i,j]: 5);           if i = 3 then sumr : = sumr + a[i, j];           if j = 5 then sumc : = sumc + a[i, j];       end;   writeln;   end;   writeln('сумма элементов 5 столбца = ', sumc);   writeln('сумма элементов 3 строки = ', sumr); end.//2) var   a: array[1..5, 1..8] of integer;   i, j: byte;   suma, sumb, countv, countg: integer; begin   randomize;   writeln('исходный массив': 28);   for i : = 1 to 5 do   begin       for j : = 1 to 8 do       begin           a[i, j] : = random(300)-150;           write(a[i,j]: 5);           if ((i = 5) and (a[i, j] < 0)) then suma : = suma + a[i, j];           if ((j = 4) and (a[i, j] < 100)) then sumb : = sumb + a[i, j];           if ((i = 4) and (a[i, j] < 5)) then countv : = countv + 1;           if ((j = 2) and (a[i, j] > 15)) then countg : = countg + 1;       end;   writeln;   end;   writeln('сумма отрицательных 5 строки = ', suma);   writeln('сумма меньших 100 4-ого столбца = ', sumb);   writeln('количество меньших 5 4-ой строки = ', countv);   writeln('количество ненулевых, больших 15 2-ого столбца = ', countg); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота