1. Buatlah program untuk mencetak bilangan bulat sbb: 15 13 11 9 7 5 3 1 menggunakan struktur perulangan Repeat-Until, While dan For!
Jawab :
Perulangan Repeat-Until
uses crt;
var
i : integer;
begin
clrscr;
writeln(' PERULANGAN REPEAT-UNTIL ');
writeln('-------------------------');
writeln;
i:=15;
repeat
begin
if i mod 2 = 1 then
write(i:3);
i:=i-1;
end;
until i<=1;
readln;
end.
Hasil:
Perulangan While
uses crt;
var
i : integer;
begin
clrscr;
writeln(' PERULANGAN WHILE ');
writeln('--------------------------');
writeln;
i:=15;
while i>= 1 do
begin
if i mod 2 = 1 then
write(i:3);
i:=i-1;
end;
readln;
end.
Perulangan For
uses crt;
var
i : integer;
begin
clrscr;
writeln(' PERULANGAN FOR ');
writeln('-------------------------');
writeln;
for i:= 15 downto 1 do
begin
if i mod 2 = 1 then
write(i:3);
end;
readln;
end.
Hasil:
2. Ada katak masuk kedalam sumur sedalam 31.2 m. 5 hari pertama katak bias naik 3 m tiap pagi dan merosot 1 meter tiap malam, 10 hari berikutnya katak bias naik 2 meter tiap pagi dan merosot 1.25 m tiap malam, selanjutnya naik 2 m tiap pagi dan merosot 1.5 m tiap malam, berapa hari katak tersebut dapat keluar dari sumur?
Jawab :
uses crt;
var
merosot,kedalaman,selisih : real;
naik,hari : integer;
begin
clrscr;
write('Masukkan Jumlah Kedalaman Sumur = ');readln(kedalaman);
writeln('------------------------------------------------------ --');
writeln('Jumlah Hari Naik Merosot Jumlah Naik Kedalaman');
writeln(' Per Hari');
writeln('------------------------------------------------------ --');
hari := 1;
naik := 3;
merosot := 1;
selisih := naik - merosot;
while kedalaman > 0 do
begin
kedalaman := kedalaman - selisih;
writeln(hari:7, naik:10, merosot:10:2, selisih:11:2, kedalaman:14:2);
hari := hari + 1;
if (hari>5) and (hari<=15) then
begin
naik := 2;
merosot := 1.25;
selisih := naik - merosot;
end
else if (hari>15) then
begin
naik := 2;
merosot := 1.5;
selisih := naik - merosot;
end;
end;
readln;
end.
Hasil:
Jawab :
Perulangan Repeat-Until
uses crt;
var
i : integer;
begin
clrscr;
writeln(' PERULANGAN REPEAT-UNTIL ');
writeln('-------------------------');
writeln;
i:=15;
repeat
begin
if i mod 2 = 1 then
write(i:3);
i:=i-1;
end;
until i<=1;
readln;
end.
Hasil:
Perulangan While
uses crt;
var
i : integer;
begin
clrscr;
writeln(' PERULANGAN WHILE ');
writeln('--------------------------');
writeln;
i:=15;
while i>= 1 do
begin
if i mod 2 = 1 then
write(i:3);
i:=i-1;
end;
readln;
end.
Hasil:
Perulangan For
uses crt;
var
i : integer;
begin
clrscr;
writeln(' PERULANGAN FOR ');
writeln('-------------------------');
writeln;
for i:= 15 downto 1 do
begin
if i mod 2 = 1 then
write(i:3);
end;
readln;
end.
Hasil:
Jawab :
uses crt;
var
merosot,kedalaman,selisih : real;
naik,hari : integer;
begin
clrscr;
write('Masukkan Jumlah Kedalaman Sumur = ');readln(kedalaman);
writeln('------------------------------------------------------ --');
writeln('Jumlah Hari Naik Merosot Jumlah Naik Kedalaman');
writeln(' Per Hari');
writeln('------------------------------------------------------ --');
hari := 1;
naik := 3;
merosot := 1;
selisih := naik - merosot;
while kedalaman > 0 do
begin
kedalaman := kedalaman - selisih;
writeln(hari:7, naik:10, merosot:10:2, selisih:11:2, kedalaman:14:2);
hari := hari + 1;
if (hari>5) and (hari<=15) then
begin
naik := 2;
merosot := 1.25;
selisih := naik - merosot;
end
else if (hari>15) then
begin
naik := 2;
merosot := 1.5;
selisih := naik - merosot;
end;
end;
readln;
end.
Hasil: