Вопрос задан 22.06.2023 в 08:34. Предмет Информатика. Спрашивает Кириллов Макс.

Помогите пожалуйста срочно!!! Определите значение переменных s и i после выполнения следующих

операторов:s:=0;i:=3; repeat s:=s+i; i:=i+2; until i>10;writeln('s= ', s);writeln('i= ', i);
0 0
Перейти к ответам

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

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

бро, я в 5 классе... но раз ты так хочешь..

Теория

div - это целочисленное деление. Это значит что при деление на числа, остаток отбрасывается.

Пример (10 div 3):

1. Если мы просто разделим 10 на 3, то мы получим 3.3333. При деление целочисленным делением (div-ом), дробная часть отбрасывается. И ответ будет просто 3.

Вот еще примеры:

   2 div 2 = 1   | (2 / 2 = 0)

   2 div 3 = 0  | (2 / 3 = 0.66)

   5 div 3 = 1   | (5 / 3 = 2)

   13 div 6 = 2 | (13 / 6 = 2.16)

Решение

Изначально s = 0, а i = 3

Цикл repeat-until означает что цикл будет совершаться, пока условие в until не будет выполнено.

Мы попадаем в цикл. Сначала выполняется s + 5, что будет равно 5, а после выполняется div с i: 5 div 3. Мы получаем ответ 1 и это же значение заносится в переменную s. От переменной i отнимается 1 и оно становится 2.

После итерации цикла, происходит проверка условия until. Так как 2 не меньше 1, цикл вновь запускается

Вторая итерация. s уже равна 1, значит: 1 + 5 div 2 -> 6 div 2 -> 3. s = 3. От i опят отнимается единица.

Опять завершаем цикл и проверяем условие 1 не меньше 1 (они равны), значит будет еще одна итерация.

Третья итерация. s = 3, значит 3 + 5 div 1 -> 8 div 1 -> 8. В s заносится 8. От i отнимаем 1 и i = 0

Так как 0 < 1, условие выполняется и мы выходим из цикла. Программа завершена. В s находится цифра 8, в i лежит 0

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

Давайте разберём, что происходит в этом коде:

  1. s := 0; - Инициализация переменной s значением 0.
  2. i := 3; - Инициализация переменной i значением 3.
  3. repeat - Начало цикла repeat-until.
  4. s := s + i; - К текущему значению s добавляется значение i.
  5. i := i + 2; - К текущему значению i добавляется 2.
  6. until i > 10; - Проверка, завершается ли цикл. Цикл завершится, когда i будет больше 10.
  7. Если i меньше или равно 10, то выполнение цикла повторяется с шага 4.
  8. Как только i становится больше 10, цикл завершается.
  9. writeln('s= ', s); - Вывод значения s.
  10. writeln('i= ', i); - Вывод значения i.

Теперь давайте выполним операции:

  • Изначально s равно 0, а i равно 3.
  • Внутри цикла s увеличивается на i, то есть 3, и становится 3.
  • Затем i увеличивается на 2 и становится равным 5.
  • Цикл повторяется снова, и s становится равным 8, а i равно 7.
  • Цикл повторяется снова, и s становится равным 15, а i равно 9.
  • Последний шаг цикла увеличивает i на 2, и i становится равным 11.
  • Теперь условие i > 10 истинно, и цикл завершается.

После завершения цикла:

  • s будет равно 15.
  • i будет равно 11.

Итак, вывод на экран будет следующим:

makefile
s= 15 i= 11
0 0

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

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

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

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