Предмет: Другие предметы,
автор: Аноним
FPS
Решить в целых числах уравнение ( ax + b ) : ( cx + d ) = 0. Вводятся 4 числа: a, b, c и d; c и d не равны нулю одновременно. Необходимо вывести все решения, если их число конечно, “NO” (без кавычек), если решений нет, и “INF” (без кавычек), если решений бесконечно много
Аноним:
а ты случайно не из Лицея-интерната им. Макаренка?
Ответы
Автор ответа:
0
INF, т.к. если они не равны нулю одновременно.
бесконечно много решений. Если a равняется нулю, b не равняется нулю - решений нет. В остальных
случаях нужно проверить, делится ли -b на a без остатка (т.к. надо решить уравнение в целых числах),
и если да - вывести результат. Следует учесть, что результат должен быть целого типа, т.е. значение x
ошибке), а как -b div a (-b/a в Си).
Вводится одно натуральное число k.
Автор ответа:
4
program gt1;
uses crt;
var a,b,c,d,x,s:integer;
begin
read(a,b,c,d);
s:=0;
if (a=0)and(b=0)then s:=1;
if((a<>0)and(b=0))or((a=0)and(b<>0))or((a<>0)and(b<>0))then begin
for x:=-2000000 to 2000000 do
if (a*x+b=0)and((c*x+d)<>0) then begin
write(x,' ');
s:=3;
end;
end;
if s=0 then write('NO');
if(s=1)then write('INF');
end.
uses crt;
var a,b,c,d,x,s:integer;
begin
read(a,b,c,d);
s:=0;
if (a=0)and(b=0)then s:=1;
if((a<>0)and(b=0))or((a=0)and(b<>0))or((a<>0)and(b<>0))then begin
for x:=-2000000 to 2000000 do
if (a*x+b=0)and((c*x+d)<>0) then begin
write(x,' ');
s:=3;
end;
end;
if s=0 then write('NO');
if(s=1)then write('INF');
end.
Похожие вопросы
Предмет: Английский язык,
автор: evstyle
Предмет: Русский язык,
автор: хорошист282
Предмет: Қазақ тiлi,
автор: 5079
Предмет: Математика,
автор: Kelpin
Предмет: Обществознание,
автор: ElviraYa