Вопрос задан 10.05.2019 в 16:50. Предмет Информатика. Спрашивает Доскина Диана.

Напишите процедуру, которая сокращает дробь вида M/N. Числитель и знаменатель дроби передаются как

изменяемые параметры.Пример: Введите числитель и знаменатель дроби:25 15После сокращения: 5/3
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Жаренова Екатерина.
Var
    a, b: integer;

function greatest_common_divisor(m, n: integer): integer;
var
    modulo: integer;
begin
    modulo := m mod n;
    if modulo = 0 then
        greatest_common_divisor := n
    else
        greatest_common_divisor := greatest_common_divisor(n, modulo)
end;

procedure reduce_the_fraction(a, b: integer);
var
    gcd: integer;
    sign: string;
begin
    gcd := greatest_common_divisor(a, b);
    if a * b < 0 then
        sign := '-';
    writeln(sign, abs(a) / gcd, '/', abs(b) / gcd);
end;

begin
    write('Enter two numbers: ');
    readln(a, b);
    reduce_the_fraction(a, b);
end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для сокращения дроби вида M/N можно использовать алгоритм нахождения наибольшего общего делителя (НОД) числителя и знаменателя. НОД - это наибольшее число, на которое одновременно делится и числитель, и знаменатель.

Вот пример процедуры на языке Python, которая сокращает дробь:

```python def сокращение_дроби(числитель, знаменатель): # Находим наибольший общий делитель числителя и знаменателя наибольший_делитель = наибольший_общий_делитель(числитель, знаменатель) # Сокращаем дробь, деля числитель и знаменатель на наибольший делитель числитель = числитель // наибольший_делитель знаменатель = знаменатель // наибольший_делитель return числитель, знаменатель

def наибольший_общий_делитель(a, b): while b != 0: a, b = b, a % b return a ```

Пример использования этой процедуры для дроби 25/15:

```python числитель = 25 знаменатель = 15

сокращенная_дробь = сокращение_дроби(числитель, знаменатель)

print(f"После сокращения: {сокращенная_дробь[0]}/{сокращенная_дробь[1]}") ```

Результат выполнения программы будет:

``` После сокращения: 5/3 ```

Таким образом, дробь 25/15 после сокращения будет равна 5/3.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос