program casapilih;

uses wincrt;

var angka:char;

var angka1:integer;

var f :string; var lagi:char;

procedure fungsikuadrat1;

var x,x1,x2,a,nilai,hasil1,hasil2,hasil,y:integer;

var hasil3,hasil6,hasil7:real;

var hasil4,hasil5:integer;

begin

writeln (‘cara ini digunakan untuk membentuk fungsi kuadrat’);

writeln (‘jika diketahui titik potong grafik dengan sumbu x dan melalui titik sebarang’);

readln;

writeln (‘rumus umunya adalah f(x)=a(x-x1)(x-x2)’);

readln;

write (‘masukan angka x1: ‘);

readln (x1);

write (‘masukan angka x2: ‘);

readln (x2);

writeln (‘sehingga diperoleh’);

writeln (‘f(x)= a(x – ‘,x1,’)(x – ‘,x2,’)’);

readln;

writeln (‘karena grafik melalui titik ketiga’);

write (‘masukan angka x: ‘);

readln (x);

write (‘masukan angka y: ‘);

readln (y);

writeln (y,’=a(‘,x,’-‘,x1,’)(‘,x,’-‘,x2,’)’);

hasil1:= x – x1;

hasil2:= x – x2;

writeln (y,’=a(‘,hasil1,’)(‘,hasil2,’)’);

hasil:= hasil1 * hasil2 ;

writeln (y,’=a(‘,hasil,’)’);

hasil3:= y / hasil;

writeln (‘a=’,hasil3:2:0);

if hasil3=0 then write(‘INI BUKAN BENTUK FUNGSI KUADRAT’);

readln;

writeln (‘sehingga diperoleh’);

writeln (‘f(x)=’,hasil3:2:0,'(x-‘,x1,’)(x-‘,x2,’)’);

hasil4:=x1 + x2;

hasil5:= x1 * x2;

writeln (‘f(x)=’,hasil3:2:0,'(x^2 -‘,hasil4,’x +’,hasil5,’)’);

hasil6:=hasil3*hasil4;

hasil7:=hasil3*hasil5;

writeln (‘f(x)=’,hasil3:2:0,’x^2 -‘,hasil6:2:0,’x +’,hasil7:2:0);

readln;

writeln (‘jadi, bentuk fungsi kuadranya adalah: ‘);

writeln (‘f(x)=’,hasil3:2:0,’x^2 -‘,hasil6:2:0,’x +’,hasil7:2:0);

readln;

writeln (‘terima kasih, anda telah menggunakan program ini ‘);

end;

procedure fungsikuadrat;

var Xp,Yp,y,x:integer;

var hasil,hasil1,hasil2,hasil3,hsl,hsl1,has,has1,hasl:real;

begin

writeln (‘cara ini digunakan untuk membentuk fungsi kuadrat’);

writeln (‘jika diketahui titik puncak dan melalui titik sebarang’);

writeln (‘fungsi kuadrat tersebut dapat dinyatakan dalam bentuk’);

readln;

writeln (‘f(x)= a(x-Xp)^2 + Yp’);

readln;

write (‘masukan nilai titik puncak Xp: ‘);

readln (Xp);

write (‘masukan nilai titik puncak Yp: ‘);

readln (Yp);

writeln (‘maka f(x)= a(x-‘,Xp,’)^2 + ‘,Yp);

readln;

writeln (‘karena grafik fungsi tersebut melalui titik sebarang, maka’);

write (‘masukan nilai x: ‘);

readln (x);

write (‘masukan nilai y: ‘);

readln (y);

writeln (‘maka ‘,y,’= a(‘,x,’-‘,Xp,’)^2 +’,Yp);

hasil:=(x-Xp);

writeln (‘maka ‘,y,’= a(‘,hasil:2:0,’)^2 +’,Yp);

hasil1:=hasil * hasil;

writeln (‘maka ‘,y,’= a(‘,hasil1:2:0,’) +’,Yp);

hasil2:=hasil1+Yp;

writeln (‘maka ‘,y,’= a’,hasil2:2:0);

hasil3:=y/hasil2;

writeln (‘a=’,hasil3:2:0);

if hasil3=0 then write(‘INI BUKAN BENTUK FUNGSI KUADRAT’);

writeln (‘sehingga diperoleh’);

readln;

writeln (‘f(x)= a(x-‘,Xp,’)+’,Yp);

hsl:=Xp+Xp;

hsl1:=Xp*Xp;

writeln (‘f(x)=’, hasil3:2:0,'(x^2 -‘,hsl:2:0,’x + ‘,hsl1:2:0,’)+’,Yp);

has:=hasil3*hsl;

has1:=hasil3*hsl1;

writeln (‘f(x)=’,hasil3:2:0,’x^2 -‘,has:2:0,’x + ‘,has1:2:0,’+’,Yp);

hasl:=has1+Yp;

writeln (‘f(x)=’,hasil3:2:0,’x^2 -‘,has:2:0,’x + ‘,hasl:2:0);

readln;

writeln (‘terima kasih, anda telah menggunakan program ini ‘);

end;

begin

writeln(‘masukan nama prodi anda: ‘);readln(f);

if f=’matematika’then writeln (‘anda diperkenankan untuk menggunakan program ini’);

readln;

lagi:=’y’;

while lagi=’y’do

begin

clrscr;

angka1:=0;

repeat

writeln (‘SELAMAT DATANG DIPROGRAM MEMBENTUK FUNGSI KUADRAT’);

until

angka1<3;

writeln (‘ini adalah beberapa cara untuk membentuk fungsi kuadrat’);

writeln (‘cara [1] jika diketahui titik potong grafik dengan sumbu x dan melalui titik sebarang’);

writeln (‘cara [2] jika diketahui titik puncak grafik dan melalui titik sebarang’);

readln;

write (‘pilih cara yang anda ingin gunakan [1] [2]: ‘);

readln (angka);

case angka of

‘1’ : fungsikuadrat;

‘2’ : fungsikuadrat1;

else

write (‘coba baca dengan baik2’);

end;

end

end.