Anda di halaman 1dari 15

Nama : Putu Rusdi Ariawan

NIM : 0804405050
Jurusan : Teknik Elektro / B

Konsep Pemrograman Komputer

Tugas :
1. Buat program menggunakan If-Then-else.
2. Buat program menggunakan Case-Of.
3. Buat program menggunakan perulangan For-Do.
4. Buat program menggunakan perulangan While-Do
5. Buat program menggunakan perulangan Repeat-Until.
6. Buat program menggunakan Function.
7. Buat program menggunakan Procedure.
8. Buat program menggunakan Array.

Jawab :
1. Buat program menggunakan If-Then-Else.

program nilai_hasil;
{------------------------------------}
{menentukan nilai dan kelulusan ujian}
{------------------------------------}

uses winCRT;

var
NA:byte;
NH:char;
ket:string;

begin
write('Masukkan nilai angka akhir ujian: ');
readln(NA);

IF (NA>=0) AND (NA<=100) THEN

begin
IF NA<=40 THEN NH:='E'
ELSE IF NA<=55 THEN NH:='D'
ELSE IF NA<=65 THEN NH:='C'
ELSE IF NA<=80 THEN NH:='B'
ELSE KET:='A';
writeln('Nilai hasil ujian: ',NH);
begin
IF NA>=55 THEN
begin
ket:='lulus';
end
ELSE
begin
ket:='tidak lulus';
end
end;

writeln('Hasil ujian ',ket);


end

ELSE
writeln('Input nilai angka akhir salah');
end.

Hasil Run :

a) Pada saat di run pertama makan akan keluar tampilan seperti gambar berikut :

b) Setelah itu masukkan nilainya, seperti telihat pada gambar dibawah :


c) Setelah dienter maka akan keluar hasilnya seperti gambar dibawah :

d) Program di run kembali dan coba memasukkan nilai kurang dari 0 atau lebih
dari 100 , seperti terlihat pada gambar dibawah :

e) Setelah di enter maka akan keluar hasil seperti gambar dibawah :


2. Buat program menggunakan Case-Of.

Program tukar_Vokal;
uses wincrt;
var
i,k,v,a: integer;
s:string;
begin
clrscr;
write('Masukkan Satu Kalimat : ');readln(s);
for i:= 1 to length(s) do
case s[i] of
'a':s[i]:='u';
'i':s[i]:='e';
'e':s[i]:='a';
'o':s[i]:='i';
'u':s[i]:='o';
'b':s[i]:='n';
'k':s[i]:='b';
'n':s[i]:='k';
end;
begin
writeln('Kode datanya adalah=',s )
end;
end.

Hasil Run :

a) Setelah di run maka akan keluar tampilan seperti gambar dibawah :


b) Setelah itu kita masukkan sebuah kalimat, seperti gambar bibawah :

c) Tekan enter maka akan keluar hasilnya seperti gambar dibawah :

3. Buat program menggunakan perulangan For-Do.

program banyak_huruf_dalam_kalimat;
uses wincrt;
var n:array[1..26] of integer;
i,j:integer;
kata : String;
begin
for i:=1 to 26 do
n[i]:=0;
write('Ketikkan sebuah kalimat : ');
readln(kata);
for i:=1 to length(kata) do
for j:=1 to 26 do
if ord(upcase(kata[i]))=64+j then
inc(n[j]);
for i:=1 to 13 do
writeln(chr(64+2*i-1),' = ',n[2*i-1],'
',chr(64+2*i),' =',n[2*i]);
end.
Hasil Run :

a) Pada saat di run maka akan keluar tampilan dan perintah untuk memasukkan
kalimat seperti gambar dibawah:

b) Pada saat itu masukkan sebuah kalimat, seperti gambar di bawah:

c) Tekan enter lalu keluar hasilnya seperti gambar bibawah:


4. Buat program menggunakan perulangan While-Do

PROGRAM pengulangan_while;
{-------------------------------------}
{ Pemakaian WHILE bersarang }
{-------------------------------------}
USES wincrt;
VAR
baris, kolom, jumbaris : integer;

BEGIN
clrscr;
write (' Jumlah baris : ');
readln (jumbaris);
baris := 1;
WHILE baris <= jumbaris DO
begin
write ('*' : jumbaris + 1 - baris);
kolom := 2;
WHILE kolom <= (2 * baris - 1) DO
begin
write ('*');
kolom := kolom + 1;
end;
writeln;
baris := baris + 1;
end;
END.

Hasil Run :

a) Sete;ah di enter makan akan keluar tampilan dan suruhan memasukkan


jumlah baris seperti gambar dibawah:
b) Setelah itu kita masukkan jumlah baris seperti gambar dibawah:

c) Tekan enter maka keluar hasilnya seperti gambar dibawah :

5. Buat program menggunakan perulangan Repeat-Until.

Program Konversi_Bilangan;
Uses WinCrt;
Var
des,desi : integer;
Bin,temp : String;
Begin
Write('Masukkan Suatu Bilangan Desimal :');Readln(des);
desi:=des;
bin:='';
repeat
str(des mod 2, temp);
bin:=temp+bin;
des:=des div 2;
writeln(des:4,bin:20);
until des=0;
writeln('(',desi,') desimal =',bin,' (Biner)');
end.
Hasil Run :

a) Setelah di run maka akan keluar tampilan seperti gambar dibawah :

b) Setelah itu kita masukkan sebuah angka, seperti gambar dibawah :

c) Tekan enter maka keluar hasilnya seperti gambar dibawah :


6. Buat program menggunakan Function.

program perhitungan_luas_dan_kelliling_segitiga;
uses wincrt;
var a, t : real;

Function Luas (a,t : Real) : Real;


Begin
Luas :=0.5 * a * t;
End;

Function Sisimiring (a,t : real) : Real;


Begin
Sisimiring := sqr(sqrt(a)+sqr(t));
End;

Function Keliling (a,t : Real) : Real;


Begin
Keliling := a+t+Sisimiring(a,t);
End;

begin
clrscr;
gotoxy (10,1);
writeln('MENGHITUNG LUAS DAN KELILING SEGITIGA');
gotoxy (10,2);
writeln('-------------------------------------');
writeln;
writeln;
write('Masukan Alas : '); readln (a);
write('Masukan Tinggi : '); readln (t);
writeln;
writeln('luas segitiga : ', Luas(a,t):0:2,' satuan
luas');
writeln('keliling segitiga : ',keliling(a,t):0:2,'
satuan panjang');

end.

Hasil Run :

a) Pada saat di run pertama maka akan terlihat seperti gambar dibawah :
b) Setelah itu kita masukkan nilai tinggi dan alas segitiga :

c) Tekan enter dan keluar hasilya seperti gambar dibawah :

7. Buat program menggunakan Procedure.

program baris_kolom;
uses wincrt;
procedure gb(brs,kol : integer);
var i,j : integer;
begin
for i:=1 to brs do
begin
for j:=1 to kol do
begin
if((i=1) or (i=brs) or (j=1) or (j=kol)) then
write('*')
else write(' ');
end;
writeln;
end;
end;
var x,y : integer;
begin
write('Banyak baris = ');readln(y);
write('Banyak kolom = ');readln(x);
writeln('Bentuknya :');
gb(y,x);
end.
Hasil Run :

a) Setelah kita run maka akan terlihat tampilannya seperti gambar dibawah:

b) Setelah itu kita masukkan jumlah baris , seperti gambar dibawah :

c) Tekan enter , setelah itu kita masukkan jumlah kolomnya, seperti gambar
dibawah :
d) Setelah itu kita enter maka akan keluar hasilnya seperti gambar dibawah :

8. Buat program menggunakan Array.

Program Segitiga_Pascal;
Uses Wincrt;
Var
i,j,n:integer;
x: array[1..100, 1..100] of integer;
z: char;

procedure tampilan;
begin
gotoxy(10,1);
writeln('@@@@@@ Program Segitiga Pascal @@@@@@');
gotoxy(10,2);
writeln('-------------------------------------');
writeln;
writeln;
end;
Begin
repeat
clrscr;
tampilan;
Write('Masukkan Jumlah Baris: ');Readln(n);
For i:= 1 to n do
For j:= 1 to i do
Begin
if j=1 then x[i,j]:=1
else if j=i then x[i,j]:=1
else x[i,j]:=x[i-1,j-1]+x[i-1,j];
End;
For i:= 1 to n do
Begin
Gotoxy(40-3*i,5+i);
For j:= 1 to i do
write(x[i,j]:6);
End;
writeln;
writeln;
writeln('mau coba lagi Y/N');
z:=readkey;
until upcase (z)<>'Y';
donewincrt
End.

Hasil Run :
a) Pada saat di run pertama maka akan keluar tampilan seperti gambar dibawah :

b) Masukkan angka , seperti gambar dibawah ini :


c) Tekan enter maka akan keluar hasilnya dan perintah untuk mengulang lagi
atau tidak seperti terlihat pada gambar :