Статистика
Всего в нашей базе более 4 327 664 вопросов и 6 445 978 ответов!

Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида (P – целое, Q—натуральное):

5-9 класс

а) сложения;
б) умножения;
в) сокращения дроби.
Дробь представить следующим типом:
Type Frac=Record
P: Integer;
Q: 1..32767
End;
Используя этот модуль найти:
1) сумму двух дробей, результат представить в виде несократимой дроби;
2) произведение двух дробей, результат представить в виде несократимой дроби.

Asyalegkikh03 07 авг. 2014 г., 3:23:30 (9 лет назад)
Рейтинг
+ 0 -
0 Жалоба
+ 0 -
DmuTpuu29
07 авг. 2014 г., 5:37:13 (9 лет назад)

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



Ответить

Читайте также

Задание 1. Чему равен F(x) после выполнения следующих операторов? для x=4; 5; 3; 2; if x>=3

then if x<5 then F:=0

else F:=x*x

else F:=4+x

Чему равен R после выполнения следующих операторов?

R:= -10; 0; 5

if R<0 then R:=R*R;

if R=0 then R:=R+10;

if R>0 then R:=R-100;

определите полный набор данных для решения следующих задач обработки информации 1)Вычесление площади прямоугольника 2)Приготовление обеда 3)Вычесление

стоимости покупок в магазине 4)Приготовлени салата по рецепту 5)Выполнение домашнего задания

Вообще не понимаю, объясните))) 1)Чертёжнику был дан для исполнения следующий алгоритм:

Повтори 2 раз
Команда1 Сместиться на (3, 2) Сместиться на (2, 1)
Конец
Сместиться на (–6, –4)
После выполнения этого алгоритма Чертёжник вернулся в исходную точку.
Какую команду надо поставить вместо команды Команда1?
1)
Сместиться на (–2, –1)
2)
Сместиться на (1, 1)
3)
Сместиться на (–4, –2)
4)
Сместиться на (2, 1)

2)Чертёжнику был дан для исполнения следующий алгоритм:
Повтори 4 раз
Команда1 Сместиться на (3, 3) Сместиться на (1, –2)
Конец
Сместиться на (–8, 12)
После выполнения этого алгоритма Чертёжник вернулся в исходную точку.
Какую команду надо поставить вместо команды Команда1?
1)
Сместиться на (–2, –4)
2)
Сместиться на (4, –13)
3)
Сместиться на (2, 4)
4)
Сместиться на (–8, –16)

нужна помощь, ребята!

определить значение переменной S после выполнения следующего фрагмента алгоритма, представленного в виде блок-схемы, если а=692.
Начало:
1) ввод а,
2) S:=0
3) S:=s+a mod 10
4) a:=a div 10
5) a=0, если нет, то вернуться к 3 действию если да то вывод S
6) конец

Подробности от учителя:1.Определить значение переменной у после выполнения следующего фрагмента программы:

y:=1;
For i:=2 to 4 do y:=y+i;

2.Определить значение переменной у после выполнения следующего фрагмента программы:
y:=0;
For i:=-100 to 100 do
If i mod 10 =5 then y:=y+i;

3. На промежутке [a;b] (a,b -целые числа, которые вводятся с клавиатуры) определить среднее арифметическое чисел кратных 7



Вы находитесь на странице вопроса "Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида (P – целое, Q—натуральное):", категории "информатика". Данный вопрос относится к разделу "5-9" классов. Здесь вы сможете получить ответ, а также обсудить вопрос с посетителями сайта. Автоматический умный поиск поможет найти похожие вопросы в категории "информатика". Если ваш вопрос отличается или ответы не подходят, вы можете задать новый вопрос, воспользовавшись кнопкой в верхней части сайта.