Контрольные задания > 1. В результате выполнения фрагмента программы, представленной ниже, переменная С примет значение:
a:=20; b:=(a mod 10)*10; a:=(b*2)+a div 100; if a>b then c:=a+b else c:=b-a;
Вопрос:
1. В результате выполнения фрагмента программы, представленной ниже, переменная С примет значение:
a:=20; b:=(a mod 10)*10; a:=(b*2)+a div 100; if a>b then c:=a+b else c:=b-a;
Ответ:
Давайте пошагово разберем фрагмент программы:
1. `a := 20;` - Переменной `a` присваивается значение 20.
2. `b := (a mod 10) * 10;` - Вычисляем остаток от деления `a` на 10 (то есть `20 mod 10 = 0`), затем умножаем на 10. Значит, `b` становится равным `0 * 10 = 0`.
3. `a := (b * 2) + a div 100;` - Умножаем `b` на 2 (то есть `0 * 2 = 0`), затем прибавляем результат целочисленного деления `a` на 100 (то есть `20 div 100 = 0`). Значит, `a` становится равным `0 + 0 = 0`.
4. `if a > b then c := a + b else c := b - a;` - Проверяем, больше ли `a` чем `b`. Так как `a = 0` и `b = 0`, условие `a > b` ложно (0 не больше 0). Значит, выполняется ветвь `else`, то есть `c := b - a`. Вычисляем `c := 0 - 0 = 0`.
Таким образом, после выполнения фрагмента программы переменная `C` примет значение 0.
**Ответ:** a) 0