Форум программистов, компьютерный форум CyberForum.ru

задача на арифметику - C++

Восстановить пароль Регистрация
 
skreggi
0 / 0 / 0
Регистрация: 25.11.2010
Сообщений: 16
22.10.2011, 15:03     задача на арифметику #1
Задано уравнение:
a*x+b*y=c,

где a,b,c,x,y - целые неотрицательные числа.
Заданы коэффициенты a,b,c. Требуется определить x,y.

Формат входного файла:
a b c

Формат файла результата:
каждая строка содержит пару x y, удовлетворяющую уравнению.
Требуется найти все возможные решения. Решения в файле результата должны быть отсортированы по возрастанию x.

Ограничения:
a<=10000, b<=10000, c<=10000

Пример входного файла:
1 1 3

Файл результата для данного примера:
0 3
1 2
2 1
3 0

Алгоритм решения:
Из уравнения ax + by = c выразим x:
x = (c - by) / a;
Т.к. коэффициенты целые и неотрицательные, то
Xmax = c / a; - при y = 0;
Затем выражаем y через x:
y = (c - ax) / b;
Перебираем все целые x от 0 до Xmax, получаем для них значения y, если y целое - выводим.

Помогите написать код на с++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2011, 15:03     задача на арифметику
Посмотрите здесь:

C++ Задача на длинную арифметику
Задача на адресную арифметику C++
C++ Реализовать длинную арифметику
Округлить число не используя вещественненную арифметику C++
C++ Библиотека классов, реализующих комплексную арифметику
C++ Переделать в длинную арифметику
C++ Задача на длинную арифметику

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 02:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru