|
7 / 0 / 0
Регистрация: 08.10.2012
Сообщений: 124
|
|
Сократить дробь21.11.2012, 14:18. Показов 19971. Ответов 10
Метки нет (Все метки)
Даны натуральные числа a и b, обозначающие соответственно числитель и знаменатель дроби. Сократите дробь, т.е найти такие натуральные p и q, не имеющие общих делителей, что p/q=a/b. (Необходимо выполнить через цикл, а и б вводятся с клавиатуры)
Очень надеюсь на вашу помощь.
0
|
|
| 21.11.2012, 14:18 | |
|
Ответы с готовыми решениями:
10
Сократить дробь
Необходимо сократить дробь |
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
||||||
| 21.11.2012, 15:12 | ||||||
|
Вот придумалось так:
1
|
||||||
|
262 / 61 / 5
Регистрация: 29.06.2012
Сообщений: 109
|
||||||
| 21.11.2012, 15:54 | ||||||
|
Этот код должен работать быстрее при больших числах:
1
|
||||||
|
7 / 0 / 0
Регистрация: 08.10.2012
Сообщений: 124
|
|
| 21.11.2012, 21:49 [ТС] | |
|
Допишите необходимые библиотеки ф-ций, что б работало)) Благодарю Вас)
Добавлено через 2 минуты Я извиняюсь, но я совсем не понял ход ваших мыслей) да и при выполнении программы, мне выводятся теже самые значения что я ввожу.. Обьясните пж)
0
|
|
|
262 / 61 / 5
Регистрация: 29.06.2012
Сообщений: 109
|
||
| 21.11.2012, 22:37 | ||
|
А из main() сначала вызываемое nod, а для получения сокращенных значений делим исходные значения на результат, возвращаемый функцией nod.
2
|
||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 22.11.2012, 09:36 | |
|
А у меня тогда метод грубой силы.
![]() После ввода значений a и b они пересохраняются в p и q, это на случай, если не будет общих делителей. Тогда они так и останутся теми же введенными числами. потом в цикле от одного до наименьшего из двух введенных (i<=a && i<=b) выполнять проверку: если остаток от деления равен нулю (!(a%i) && !(b%i)), то есть оба числа делятся на i без остатка, тогда p и q переписать. Так как i увеличивается, то p и q будут постоянно уменьшаться. И в итоге у нас в них будут лежать наименьшие возможные значения.
1
|
|
|
7 / 0 / 0
Регистрация: 08.10.2012
Сообщений: 124
|
|
| 26.11.2012, 20:05 [ТС] | |
|
SatanaXIII, Можете пожалуйста добавить необходимые библиотеки ф-ций что-бы программа выполнялась?
0
|
|
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|||||||||||
| 27.11.2012, 09:46 | |||||||||||
|
А.
Ну там только
И еще в 11 и 12 строке надо выкинуть
0
|
|||||||||||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||||||||
| 27.11.2012, 10:57 | |||||||||||
|
Пусть c - любой общий делитель a и b. Тогда
И целиком:
0
|
|||||||||||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 27.11.2012, 11:08 | |
|
taras atavin, зачем городить пачку флагов и циклов, когда есть простой и красивый алгоритм Евклида для поиска НОД?
1
|
|
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 27.11.2012, 11:26 | |
|
taras atavin, а чем от моего решения отличается? Так же сравнение по нулевым остаткам, плюс на флаг больше.
P.S. Конечно же в 24 строке использовать abs() это верно подмечено. Для отрицательных дробей.
0
|
|
| 27.11.2012, 11:26 | |
|
Помогаю со студенческими работами здесь
11
Сократить дробь используя функцию
N и M числитель и знаменатель дроби, составить программу, позволяющая сократить эту дробь. Используя функцию нахождения НОД двух натуральных чисел, сократить обычную дробь Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|