Определите значение переменной «a» после выполнения фрагмента программы: a :=10; if a >=10 then a :=a+12 else a := a-7; if a < 5 then a := a+12 else a :=a-7
Var i,x:integer; m:array[10..20] of integer; begin randomize; for i:=10 to 20 do m[i]:=random(11)+10; for i:=10 to 20 do write(m[i],' '); writeln; x:=m[10]; m[10]:=m[20]; m[20]:=x; for i:=10 to 20 do write(m[i],' '); writeln; end.
2)
var max,min,i,x:integer; m:array[10..20] of integer; begin min:=10; max:=10; randomize; for i:=10 to 20 do m[i]:=random(100)+1; for i:=10 to 20 do write(m[i],' '); writeln; for i:=10 to 20 do begin if m[i]<m[min] then min:=i; if m[i]>m[max] then max:=i; end; x:=m[min]; m[min]:=m[max]; m[max]:=x; for i:=10 to 20 do write(m[i],' '); writeln; end.
Самый простой вариант - подсчитать сумму четных и нечётных через цикл, в котором берём остатки от деления. Можно начать с конца и соответственно начать подсчитывать сумму только от первого числа с конца не равного 0. Подсчитываем через целочисленное деление на круглое число и нахождение остатка при деление на один. Данные, чередуя, прибавляем к разным переменным(пусть будут x1 и x2). Затем проверяем остаток от деления одной переменной на другую. Если 0 - "Yes", иначе - "No" For i=5 downto 1 do If i Mod 2 = 1 then a:= a+n div (10^(i-1)) mod 10 Else B=B+ div (10^(i-1)) mod 10;
a = 15
Объяснение:
a := 10; // a = 10
if a >= 10 then // Если a >= 10, тогда (10 >= 10) - условие выполняется
a := a + 12 // a = a + 12 (10 + 12 = 22) ⇒ a = 22
else // Иначе (условие выполнилось, мы сюда не попадаем)
a := a - 7; // a = a - 7
if a < 5 then // Если a < 5, тогда (22 < 5) - условие не выполняется
a := a + 12 // a = a + 12
else // Иначе (сюда уже попадаем, так как условие не выполнилось)
a := a - 7 // a = a - 7 (22 - 7 = 15) ⇒ a = 15