PROGRAM PROCEDURE_DAN_FUNCTION;
USES WINCRT;
PROCEDURE MENU;
BEGIN
GOTOXY(25,8);WRITE('1. LUAS PERSEGI');
GOTOXY(25,10);WRITE('2. LUAS SEGITIGA');
GOTOXY(25,12);WRITE('3. BILANGAN PANGKAT');
GOTOXY(25,14);WRITE('4. BILANGAN POSITIF NEGATIF');
GOTOXY(25,16);WRITE('5. KELUAR');
END;
FUNCTION LUAS_PERSEGI (S:INTEGER):LONGINT;
BEGIN
LUAS_PERSEGI:=SQR(S);
END;
FUNCTION SEGITIGA (A,T:INTEGER):LONGINT;
BEGIN
SEGITIGA:=A*T;
END;
PROCEDURE BIL_PANGKAT (A,B,C:LONGINT);
VAR I:INTEGER;
BEGIN
C:=1;
FOR I:=1 TO B DO BEGIN
C:=C*A;
END;
WRITE(A,' ^ ',B,' = ',C);
PROCEDURE POSNEG(ANGKA:LONGINT;HASIL:STRING);
BEGIN
IF ANGKA>=0 THEN HASIL:='BILANGAN POSITIF'
ELSE HASIL:='BILANGAN NEGATIF';
WRITELN(ANGKA,' ADALAH ',HASIL);
END;
{DEFINISI VARIABEL}
VAR
JAWAB:CHAR;
SISI,HASIL:INTEGER;
ALAS,TINGGI:INTEGER;
LUAS:REAL;
BIL,PANGKAT,HSL:LONGINT;
BILANGAN:LONGINT;KET:STRING;
{PROGRAM UTAMA}
BEGIN
CLRSCR;
REPEAT
MENU;
GOTOXY(25,18);
WRITE('PILIHAN ANDA : ');READLN(JAWAB);
IF JAWAB='1' THEN BEGIN
CLRSCR;
WRITE('INPUT SISI PERSEGI : ');READLN(SISI);
HASIL:=LUAS_PERSEGI(SISI);
WRITELN('LUAS PERSEGI DENGAN SISI ',SISI,' ADALAH : ',HASIL);
END;
IF JAWAB='2' THEN BEGIN
CLRSCR;
WRITE('INPUT ALAS : ');READLN(ALAS);
WRITE('INPUT TINGGI : ');READLN(TINGGI);
LUAS:=0.5*SEGITIGA(ALAS,TINGGI);
WRITELN('LUAS SEGITIGA ADALAH : ',LUAS:4:2);
WRITELN;
END;
IF JAWAB='3' THEN BEGIN
CLRSCR;
WRITE('INPUT BILANGAN : ');READLN(BILANGAN);
WRITE('INPUT PANGKAT : ');READLN(PANGKAT);
BIL_PANGKAT(BILANGAN,PANGKAT,HASIL);
END;
IF JAWAB='4' THEN BEGIN
CLRSCR;
WRITE('INPUTKAN SEBUAH ANGKA : ');READLN(BIL);
POSNEG(BIL,KET);
WRITELN;
END;
UNTIL JAWAB='5';
READLN;
END.
0 comments:
Post a Comment