Чему будет одинаково значение с переменной c в итоге исполненья куска

Чему будет одинаково значение с переменной c в результате исполнения фрагмента программы a:=125; b:=25 ; c:=12; if a div 25=0 then if a mod 12=0 then c:=b div (a mod c) else c:=a div (b mod c) 1)0; 2)1; 3)12; 4)125

Задать свой вопрос
2 ответа
Чтоб выяснить, какой будет верный ответ из предложенных 4 ответов, можно составить программу решения этой задачи на языке программирования Pascal ABC. Эта программа будет иметь вид:

program zadacha;
uses crt;
var a,b,c,d: integer;
begin
a:=125; b:=25 ; c:=12;
if a div 25=0 then
if a mod 12=0 then c:=b div (a mod c) else c:=a div (b mod c);
writeln (c=, ,c);
end.

В нашем случае наружная команда If употребляется в неполной форме (отсутствует ветвь else). Сообразно правилу работы команды If неполной формы, для данных значений a, b и c условие a div 25=0 не будет выполняться, т.е. будет ошибочным, потому что a div 25=5. Это означает, что все команды после служебного слова then (а это команды if a mod 12=0 then c:=b div (a mod c) else c:=a div (b mod c);) производиться не будут. Отсюда можно сделать вывод, что в процессе выполнения программки значение числа c не поменяется, т. е. остается одинаковым 12. Таким образом, ответом к данной задачке будет число под цифрой 3). Число с будет одинаково 12.

Для решения этого фрагмента программки следует знать принцип деяния нескольких функций и операторов языка программирования Паскаль, а конкретно:

  • функция div означает целочисленное дробленье;
  • функция mod отдаёт остаток от дробленья;
  • Ветки оператора if (условие) then else ; производятся так:

- если (условие) верно выполняются операторы программки, стоящие за ключевым словом then;

- если (условие) ошибочно производятся операторы программки, стоящие за главным словом else.

Образцы использования функций div и mod

Результатом исполненья функции div будет целое число без дробной доли, которую компьютер просто откинет, за ненадобностью.
К примеру: 10/2=5,
                    10/3=3,33,
                    10/4=2,5,
но, если воспользоваться функцией div, получится последующее:
10 div 2=5, 10 div 3=3, 10 div 4=2.

Для функции же mod, процесс деления числа 10 на 3 удобнее представить последующим образом: 10/3=(9+1)/3 как видно из данной записи, число 10 это сумма чисел 9 и 1.
Поскольку 9 делится на 3 без остатка, а единица нацело на тройку не делится, то компьютер, при выполнении 10 mod 3 откинет девятку за ненадобностью, и выдаст в качестве ответа число 1 остаток от разделяемого, который целочисленному делению не подлежит.
К примеру, воспользовавшись функцией mod, получим: 10 mod 2=0, как и 10 mod 5=0, а 10 mod 4=2 (так как 10=8+2, из которых 8 делится на 4 без остатка, а двойка на четыре нацело не делится).

Анализ приведенного фрагмента компьютерной программы

Условный кусок программы, обозначенный в задании:

a:=125; b:=25 ; c:=12;

if a div 25=0

                         then

                                     if a mod 12=0

                                                                then c:=b div (a mod c)

                         else c:=a div (b mod c)

переводится на российский язык так:
значение переменной а одинаково 125;
значение переменной b одинаково 25;
значение переменной с одинаково 12;
если целочисленное дробленье числа 125 на число 25 даст 0 (а это неверно: 125/25=5)

          тогда

                      если остаток от дробленья 125 на 12 будет 0 (а это ошибочно: 125 mod 12=5)

                      тогда значение переменной с станет одинаковым:
                      25 целочисленно разделять на остаток от дробленья числа 125 на 12.
                      То есть с:= 25 div 5 (означает переменная с получит значение 5)


          по другому переменная с получит значение:
          125 целочисленно разделять на остаток от деления числа 25 на 12.

                      То есть с:=125 div 1 будет одинаково 125.
                      Правильный ответ: 4) 125.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт