Простое высказывание :
А =Краснодар - краевой центр.
А=1
Составные высказывания:
1) Сегодня будет дождь или туман.
А= дождь
В=туман
F =A+B
2) Сегодня мороз и идёт снег.
М = мороз
С = снег
F =M*C
У Пети сочинение "весит" 96·1=96 байт
каждый символ - 2 байта
откуда у пети в сочинении 48 символов
у васи в 3 раза больше - 144 символа
и "весит" васино сочинение 18·8=144 байта
откуда 1 символ кодируется 1 байтом, то есть восемью битами
ответ - 8
<u>PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
function gcd(a,b:integer):integer; // НОД
begin
while b<>0 do begin a:=a mod b; Swap(a,b) end;
Result:=a
end;
procedure RedFrac(var a,b:integer); // сокращение дроби
begin
var (sgna,sgnb):=(Sign(a),Sign(b)); // мы должны учитывать знак!
(a,b):=(Abs(a),Abs(b));
var d:=gcd(a,b);
a:=(a div d)*sgna; b:=(b div d)*sgnb
end;
begin
var (a,b):=ReadInteger2('Введите числитель и знаменатель 1-й дроби:');
var (c,d):=ReadInteger2('Введите числитель и знаменатель 2-й дроби:');
(a,b):=(a*c,b*d);
RedFrac(a,b);
Writeln('Результат умножения: ',a,' / ',b)
end.
<u>Пример</u>
Введите числитель и знаменатель 1-й дроби: 32 1024
Введите числитель и знаменатель 2-й дроби: 60 300
Результат умножения: 1 / 160
<u>В качестве бонуса - решение на базе входящей в состав PascalABC.NET библиотеки численных методов</u>
uses NumLibABC;
begin
var (a,b):=ReadInteger2('Введите числитель и знаменатель 1-й дроби:');
var (c,d):=ReadInteger2('Введите числитель и знаменатель 2-й дроби:');
Writeln('Результат умножения: ',Frc(a,b)*Frc(c,d))
end.
Узнаем, насколько сместится чертёжник после выполнения цикла (вторая и третья команда):
x = (3 + 1) × 3 = 12
y = (3 - 2) × 3 = 3
После выполнения всего алгоритма (без команды 1):
x = 12 - 6 = 6
y = 3 + 9 = 12
Чертёжник вернётся в исходную позицию, если задать команду так, чтобы при выполнении этой команды трижды (ведь цикл повторяется три раза) чертёжник сместился на (-6, -12).
x = -6 ÷ 3 = -2
y = -12 ÷ 3 = -4
Ответ: (-2, -4)