Есть ответ 👍

Решить нужно решение словесное описание алгоритма сложения двух обыкновенных дробей a/b и c/d

203
279
Посмотреть ответы 2

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


Включи forever and always the best
lika360
4,6(79 оценок)

1. Результаты выполнения каждой команды ниже.

2. Данную задачу решить линейный алгоритм (с ветвлениями if). Мы подставляли текущие значения переменных, тем самым определяли, выполнится командный блок if или нет. Если выполняется - также подставляли значения переменных, и находили новые значения. Мы выполняли код последовательно и были в роли программы, которая считывает написанный код и также выполняет эти же действия.

Объяснение:

Код с объяснениями:

a, b, c = map(int, input().split()) # вводятся значения a, b, c  с клавиатуры, через пробел

t = k = h = p = s = 0 # регистрируются переменные, равные нулю

if (a + b + c) % 3 == 0:  # если сумма a, b, c  кратна трём, то...

  k = (a + b + c) // 3  # ...присвоить переменной k значение: целая часть от деления (a + b + c) на 3

  t = a - k;  p = b - k;  h = c - k # ...выполнить данные действия

  if t > 0:  # если t больше нуля...

      s = s + t  #...то переменную s увеличить на t

  if p > 0:  # если p больше нуля...

      s = s + p # ...то переменную s увеличить на p

  if h > 0: # если h больше нуля...

      s = s + h  # ...то переменную s увеличить на h

  print(s)  # вывести значение переменной s

else:  # если сумма a, b, c  НЕ кратна трём, то...

  print(-1)  # ...вывести -1

Код с промежуточными результатами при a = 7, b = 20, c = 9:

a, b, c = 7, 20, 9

t = k = h = p = s = 0

if (a + b + c) % 3 == 0: # true. (7 + 20 + 9) % 3 = 36 % 3 = 0 (цел.часть 12)

  k = (a + b + c) // 3 # k = 36 // 3 = 12

  t = a - k;  p = b - k;  h = c - k  # t = 7 - 12 = -5;  p = 20 - 12 = 8;  h = 9 - 12 = -3

  if t > 0:  # false

      s = s + t

  if p > 0: # true. s = 0 + 8 = 8

      s = s + p

  if h > 0:  # false

      s = s + h

  print(s)  # вывод: 8

else:  # не выполнится

  print(-1)

Код с промежуточными результатами при a = 13, b = 11, c = 0:

a, b, c = 13, 11, 0

t = k = h = p = s = 0

if (a + b + c) % 3 == 0: # true. (13 + 11 + 0) % 3 = 24 % 3 = 0 (цел.часть 8)

  k = (a + b + c) // 3  # k = 24 // 3 = 8

  t = a - k;  p = b - k;  h = c - k # t = 13 - 8 = 5;  p = 11 - 8 = 3;  h = 0 - 8 = -8

  if t > 0: # true. s = 0 + 5 = 5

      s = s + t

  if p > 0:  # true. s = 5 + 3 = 8

      s = s + p

  if h > 0: # false

      s = s + h

  print(s) # вывод: 8

else:  # не выполнится

  print(-1)

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS