Register

OR

Do you already have an account? Login

Login

OR

Don't you have an account yet? Register

Newsletter

Submit to our newsletter to receive exclusive stories delivered to you inbox!

Решить в целых числах уравнение ( ax b ) : ( cx d ) = 0.

Входные данные
Вводятся 4 числа: a, b, c и d; c и d не равны нулю одновременно.

Выходные данные
Необходимо вывести все решения, если их число конечно, “NO” (без кавычек), если решений нет, и “INF” (без кавычек), если решений бесконечно много.

Примеры
входные данные
1
1
2
2
выходные данные
NO
входные данные
2
-4
7
1
выходные данные
2

более месяца назад
Просмотров : 20    Ответов : 1   

Лучший ответ:

( ax b ) : ( cx d ) = 0

Сводим уравнение к системе:

{ ax b = 0
{ cx d ≠ 0

{ ax = -b
{ cx ≠ -d

Можно учесть все случаи, используя больше 16 условий, но я предпочту более оптимальный вариант, так как знаю как зависит количество корней линейного уравнения от коэффициентов.

Программа на паскале:

var a, b, c, d: real;
begin
  read(a, b, c, d);
  if (c = 0) and (d = 0) then writeln('NO')
  else if (a = 0) and (b = 0) then writeln('INF')
  else if a = 0 then writeln('NO') 
  else if c = 0 then writeln(-b/a)
  else if b/a = d/c then writeln('NO')
  else writeln(-b/a)
end.

более месяца назад
Ваш ответ:
Комментарий должен быть минимум 20 символов
Чтобы получить баллы за ответ войди на сайт





Вы можете из нескольких рисунков создать анимацию (или целый мультфильм!). Для этого нарисуйте несколько последовательных кадров и нажмите кнопку Просмотр анимации.


Другие вопросы: