Вопрос задан 03.12.2023 в 03:57. Предмет Информатика. Спрашивает Абрамов Лев.

Срочно на с++, даю 100 балов . Сокращение дроби Дана дробь ab. Требуется её сократить, то есть

записать это же число в виде cd, где c — целое число, d — натуральное число и d минимальное возможное. Входные данные Вводятся два целых числа a и b (–100≤a≤100, 0 Выходные данные Выведите два числа c и d. Примеры Ввод Вывод 18 27 2 3
0 0
Перейти к ответам

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

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

Ответ:

#include <iostream>

using namespace std;

int NOD(int c, int d)

{

while (c > 0 && d > 0)

 if (c > d)

 {

  c %= d;

 }

 else

  d %= c;

return c + d;

}

int main()

{

int a, b, x;

cin >> a >> b;

x = NOD(a, b);

cout << a/x << " " << b/x;

}

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

Для сокращения дроби a/b, мы должны найти наибольший общий делитель (НОД) чисел a и b и разделить оба числа на этот НОД.

Для нахождения НОДа чисел a и b, мы можем использовать алгоритм Евклида. Этот алгоритм основан на том факте, что НОД(a, b) = НОД(b, a mod b), где a mod b - это остаток от деления a на b.

Используя этот алгоритм, мы можем найти НОД чисел a и b. После этого мы разделим оба числа на НОД, чтобы получить сокращенную дробь.

Вот код на языке C++, который реализует этот алгоритм:

```cpp #include

int gcd(int a, int b) { if (b == 0) { return a; } return gcd(b, a % b);

0 0

Похожие вопросы

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

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

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