1) Независимо от условия будет выполнен оператор присваивания. a:=b 2) Условие ложное, значит будет выполнен оператор после else write('b') 3) Условие истинное, значит будет выполнен оператор после then write('a') 4) Функции операторов присваивания одинаковы, значит не зависят от условия (a + b - 14 = b - 14 + a) a := a + b - 14 5) Оператор a := a практически ничего не изменяет, значит можно избавится от него if a<b then a:=b 6) То же самое, что и в пункте 5, только нужно поменять истину на ложь if not(a>b) then a:=b 7) Остаток деления на 2 не может быть равен трем, значит условие всегда ложно. Else нет, значит условный оператор можно смело откинуть 8) Остаток от деления на может быть равен или 0 или 1, значит в любом случае условие истинно. Первый условный оператор можно смело откинуть, но вложеннный остается! if a<0 then a:=-a 9) Если a отрицательное, тогда b = a, то есть тоже отрицательно. Если a неотрицательное, тогда b = -a, то есть b отрицательное. Можно записать как модуль числа a, умноженный на -1 b := -abs(a)
Написал на VBS, тот же бейсик, который есть в школах
dim years years = inputbox("Введите ваш возраст") if years = 1 then msgbox("Мне 1 год") end if if years = 2 then msgbox("Мне 2 годa") end if if years = 3 then msgbox("Мне 3 годa") end if if years = 4 then msgbox("Мне 4 годa") end if if (years >= 5) and (years <= 19) then msgbox("Мне "+cstr(years)+" лет") end if
if years >= 20 then dim s s = "Мне "+cstr(years) if (years mod 10 = 1) then s = s + " год" end if if (years mod 10 >= 2) and (years mod 10 <= 4) then s = s + " годa" end if if (years mod 10 >= 5) and (years mod 10 <= 9) then s = s + " лет" end if if (years mod 10 = 0) then s = s + " лет" end if msgbox(s) end if
F=0, при A=B=0 и A=B=1