06.11.2014, 03:20 | #1 (permalink) |
Новичок
Регистрация: 06.11.2014
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Помогите написать программу решения системы неравенств
а1х+b1>0 a2x+b2<0 Вот вроде бы программа рабочая, но как сделать правильный вывод чтобы выводило "от" "х" и от "х" "до"? Код:
var n,a1,a2,b1,b2:integer; r1,r2:real; begin writeln('A1X+B1>0'); writeln('A2X+B2<0'); write(' Введите a1='); readln(a1); write(' Введите a2='); readln(a2); write('Введите b1='); readln(b1); write(' Введите b2='); readln(b2); writeln(' ' ,a1,'X+(',b1,')>0'); writeln(' ' ,a2,'X+(',b2,')<0'); r1:=((-b1)/a1); r2:=((-b2)/a2); |
06.11.2014, 03:20 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Ваш пост по содержанию очень схож с данными темами Помогите написать программу Помогите написать программу Помогите написать программу Помогите написать программу на Си |
06.11.2014, 11:05 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
А вот так:
Код:
var a1,a2,b1,b2,r1,r2:real; begin writeln('A1X+B1>0'); writeln('A2X+B2<0'); Repeat write('a1= '); readln(a1); write('a2= '); readln(a2); if (a1=0) or (a2=0) then writeln('Incorrect values!!!'); Until (a1<>0) and (a2<>0); write('b1= '); readln(b1); write('b2= '); readln(b2); if b1>0 then begin if a1>0 then writeln(' ' ,a1:0:3,'X + ',b1:0:3,' > 0') else writeln(a1:0:3,'X + ',b1:0:3,' > 0'); end else begin if a1>0 then writeln(' ' ,a1:0:3,'X - ',Abs(b1):0:3,' > 0') else writeln(a1:0:3,'X - ',Abs(b1):0:3,' > 0'); end; if b2>0 then begin if a2>0 then writeln(' ' ,a2:0:3,'X + ',b2:0:3,' < 0') else writeln(a2:0:3,'X + ',b2:0:3,' < 0'); end else begin if a2>0 then writeln(' ' ,a2:0:3,'X - ',Abs(b2):0:3,' < 0') else writeln(a2:0:3,'X - ',Abs(b2):0:3,' < 0'); end; r1:=((-b1)/a1); r2:=((-b2)/a2); if (a1>0) and (a2>0) then begin if r1>r2 then writeln('No solution!') else writeln(r1:0:3,' < X < ',r2:0:3); end else if (a1>0) and (a2<0) then begin if r1>r2 then writeln('X > ',r1:0:3) else writeln('X > ',r2:0:3); end else if (a1<0) and (a2>0) then begin if r1>r2 then writeln('X < ',r2:0:3) else writeln('X < ',r1:0:3); end else begin if r2>r1 then writeln('No solution!') else writeln(r2:0:3,' < X < ',r1:0:3); end; Readln end. |
06.11.2014, 22:35 | #3 (permalink) |
Новичок
Регистрация: 06.11.2014
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|