Wednesday, January 8, 2014

Praktikum 3 Label, Goto, Operator Logika, IF, dan CASE

1. Program Membaca 2 Bilangan 
Program tutor3;
uses wincrt;
var x,y:integer;
pilih:char;
label baca;
begin
baca:
clrscr;
writeln('Program Membaca Dua Bilangan Bulat');
write('Masukkan bilangan pertama: ');readln(x);
write('Masukkan bilangan kedua: ');readln(y);
if x > y then
writeln('Anda tentu tahu bahwa ', x, ' > ', y)
else
writeln('Anda tentu tahu bahwa ', x, ' <= ', y);
writeln;
write('Mau melanjutkan? <Y/T>: ');readln(pilih);
if (pilih = 'Y') or (pilih = 'y') then goto baca;
writeln('Program sudah selesai ... terima kasih!');
end.


2. Program Operasi 2 Bilangan
Program Operasi3;
uses wincrt;
var x,y:integer;
operasi,pilih:char;
label baca;
begin
baca:
clrscr;
writeln('Program Operasi Dua Bilangan Bulat');
write('Masukkan bilangan pertama: ');readln(x);
write('Masukkan bilangan kedua: ');readln(y);
write('Pilih Operasi : ');readln(operasi);
if operasi='+' thenwriteln(x,' + ', y, ' = ', x+y)
else
if operasi='-' thenwriteln(x,' - ', y, ' = ', x-y)
else
if (operasi='*') or (operasi='x') or (operasi='X')
thenwriteln(x,' * ', y, ' = ', x*y)
else
if ((operasi='/') or (operasi=':')) and (y<>0) then
writeln(x,' : ', y, ' = ', x/y:4:3)
else
writeln('Error! Anda tidak tahu operasi aritmetika?');
writeln;
write('Mau melanjutkan? <Y/T>: ');readln(pilih);
if (pilih = 'Y') or (pilih = 'y') then goto baca;
writeln('Program sudah selesai ... terima kasih!');

end.

4. Program Akar PK
Program AkarPK;
uses WinCrt;
var
a,b,c:real;
D,x1,x2:real;
R,I:real;
pilih:Char;
label baca;
begin
baca:
clrscr;
writeln('Program menghitung akar persamaan ax^2+bx+c=0');
writeln;
write('Masukkan nilai-nilai a, b, dan c :');
readln(a,b,c);
if a = 0 then
begin
writeln('Nilai a harus tidak nol!');
goto baca; {Ulangi lagi sampai a<>0!}
end;
writeln('Anda mempunyai persamaan kuadrat: ');
if a=1 thenwrite('x^2') else write(a:3:2,'x^2');
if b>0 then
begin
if b=1 then write(' + x')
else write(' + ',b:3:2,'x')
end
else if b<0 then write(b:3:2,'x');
if c>0 then write(' + ',c:3:2)
else if c<0 then write(c:3:2);
writeln(' = 0.');writeln;
D:=b*b-4*a*c; {dapat juga ditulis D:=sqr(b)-4*a*c}
if D=0 then
begin
x1:=-b/(2*a);
writeln('Oleh karena nilai D = ',D:3:2,',');
writeln('maka akar-akarnya adalah x1 = x2 = ',x1:3:2);
end
else if D>0 then
begin
x1:=(-b+sqrt(D))/(2*a);x2:=(-b-sqrt(D))/(2*a);
writeln('Oleh karena nilai D = ',D:3:2,',');
writeln('maka akar-akarnya adalah:');
writeln('x1 = ',x1:3:2,' dan x2 = ',x2:3:2);
end
else if D<0 then
begin
R:=-b/(2*a);I:=(sqrt(-D))/(2*a);
writeln('Oleh karena nilai D = ',D:3:2,',');
writeln('maka akar-akarnya adalah:');
write('x1 = ');
if R<>0 then write(R:3:2);
if I>0 then write('+',I:3:2,'i')
else write(I:3:2,'i');
write(' dan x2 = ');
if R<>0 then write(R:3:2);
if i>0 then writeln('-',I:3:2,'i')
else writeln(I:3:2,'i');
end;
writeln;
write('Mau menghitung yang lain? <Y/T>: ');
readln(pilih);
if (pilih='Y') or (pilih='y') then goto baca
else writeln('Selesai!');
donewincrt;

end.

5. Program Operasi Bilangan Bulat
Program Operasi4;
uses wincrt;
var x,y:integer;
operasi,pilih:char;
label baca;
begin

baca:
clrscr;
writeln('Program Operasi Dua Bilangan Bulat');
write('Masukkan bilangan pertama: ');readln(x);
write('Masukkan bilangan kedua: ');readln(y);
write('Pilih Operasi : ');readln(operasi);
case operasi of
'+' : writeln(x,' + ', y, ' = ', x+y);
'-'    : writeln(x,' - ', y, ' = ', x-y);
'*','x','X': writeln(x,' * ', y, ' = ', x*y);
'/',':'   : if (y<>0) then
writeln(x,' : ', y, ' = ', x/y:4:3);
else
writeln('Error! Anda tidak tahu operasi aritmetika?');
end;
writeln;
write('Mau melanjutkan? <Y/T>: ');readln(pilih);
if (pilih = 'Y') or (pilih = 'y') then goto baca;
writeln('Program sudah selesai ... terima kasih!');
end.


No comments:

Post a Comment