1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)
Семакин, Залогова
8 класс
Класс
8
Предмет
Информатика
Автор
Семакин, Залогова

Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)

Задача

Домашнее задание №25

Тема: Ветвления в вычислительных алгоритмах

  1. Запишите на алгоритмическом языке алгоритм, соответствующий данной блок-схеме.
  2. Что получится в результате работы следующего алгоритма, если: 1) $$a=2,\ b=5$$; 2) $$a=0,\ b=-2$$?
  3. Запишите алгоритм нахождения минимума из трёх целых чисел $$a,\ b,\ c$$.
  4. Зарисуйте блок-схему для задачи номер 3.

Практическое задание №21

Тема: Ветвление в вычислительных алгоритмах

1 уровень сложности

  1. Дано целое число $$A$$. Если значение $$A>0$$, то необходимо увеличить его на единицу. Разработать схему алгоритма для решения этой задачи. Протестировать алгоритм для $$A=5$$, $$A=-4$$, $$A=0$$.
  2. Дано целое число $$A$$. Если значение $$A<0$$, то необходимо удвоить его. Разработать схему алгоритма для решения этой задачи. Протестировать алгоритм для $$A=6$$, $$A=-10$$, $$A=0$$.
  3. Дано целое число $$A$$. Если значение $$A\ne 0$$, то необходимо уменьшить его на 4. Написать программу для решения этой задачи. Протестировать алгоритм для $$A=2$$, $$A=-1$$, $$A=0$$.
  4. Дано целое число $$A$$. Если значение $$A>0$$, то необходимо увеличить его на единицу, иначе уменьшить на 1. Разработать схему алгоритма для решения этой задачи. Протестировать алгоритм для $$A=3$$, $$A=0$$, $$A=-12$$.
  5. Дано целое число $$A$$. Если значение $$A=0$$, то необходимо увеличить его на 3, иначе присвоить $$A$$ значение, равное 0. Разработать схему алгоритма для решения этой задачи. Протестировать алгоритм для $$A=0$$, $$A=-1$$, $$A=8$$.
  6. Даны два действительных числа $$X$$ и $$Y$$. Если $$X>Y$$, то вычислить произведение этих чисел, иначе их сумму. Разработать схему алгоритма для решения этой задачи. Протестировать алгоритм на трёх различных тестах: $$X>Y$$, $$X=Y$$ и $$X

2 уровень сложности

  1. Даны два действительных числа $$X$$ и $$Y$$, не равные друг другу. Заменить меньшее из этих чисел половиной их суммы, а большее — их удвоенным произведением. Разработать схему алгоритма для решения этой задачи. Протестировать алгоритм на числах 5,5 и −4,3, а также на числах 1 и 14,5.
  2. Точка $$A$$ задана координатами $$X,Y$$. Разработать схему алгоритма, который устанавливает значение флага $$F=1$$, если точка принадлежит заштрихованной области (см. рисунок 1), и значение флага $$F=0$$ в противном случае. Вывести значение $$F$$. Протестировать алгоритм для точек $$(1.5,2)$$, $$(0,0)$$, $$(-1.5,1)$$, $$(1,-1.2)$$, $$(-2,-1)$$.
  3. Точка $$A$$ задана координатами $$X,Y$$. Разработать схему алгоритма, который устанавливает значение флага $$F=1$$, если точка принадлежит заштрихованной области (см. рисунок 2), и значение флага $$F=0$$ в противном случае. Вывести значение $$F$$. Протестировать алгоритм для точек $$(2.5,2)$$, $$(1,1)$$, $$(0,0)$$, $$(1,0)$$, $$(2,-1)$$.
  4. Точка $$A$$ задана координатами $$X,Y$$. Разработать схему алгоритма, который устанавливает значение флага $$F=1$$, если точка принадлежит заштрихованной области (см. рисунок 3), и значение флага $$F=0$$ в противном случае. Вывести значение $$F$$. Протестировать алгоритм для точек $$(0,0.8)$$, $$(0,0)$$, $$(-1.5,1)$$, $$(1,1.5)$$, $$(-2,-1)$$.
  5. Разработать схему алгоритма для определения минимума из трёх чисел без использования логических операций. Протестировать алгоритм на следующих исходных данных: а) 2, 5, 1; б) 0, −2, 8; в) −4, 5, 10.
  6. Разработать схему алгоритма для подсчёта количества отрицательных чисел среди целых чисел $$a,\ b,\ c$$. Протестировать алгоритм для всех возможных случаев, когда количество отрицательных чисел равно 0, 1, 2 и 3.

3 уровень сложности

  1. Треугольник задан длинами сторон $$A,\ B,\ C$$. Разработать схему алгоритма, определяющую, существует ли данный треугольник. Если треугольник существует, то установить значение флага $$F=1$$, иначе $$F=0$$. Для решения этой задачи использовать сложные логические условия. Протестировать алгоритм для следующих исходных данных: а) $$A=3,\ B=4,\ C=5$$; б) $$A=1,\ B=1,\ C=1$$; в) $$A=0,\ B=4,\ C=5$$; г) $$A=-3,\ B=6,\ C=5$$; д) $$A=2,\ B=1,\ C=8$$.
  2. Разработать схему алгоритма для отыскания $$\max(\min(a,b),\min(c,d))$$, не используя сложные логические условия и вложенные ветвления. Числа $$a,\ b,\ c,\ d$$ — целые. Протестировать алгоритм для следующих исходных данных: а) $$a=4,\ b=5,\ c=6,\ d=9$$; б) $$a=2,\ b=1,\ c=6,\ d=9$$; в) $$a=2,\ b=1,\ c=8,\ d=4$$; г) $$a=12,\ b=1,\ c=6,\ d=9$$.
  3. Точка $$A$$ задана координатами $$X,Y$$. Разработать схему алгоритма, который устанавливает значение флага $$F=1$$, если точка принадлежит заштрихованной области (см. рисунок 4), и значение флага $$F=0$$ в противном случае. Вывести значение $$F$$. Протестировать алгоритм для точек $$(0,0)$$, $$(1,0)$$, $$(1.5,1)$$, $$(-1,1.5)$$, $$(-2,-1)$$, $$(2,-1)$$, $$(1,-1)$$, $$(-1,1)$$.
  4. Точка $$A$$ задана координатами $$X,Y$$. Разработать схему алгоритма, который устанавливает значение флага $$F=1$$, если точка принадлежит заштрихованной области (см. рисунок 5), и значение флага $$F=0$$ в противном случае. Вывести значение $$F$$. Протестировать алгоритм для точек $$(0,0)$$, $$(1.5,1)$$, $$(2,1)$$, $$(1,-1)$$, $$(-0.5,-0.2)$$, $$(-2,-1)$$, $$(-1,-2)$$, $$(-1,1)$$, $$(-3,1)$$.
  5. Точка $$A$$ задана координатами $$X,Y$$. Разработать схему алгоритма, который устанавливает значение флага $$F=1$$, если точка принадлежит заштрихованной области (см. рисунок 6), и значение флага $$F=0$$ в противном случае. Вывести значение $$F$$. Протестировать алгоритм для точек $$(0,0)$$, $$(2,2)$$, $$(0.5,0.5)$$, $$(0.5,-1.5)$$, $$(-0.5,0.5)$$, $$(-2,-1)$$, $$(-1,-2)$$, $$(-1,1)$$, $$(2,0)$$.
Подробный ответ

1. Алгоритм по блок-схеме:

алг
нач
. цел A, B, C, D
. ввод A, B, C
. если A < C
. . то D := A
. всё
. если B < C
. . то A := D
. всё
. D := D + A
. вывод D
кон

2. Работа алгоритма:

1) при $$a=2$$, $$b=5$$: $$a>0$$ и $$b>0$$, значит $$c=a+b=2+5=7$$.

2) при $$a=0$$, $$b=-2$$: $$a>0$$ — ложь, $$b>0$$ — ложь, значит $$c=0$$.

3. Алгоритм нахождения минимума из трёх целых чисел:

алг CC_3
нач
. цел A, B, C, D
. ввод A, B, C
. D := A
. если B < D
. . то D := B
. всё
. если C < D
. . то D := C
. всё
. вывод D
кон

4. Блок-схема для этого алгоритма должна содержать: ввод $$A, B, C$$, присваивание $$D:=A$$, затем два последовательных условия $$B<D$$ и $$C<D$$ с возможным изменением $$D$$, после чего вывод $$D$$.

Выполнение

1 уровень сложности:

1. Если $$A>0$$, то $$A:=A+1$$.

Проверка:

  • $$A=5 \rightarrow 6$$
  • $$A=-4 \rightarrow -4$$
  • $$A=0 \rightarrow 0$$

2. Если $$A<0$$, то $$A:=2A$$.

Проверка:

  • $$A=6 \rightarrow 6$$
  • $$A=-10 \rightarrow -20$$
  • $$A=0 \rightarrow 0$$

3. Если $$A\neq 0$$, то $$A:=A-4$$.

алг
нач
. цел A
. ввод A
. если A <> 0
. . то A := A — 4
. всё
. вывод A
кон

Проверка:

  • $$A=2 \rightarrow -2$$
  • $$A=-1 \rightarrow -5$$
  • $$A=0 \rightarrow 0$$

4. Если $$A>0$$, то $$A:=A+1$$, иначе $$A:=A-1$$.

Проверка:

  • $$A=3 \rightarrow 4$$
  • $$A=0 \rightarrow -1$$
  • $$A=-12 \rightarrow -13$$

5. Если $$A=0$$, то $$A:=A+3$$, иначе $$A:=0$$.

Проверка:

  • $$A=0 \rightarrow 3$$
  • $$A=-1 \rightarrow 0$$
  • $$A=8 \rightarrow 0$$

6. Если $$X>Y$$, то $$R:=X\cdot Y$$, иначе $$R:=X+Y$$.

алг T_6
нач
. вещ x, y, r
. вывод «введи x, y > «
. ввод x, y
. если x > y
. . то r := x * y
. . иначе r := x + y
. всё
. вывод r
кон

Проверка:

  • $$x=6.9$$, $$y=6.5 \rightarrow r=6.9\cdot 6.5=44.85$$
  • $$x=5$$, $$y=5 \rightarrow r=10$$
  • $$x=3.3$$, $$y=4.2 \rightarrow r=7.5$$

2 уровень сложности:

1. Если числа не равны, меньшее заменить половиной суммы, большее — удвоенным произведением.

алг T_1
нач
. вещ x, y, a, b
. вывод «введи x, y >»
. ввод x, y
. a := x; b := y
. если x < y
. . то x := (a + b) / 2
. . иначе y := 2 * a * b
. всё
. вывод x, ‘ ‘, y
кон

Проверка:

  • $$x=5.5$$, $$y=-4.3 \rightarrow x=-47.3,\ y=0.6$$
  • $$x=1$$, $$y=14.5 \rightarrow x=7.75,\ y=29.0$$

2. Флаг принадлежности точки заштрихованной области:

алг T_2
нач
. вещ x, y
. цел f
. вывод «введи x, y >»
. ввод x, y
. если (x > 0) и (y > 0)
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Принадлежит»)
. . иначе вывод («Не принадлежит»)
. всё
кон

Проверка:

  • $$(1.5, 2) \rightarrow 1$$
  • $$(0, 0) \rightarrow 0$$
  • $$(-1.5, 1) \rightarrow 0$$
  • $$(1, -1.2) \rightarrow 0$$
  • $$(-2, -1) \rightarrow 0$$

3. Для области на рисунке 2:

алг T_3
нач
. вещ x, y
. цел f
. вывод «введи x, y >»
. ввод x, y
. если (x > 1) и (y > 1)
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Принадлежит»)
. . иначе вывод («Не принадлежит»)
. всё
кон

Проверка:

  • $$(2.5, 2) \rightarrow 1$$
  • $$(1, 1) \rightarrow 0$$
  • $$(0, 0) \rightarrow 0$$
  • $$(1, 0) \rightarrow 0$$
  • $$(2, -1) \rightarrow 0$$

4. Для области на рисунке 3:

алг T_4
нач
. вещ x, y
. цел f
. вывод «введи x, y >»
. ввод x, y
. если y > 0.5
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Принадлежит»)
. . иначе вывод («Не принадлежит»)
. всё
кон

Проверка:

  • $$(0, 0.8) \rightarrow 1$$
  • $$(0, 0) \rightarrow 0$$
  • $$(-1.5, 1) \rightarrow 1$$
  • $$(1, 1.5) \rightarrow 1$$
  • $$(-2, -1) \rightarrow 0$$

5. Минимум из трёх чисел без логических операций:

алг T_5
нач
. цел a, b, c, m
. вывод «введи a, b, c >»
. ввод a, b, c
. m := a
. если b < m
. . то m := b
. . иначе если c < m то m := c
. . всё
. всё
. вывод m
кон

Проверка:

  • $$2,\ 5,\ 1 \rightarrow 1$$
  • $$0,\ -2,\ 8 \rightarrow -2$$
  • $$-4,\ 5,\ 10 \rightarrow -4$$

6. Подсчёт количества отрицательных чисел:

алг T_6
нач
. цел a, b, c, k
. вывод «введи a, b, c >»
. ввод a, b, c
. k := 0
. если a < 0 то k := k + 1 всё
. если b < 0 то k := k + 1 всё
. если c < 0 то k := k + 1 всё
. вывод k
кон

Проверка:

  • $$2,\ 5,\ 1 \rightarrow 0$$
  • $$0,\ -2,\ 8 \rightarrow 1$$
  • $$-4,\ -5,\ 10 \rightarrow 2$$
  • $$-1,\ -6,\ -3 \rightarrow 3$$

3 уровень сложности:

1. Треугольник существует, если выполняются все неравенства треугольника:

алг T_1
нач
. цел a, b, c, f
. вывод «введи a, b, c >»
. ввод a, b, c
. если (a + b > c) и (a + c > b) и (b + c > a)
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Существует»)
. . иначе вывод («Не существует»)
. всё
кон

Проверка:

  • $$3, 4, 5 \rightarrow 1$$
  • $$1, 1, 1 \rightarrow 1$$
  • $$0, 4, 5 \rightarrow 0$$
  • $$-3, 6, 5 \rightarrow 0$$
  • $$2, 1, 8 \rightarrow 0$$

2. Для выражения $$\max(\min(a,b), \min(c,d))$$:

алг T_2
нач
. цел a, b, c, d, max1, min1, min2
. вывод «введи a, b, c, d >»
. ввод a, b, c, d
. если a > b то min1 := b иначе min1 := a всё
. если c > d то min2 := d иначе min2 := c всё
. если min1 > min2 то max1 := min1 иначе max1 := min2 всё
. вывод max1
кон

Проверка:

  • $$4, 5, 6, 9 \rightarrow 6$$
  • $$2, 1, 6, 9 \rightarrow 6$$
  • $$2, 1, 8, 4 \rightarrow 4$$
  • $$12, 1, 6, 9 \rightarrow 6$$

3. Для области на рисунке 4:

алг T_3
нач
. цел f
. вещ x, y
. вывод «введи x, y >»
. ввод x, y
. если (x < -1) или (x > 1)
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Принадлежит»)
. . иначе вывод («Не принадлежит»)
. всё
кон

Проверка:

  • $$(0, 0) \rightarrow 0$$
  • $$(1, 0) \rightarrow 0$$
  • $$(1.5, 1) \rightarrow 1$$
  • $$(-1, 1.5) \rightarrow 0$$
  • $$(-2, -1) \rightarrow 1$$
  • $$(2, -1) \rightarrow 1$$
  • $$(1, -1) \rightarrow 0$$
  • $$(-1, 1) \rightarrow 0$$

5. Для области на рисунке 5:

алг T_5
нач
. цел f
. вещ x, y
. вывод «введи x, y >»
. ввод x, y
. если ((x > -3) и (x < 2) и (y > 0) и (y < 2)) или ((y <= 0) и (x * x + y * y < 1))
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Принадлежит»)
. . иначе вывод («Не принадлежит»)
. всё
кон

Проверка:

  • $$(0, 0) \rightarrow 1$$
  • $$(1.5, 1) \rightarrow 1$$
  • $$(2, 1) \rightarrow 0$$
  • $$(1, -1) \rightarrow 0$$
  • $$(-0.5, -0.2) \rightarrow 1$$
  • $$(-2, -1) \rightarrow 0$$
  • $$(-1, -2) \rightarrow 0$$
  • $$(-1, 1) \rightarrow 0$$
  • $$(-3, 1) \rightarrow 0$$

6. Для области на рисунке 6:

алг T_6
нач
. цел f
. вещ x, y
. вывод «введи x, y >»
. ввод x, y
. если ((x > -1) и (x < 1) и (y <= 0) и (y < 2)) или ((y >= 0) и (x * x + y * y < 1))
. . то f := 1
. . иначе f := 0
. всё
. если f = 1 то вывод («Принадлежит»)
. . иначе вывод («Не принадлежит»)
. всё
кон

Проверка:

  • $$(0, 0) \rightarrow 1$$
  • $$(2, 2) \rightarrow 0$$
  • $$(0.5, 0.5) \rightarrow 1$$
  • $$(0.5, -1.5) \rightarrow 1$$
  • $$(-0.5, 0.5) \rightarrow 1$$
  • $$(-2, -1) \rightarrow 0$$
  • $$(-1, -2) \rightarrow 0$$
  • $$(-1, 1) \rightarrow 0$$
  • $$(2, 0) \rightarrow 0$$

Ответ

1) $$D$$ — значение, полученное по алгоритму; 2) $$7$$ и $$0$$; 3) алгоритм нахождения минимума приведён выше; 4) блок-схема строится по этому алгоритму.

Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 1
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 2
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 3
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 4
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 5
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 6
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 7
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 10
Иллюстрация к решению «Дополнительное задание Параграф 21 ГДЗ Семакин 8 класс (Информатика)», 11



Общая оценка
3.6 / 5
Другие учебники
Другие предметы