Вопрос задан 26.06.2023 в 13:06. Предмет Информатика. Спрашивает Смирнов Евгений.

Вася написал такую функцию: Pascal: function f(n:integer):integer; var s: integer; begin s := 1;

while n <> 0 do begin s := s * (n mod 10); n := n div 10; end; f := s; end; Python: def f(n): s = 1 while (n != 0): s = s * (n % 10) n = n // 10 return(s) А затем вычислил значение f(512), оно оказалось равным 10. Затем пришла Маша и заменила в его коде в двух строках число 10 на число 2. Чему теперь будет равно значение f(512)? В ответе запишите одно целое число.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Калинин Юрий.

def f(n):

 s = 1

 while (n != 0):

   s = s * (n % 2)

   n = n // 2

 return(s)

print(f(512))

Ответ: 0

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

После того как Маша заменила число 10 на число 2 в двух строках кода, функция f(512) будет вычисляться следующим образом:

  1. Исходно s равно 1.
  2. Затем происходит первая итерация цикла while, где n % 10 равно 2 (последняя цифра числа 512), и значение s умножается на 2, то есть s становится равным 2.
  3. Далее, n делится нацело на 10, и n становится равным 51.
  4. Вторая итерация цикла while выполняется, где n % 10 равно 1, и значение s умножается на 1 (последняя цифра числа 51), оставляя s равным 2.
  5. Затем n снова делится нацело на 10, и n становится равным 5.
  6. Третья и последняя итерация цикла while выполняется, где n % 10 равно 5, и значение s умножается на 5 (последняя цифра числа 5), оставляя s равным 10.

Таким образом, после изменений, выполненных Машей, значение f(512) будет равно 10.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос