Загрузка данных


Практическое занятие № 1
Построение блок-схем алгоритмов

Вариант 2

---

Задание 1

Дано:
A = 1, B = 0, C = -1, D = -2

Алгоритм (по блок-схеме на стр. 8):
1. D := C
2. C := B
3. B := A
4. Вывод A, B, C, D

Решение:
D := C = -1
C := B = 0
B := A = 1
A не изменяется = 1

Ответ: A = 1, B = 1, C = 0, D = -1

---

Задание 2

Дано:
X = 5
(Для варианта 2 по таблице X = 5. В исходном файле ошибочно указано X = 15 — это вариант 1.)

Алгоритм (по блок-схеме на стр. 9):
1. X + 24
2. Если результат > 40, вывести X, иначе — ничего не выводить.

Решение:
X + 24 = 5 + 24 = 29
29 > 40? — Нет

Ответ: 29, условие не выполняется (в условие не попадаем).

---

Задание 3

Дано:
S = 1,8

Алгоритм (по блок-схеме):
1. R := S / 2
2. P := 3,14 * R^2
3. Вывод P

Решение:
R = 1,8 / 2 = 0,9
P = 3,14 * (0,9)^2 = 3,14 * 0,81 = 2,5434

Ответ: P ≈ 2,54

---

Задание 4

Дано:
X = 0

Алгоритм (по блок-схеме на стр. 10):
1. Z := 1
2. i := 0
3. Z := (Z + X/2) / 2
4. i := i + 1
5. Если i < 4, вернуться к шагу 3, иначе вывести Z.

Решение:

Итерация 1: Z = (1 + 0)/2 = 0,5; i = 1
Итерация 2: Z = (0,5 + 0)/2 = 0,25; i = 2
Итерация 3: Z = (0,25 + 0)/2 = 0,125; i = 3
Итерация 4: Z = (0,125 + 0)/2 = 0,0625; i = 4

Условие i < 4 не выполняется.

Ответ: Z = 0,0625

---

Задание 5

Задача (вариант 2):
Дано двузначное число. Найти: число единиц в нём.

Тип алгоритма: линейный.

Дано: N — двузначное число.
Найти: E — число единиц.

Математическая модель:
E = N mod 10

Блок-схема:

[Начало] → [Ввод N] → [E := N mod 10] → [Вывод E] → [Конец]

Пример:
N = 47 → E = 47 mod 10 = 7.

---

Задание 6

Задача (вариант 2):
Известны два расстояния: одно в километрах, другое — в футах (1 фут = 0,305 м). Какое из расстояний меньше?

Тип алгоритма: разветвляющийся.

Дано:
S_km — расстояние в километрах;
S_ft — расстояние в футах.

Найти: какое из расстояний меньше.

Математическая модель:
1. Перевести футы в километры:
   S_ft_km = S_ft * 0,305 / 1000
2. Сравнить S_km и S_ft_km.

Блок-схема:

[Начало] → [Ввод S_km, S_ft] → [S_ft_km := S_ft * 0.305 / 1000] → < S_km < S_ft_km? >
   ├─ Да → [Вывод "S_km меньше"] → [Конец]
   └─ Нет → [Вывод "S_ft_km меньше"] → [Конец]

Пояснение:
Если расстояние в километрах меньше переведённого расстояния в футах, то меньше первое расстояние; иначе — второе.

---

Работа выполнена полностью.