Bài tập Pascal : Viết chương trình giải bất phương trình bậc 1 (ax+b>0)

Đề bài : Viết chương trình giải bất phương trình bậc 1 (ax + b > 0)

Để giải bất phương trình một ẩn,thông thường ta có hai cách giải là: chuyển vế và nhân với một số bất kì nào đó.trường hợp này cũng vậy.

Bài giải :


Mã:
[COLOR=#000000]Program BAT_PHUONG_TRINH_BACI;[/COLOR]
[COLOR=#000000]Uses crt;[/COLOR]
[COLOR=#000000]Var a,b: real;[/COLOR]
[COLOR=#000000]BEGIN[/COLOR]
[COLOR=#000000]   Clrscr;[/COLOR]
[COLOR=#000000]   Writeln('GIAI BAT PHUONG TRINH BAC NHAT: AX + B > 0');[/COLOR]
[COLOR=#000000]   Writeln('———————————————————————-');[/COLOR]
[COLOR=#000000]   Write('nhap a=');readln(a);[/COLOR]
[COLOR=#000000]   Write('nhap b=');readln(b);[/COLOR]
[COLOR=#000000]   If a<>0 then[/COLOR]
[COLOR=#000000]      If a>0 then[/COLOR]
[COLOR=#000000]         Writeln('Bat phuong trinh co nghiem: x>=',-b/a:4:2)[/COLOR]
[COLOR=#000000]      Else[/COLOR]
[COLOR=#000000]         Writeln('Bat phuong trinh co nghiem: x<=',-b/a:4:2)[/COLOR]
[COLOR=#000000]   Else[/COLOR]
[COLOR=#000000]      If b>=0 then[/COLOR]
[COLOR=#000000]         Writeln('Bat phuong trinh co vo so nghiem')[/COLOR]
[COLOR=#000000]      Else[/COLOR]
[COLOR=#000000]         writeln('Bat phuong trinh vo nghiem');[/COLOR]
[COLOR=#000000]   Readln;[/COLOR]
[COLOR=#000000]END.[/COLOR][COLOR=#000000]
[/COLOR]


Hướng dẫn chi tiết :


Như đã nói bên trên, có hai cách giải vì vậy ta sẽ so sánh số a với 0, nếu a>0 thì phương trình có nghiệm -b/a và ngược lại, sử dụng hàm if else. Đầu tiên thì luôn luôn là phần khai báo thông tin cơ bản :
Mã:
{Khai báo thông tin cơ bản của chương trình}
[COLOR=#000000]Program BAT_PHUONG_TRINH_BACI;[/COLOR]
[COLOR=#000000]Uses crt;[/COLOR]
[COLOR=#000000]Var a,b: real;[/COLOR]{khai báo 2 biến a và b }

Xong phần khai báo thông tin cơ bản, đây mới là phần quan trọng. Ta xét ba trường hợp của bất phương trình ax + b > 0 :

  • a <>0 thì phương trình có nghiệm x=-b/a
  • a,b =0 thì bất phương trình có vô số nghiệm
  • a =0, b <> 0 thì bất phương trình vô nghiệm

Để làm được điều đó ta sẽ sử dụng hàm if để kiểm tra xem nếu a>0 thì sẽ đưa ra kết quả nghiệm bằng -b/a. Ngược là, in ra kết quả trong hàm else a có nghiệm x<= -b/a. So sánh xong a thì làm tương tự với b, nếu b>=0 thì bất phương trình có vô số nghiệm , b<=0 thì bất phương trình vô nghiệm.

Mã:
[COLOR=#000000]BEGIN[/COLOR]
[COLOR=#000000]   Clrscr;[/COLOR]
[COLOR=#000000]   Writeln('GIAI BAT PHUONG TRINH BAC NHAT: AX + B > 0');[/COLOR]
[COLOR=#000000]   Writeln('———————————————————————-');[/COLOR]
[COLOR=#000000]   Write('nhap a=');readln(a);[/COLOR]
[COLOR=#000000]   Write('nhap b=');readln(b);[/COLOR]
[COLOR=#000000]   If a<>0 then[/COLOR]
[COLOR=#000000]      If a>0 then[/COLOR]
[COLOR=#000000]         Writeln('Bat phuong trinh co nghiem: x>=',-b/a:4:2)[/COLOR]
[COLOR=#000000]      Else[/COLOR]
[COLOR=#000000]         Writeln('Bat phuong trinh co nghiem: x<=',-b/a:4:2)[/COLOR]
[COLOR=#000000]   Else[/COLOR]
[COLOR=#000000]      If b>=0 then[/COLOR]
[COLOR=#000000]         Writeln('Bat phuong trinh co vo so nghiem')[/COLOR]
[COLOR=#000000]      Else[/COLOR]
[COLOR=#000000]         writeln('Bat phuong trinh vo nghiem');[/COLOR]
[COLOR=#000000]   Readln;[/COLOR]
[COLOR=#000000]END.[/COLOR][COLOR=#000000]
[/COLOR]

Chúc các bạn học tốt !
 
  • Chủ đề
    bai tap pascal bai tap pascal 11 hoc pascal pascal co ban
  • isokids

    ✩✩
    Mã:
    [COLOR=#000000]Writeln('GIAI BAT PHUONG TRINH BAC NHAT: AX + B > 0');[/COLOR]


    Mã:
    [COLOR=#000000] Writeln('Bat phuong trinh co nghiem: x>=',-b/a:4:2)[/COLOR]
    ???
     
    Top