LISTING PROGRAM
program penghitung_daya_listrik;
uses crt;
var
menu : integer;
ulang : char;
S,V,I : real;
P,cosp : real;
Q,sinp : real;
procedure Menghitung_Daya_Semu;
begin
repeat
clrscr;
writeln ('Menghitung Daya Semu');
write ('Masukan Nilai Tegangan :
');readln(V);
write ('Masukan Nilai Arus :
');readln(I);
writeln ('Rumus : V*I');
S:= V*I;
writeln ('Nilai Daya Semu Adalah
:',S:0:0);
write (' ulang lagi[y/n]?');
readln (ulang);
until upcase (ulang)
<>'Y';
end;
procedure Menghitung_Daya_Aktif;
begin
repeat
clrscr;
writeln ('Menghitung Daya Aktif');
write ('Masukan Nilai Tegangan
:');readln (V);
write ('Masukan Nilai Arus
:');readln(I);
write ('Masukan
Nilai cosδ :');readln(cosδ);
writeln ('Rumus : V*I* cosδ ');
P := V*I* cosδ;
writeln ('Nilai Induktansi
adalah :',P:0:0);
write (' ulang lagi[y/n]?');
readln (ulang);
until upcase (ulang)
<>'Y';
end;
procedure Menghitung_Daya_Reaktif;
begin
repeat
clrscr;
writeln ('Menghitung Daya Reaktif');
write ('Masukan Nilai Tegangan
:');readln (V);
write ('Masukan Nilai Arus
:');readln(I);
write ('Masukan
Nilai sinδ :');readln(sinδ);
writeln ('Rumus : V*I* sinδ ');
Q := V*I* cosδ;
writeln ('Nilai Induktansi
adalah :',Q:0:0);
write (' ulang lagi[y/n]?');
readln (ulang);
until upcase (ulang)
<>'Y';
end;
procedure menu_utama;
begin
clrscr;
writeln ('Menu Utama');
writeln ('1. Menghitung Daya
Semu ');
writeln ('2. Menghitung Daya
Aktif');
writeln ('3. Menghitung Daya
Reaktif');
writeln
(‘4. END ‘);
writeln;
write ('Pilih Menu
:');readln(menu);
case menu of
1: begin
Menghitung_Daya_Semu;
menu_utama;
end;
2:begin
Menghitung_Daya_Aktif;
menu_utama;
end;
3:begin
Menghitung_Daya_Reaktif;
menu_utama;
4: end;
end;
begin
clrscr;
menu_utama;
end.
OUTPUT PROGRAM
FLOWCHART