Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида (p – целое, q—натуральное): а) сложения; б) умножения; в) сокращения дроби. дробь представить следующим типом: type frac=record p: integer; q: 1..32767 end; используя этот модуль найти: 1) сумму двух дробей, результат представить в виде несократимой дроби; 2) произведение двух дробей, результат представить в виде несократимой дроби.
251
449
Ответы на вопрос:
Type frac = record p: integer; q: 1..32767 end; function gcd(a: integer; b: integer): integer; {нахождение нод} var i: integer; begin while b < > 0 do begin a : = a mod b; i : = b; b : = a; a : = i end; result : = a end; function redfrac(a: frac): frac; {сокращение дроби} var igcd: integer; r: frac; begin igcd : = gcd(a.p, a.q); r.p : = a.p div igcd; r.q : = a.q div igcd; redfrac : = r end; function add(a, b: frac): frac; {сложение дробей} var r: frac; begin r.p : = a.p * b.q + b.p * a.q; r.q : = a.q * b.q; add : = redfrac(r) end; function mult(a, b: frac): frac; {умножение дробей} var r: frac; begin r.p : = a.p * b.p; r.q : = a.q * b.q; mult : = redfrac(r) end; var m, n, k: frac; begin m.p : = 4; m.q : = 15; {4/15} n.p : = 9; n.q : = 25; {9/25} k : = add(m, n); writeln(k.p, '/', k.q); k : = mult(m, n); writeln(k.p, '/', k.q); end. результат выполнения программы: 47/75 12/125
var
n, c, a1, p: integer;
begin
write ('введите трехзначное число: ');
readln (n);
if (n < 100) or (n > 999) then begin
writeln ('число не является трехзначным');
exit;
end;
a1 : = 0;
p : = 1;
while n > 0 do begin
c : = n mod 10;
n : = n div 10;
if c = 1 then
a1 : = a1 + 1;
p : = p * c;
end;
writeln ('количество единиц = ', a1);
writeln ('произведение цифр = ', p);
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
maxradew17.01.2022 12:38
-
aki421.05.2021 14:51
-
olegohremenko16.03.2020 20:32
-
sanzik200508.10.2021 13:04
-
karinatrunko12.11.2020 00:34
-
Aiker00003.04.2023 09:17
-
Alina56007.06.2023 01:58
-
ОдУвАнЧиК0718.01.2022 08:10
-
gv8ux16.03.2020 14:31
-
Пусик9521.12.2022 07:10
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.