Люди, выручайте

Построить трассировочную таблицу:

1)a:=2; b:=3; c:=5; while a+b>c do c:=a+b;

2)c:=10: k:=3; while c>0 do begin k:=k+5; c:=c-2; end;

Решить задачу: найти количество натуральных чисел не превосходящих числа К, кратных 5.

3)a:=2; b:=3; c:=5; if a*b>c then c:=a*b else c:=a+b; c:=c*10;a:=a*10;b:=b*3;

linalevchuk19 linalevchuk19    3   28.03.2020 15:35    16

Ответы
victoriareih victoriareih  09.01.2024 17:52
Шаг 1: Построение трассировочной таблицы

Нам дано:

1) a:=2; b:=3; c:=5; while a+b>c do c:=a+b;
2) c:=10: k:=3; while c>0 do begin k:=k+5; c:=c-2; end;
3) a:=2; b:=3; c:=5; if a*b>c then c:=a*b else c:=a+b; c:=c*10;a:=a*10;b:=b*3;

Трассировочная таблица - это таблица, в которой последовательно записываются значения переменных после выполнения каждой строки кода.

| Строка кода | Значение a | Значение b | Значение c | Значение k |
|-------------|------------|------------|------------|------------|
| исходные | 2 | 3 | 5 | |

Шаг 2: Выполнение первой строки кода

Подставляем значения переменных a, b и c в условие "a+b>c". Получаем "2+3>5", что равно "5>5". Это условие не выполняется, поэтому пропускаем блок кода внутри цикла while и переходим к следующей строке кода.

| Строка кода | Значение a | Значение b | Значение c | Значение k |
|-------------|------------|------------|------------|------------|
| 1 | 2 | 3 | 5 | |

Шаг 3: Выполнение второй строки кода

Присваиваем переменной c значение 10, а переменной k значение 3. Затем выполняем цикл while. Пока значение c больше 0, мы выполняем блок кода внутри цикла.

На первой итерации: k = 3 + 5 = 8, c = 10 - 2 = 8
На второй итерации: k = 8 + 5 = 13, c = 8 - 2 = 6
На третьей итерации: k = 13 + 5 = 18, c = 6 - 2 = 4
На четвертой итерации: k = 18 + 5 = 23, c = 4 - 2 = 2
На пятой итерации: k = 23 + 5 = 28, c = 2 - 2 = 0

Поскольку значение c стало равным 0, цикл while останавливается.

| Строка кода | Значение a | Значение b | Значение c | Значение k |
|-------------|------------|------------|------------|------------|
| 1 | 2 | 3 | 5 | |
| 2 | 2 | 3 | 0 | 28 |

Шаг 4: Выполнение третьей строки кода

Мы проверяем условие "a*b>c", где a = 2, b = 3, и c = 0. Получаем "2*3>0", что равно "6>0". Условие выполняется, поэтому присваиваем переменной c значение a*b, то есть 2*3 = 6. Затем умножаем значение c на 10: c = 6*10 = 60. Также умножаем значение a на 10 и значение b на 3: a = 2*10 = 20, b = 3*3 = 9.

| Строка кода | Значение a | Значение b | Значение c | Значение k |
|-------------|------------|------------|------------|------------|
| 1 | 2 | 3 | 5 | |
| 2 | 2 | 3 | 0 | 28 |
| 3 | 20 | 9 | 60 | 28 |

Шаг 5: Ответ на задачу

Для того чтобы найти количество натуральных чисел, которые не превосходят число K и кратны 5, мы можем использовать цикл, который будет увеличивать счетчик каждый раз, когда значение числа кратно 5 и не превосходит число K.

Код для этого может выглядеть так:

k := 0; // начальное значение счетчика
for i:=1 to K do begin // перебираем числа от 1 до K
if i mod 5 = 0 then // проверяем, является ли число кратным 5
k := k + 1; // увеличиваем счетчик на 1
end;

Подставляя значение K = 60, мы можем выполнить этот код и получить результат.

| Строка кода | Значение a | Значение b | Значение c | Значение k |
|-------------|------------|------------|------------|------------|
| 1 | 2 | 3 | 5 | |
| 2 | 2 | 3 | 0 | 28 |
| 3 | 20 | 9 | 60 | 28 |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | |
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика