//Pascal ABC.NET v3.0 сборка 1111
Var
a:integer;
begin
writeln('Our burgers do not prepare you for the exam, but will learn to code');
writeln('Value of burgers:');
readln(a);
case a of
1:writeln('Mineral water');
2:writeln('Coca-cola bottle');
end;
if a>=3 then writeln('One more burger');
end.<span>
Пример ввода:
10
Пример вывода:
One more burger
</span>
Воспользуемся методом потетрадного перевода из двоичной системы в шестнадцатеричную. Запишем 3 группы по 4 двоичных разряда в каждой. Наименьшее число будет содержать 7 нулей в старших разрядах, а наибольшее - в младших. Каждая группа переводится как цифра в шестнадцатеричную систему.
0000 0001 1111(2) = 01F(16) = 31(10) - наименьшее число.
1111 1000 0000(2) = F80(16) = 3968(10) - наибольшее число.
Бит - минимальная еденица
Var
a,c:integer;
b:real;
begin
readln(a,c);
b:=sqrt(c*c-a*a);
writeln('Sabc ',a*b/2);
end.
Алгоритм считается более рациональным, потому что он использует вычисление значения полинома по схеме Горнера, позволяющей минимизировать число умножений и отказаться от операции возведения в степень. Во многих языках программирования операция возведения в степень отсутствует и ее реализуют либо отдельным алгоритмом, либо через основное логарифмическое тождество