Предмет: Информатика,
автор: filagrehpb1jwj
Дано уравнение:
xt1-yt2-zt3=0
Условие:
x,y,z - вводит пользователь, причем x,y,z больше 0 (нуля);
t1,t2,t3 должны быть больше 0 (нуля).
Программа на Паскале решения данного уравнения.
Всю голову уже сломали..... Есть умные решения.
zhenyaaa50:
Числа натуральные или любые?
Ответы
Автор ответа:
0
Если числа натуральные, что решение такое:
var
x,y,z,t1,t2,t3:integer;
begin
readln(x,y,z);
for t1:=1 to 9999 do
for t2:=1 to 9999 do
for t3:=1 to 9999 do
if x*t1 - y*t2 - z*t3 = 0 then
writeln('t1=',t1,'; t2=',t2,'; t3=',t3)
end.
Не знала в каком диапазоне должны быть корни, так что вместо 9999 ставьте, что нужно
Автор ответа:
0
Решение в натуральных числах
*** Текст программы на PascalABC.NET ***
begin
var (x,y,z):=ReadInteger3('Введите x,y,z:');
var (a1,a2,a3):=ReadInteger3('Введите максимальные значения t1,t2,t3:');
var k:=0;
for var t1:=1 to a1 do
for var t2:=1 to a2 do
for var t3:=1 to a3 do
if x*t1-y*t2-z*t3=0 then k+=1;
if k=0 then Writeln('Решений нет')
else
begin
Writeln('Найдено решений: ',k);
if ReadInteger('Выводить решения? (1-да):')=1 then
for var t1:=1 to a1 do
for var t2:=1 to a2 do
for var t3:=1 to a3 do
if x*t1-y*t2-z*t3=0 then
Writeln($'{x}x{t1}-{y}x{t2}-{z}x{t3}=0')
end;
Writeln('Работа программы завершена')
end.
*** Пример работы с программой ***
Введите x,y,z: 3 5 7
Введите максимальные значения t1,t2,t3: 10 10 10
Найдено решений: 3
Выводить решения? (1-да): 1
3x4-5x1-7x1=0
3x8-5x2-7x2=0
3x9-5x4-7x1=0
Работа программы завершена
*** Текст программы на PascalABC.NET ***
begin
var (x,y,z):=ReadInteger3('Введите x,y,z:');
var (a1,a2,a3):=ReadInteger3('Введите максимальные значения t1,t2,t3:');
var k:=0;
for var t1:=1 to a1 do
for var t2:=1 to a2 do
for var t3:=1 to a3 do
if x*t1-y*t2-z*t3=0 then k+=1;
if k=0 then Writeln('Решений нет')
else
begin
Writeln('Найдено решений: ',k);
if ReadInteger('Выводить решения? (1-да):')=1 then
for var t1:=1 to a1 do
for var t2:=1 to a2 do
for var t3:=1 to a3 do
if x*t1-y*t2-z*t3=0 then
Writeln($'{x}x{t1}-{y}x{t2}-{z}x{t3}=0')
end;
Writeln('Работа программы завершена')
end.
*** Пример работы с программой ***
Введите x,y,z: 3 5 7
Введите максимальные значения t1,t2,t3: 10 10 10
Найдено решений: 3
Выводить решения? (1-да): 1
3x4-5x1-7x1=0
3x8-5x2-7x2=0
3x9-5x4-7x1=0
Работа программы завершена
Похожие вопросы
Предмет: Математика,
автор: Lily2015
Предмет: Математика,
автор: Nigmatyllinay
Предмет: Английский язык,
автор: artem09754
Предмет: Математика,
автор: стиеман
Предмет: Алгебра,
автор: nosovadascha20