Контрольные задания > 13. Чему будут равны значения переменных а и в после выполнения программы при указанных начальных значениях?
Какими будут типы переменных а и b?
a += 1
b += a
a *= b
b /= 5
a -= a
a) a = 4 и b = 0
б) а = 0 и b = 0
Вопрос:
13. Чему будут равны значения переменных а и в после выполнения программы при указанных начальных значениях?
Какими будут типы переменных а и b?
a += 1
b += a
a *= b
b /= 5
a -= a
a) a = 4 и b = 0
б) а = 0 и b = 0
Рассмотрим программу по шагам, предполагая, что начальные значения `a` и `b` не указаны, поэтому будем считать их равными нулю. А в задании не указаны начальные значения, тогда будем считать, что a = 0 и b = 0.
1. `a += 1` - `a = a + 1 = 0 + 1 = 1`
2. `b += a` - `b = b + a = 0 + 1 = 1`
3. `a *= b` - `a = a * b = 1 * 1 = 1`
4. `b /= 5` - `b = b / 5 = 1 / 5 = 0.2`
5. `a -= a` - `a = a - a = 1 - 1 = 0`
Таким образом, после выполнения программы `a = 0`, `b = 0.2`
В Python типы переменных определяются динамически, то есть во время выполнения программы. В данном случае:
* `a` в начале является целым числом (int), затем становится числом с плавающей точкой (float) после деления.
* `b` в начале является целым числом (int), а затем становится числом с плавающей точкой (float) после деления.
Ни один из предложенных вариантов ответа не верен. Но если предположить что округлили b, то ответ a = 0 и b = 0 - будет ближе всего к правде.