KOMPUTER
MAKALAH
Tugas MID dasar pemrograman komputer
OLEH :
ANDI HERIYANTO
TE020012004
DOSEN PENGAMPU:
Ayu Annisa Akbar, S.Kom., M.Pd
UNIVERSITAS
TEKNOLOGI SULAWESI
SEMESTER GENAP
2021
Kata pengantar
Dengan memanjatkan puji syukur kepada Tuhan Yang Maha Esa atas segala limpahan
rahmat,inayah,taufiq,dan hidayahnya saya dapat menyelesaikan tugas makalah sesi pertemuan
“Pengantar Pemrograman Komputer” dengan bentuk maupun isinya yang sederhana.
Harapan saya semoga makalh ini dapat membantu menambah pengetahuan dan pengalaman
bagi para pembaca,sehingga dapat memperbaiki bentuk maupun isi makalah ini menjadi yang
lebih baik lagi.
Akhir kata semoga makalah ini bisa bermanfaat bagi pembaca pada umumnya dan penulis
pada khususnya,saya menyadari bahwa dalam pembuatan makalah ini masih jauh dari
sempurna untuk itu saya menerima saran dan kritik yang bersifat membangujn demi
perbaikan kearah sempurna.
Andi heriyanto
ii
DAFTAR ISI
HALAMAN JUDUL………………………………………………………………….. i
KATA PENGANTAR………………………………………………………………… ii
BAB1:
A. Pendahuluan………………………………………………………………………. 1
B. Tujuan…..………………………………………………………………………… 2
BAB 2 :
BAB 3 :
DAFTAR PUSTAKA………………………………………………………………… 3
Iii
BAB 1:
A. PENDAHULUAN
Seiring dengan penjelasan-penjelasan materi yang telah diberikan kepada saya beserta tugas-
tugas yang telah di berikan pada saya maka sebagai tolak ukur apa yang telah saya
dapatkan.Dan tidak banyak yang bisa saya tuliskan ataupun saya jelaskan pada makalah ini.
B. TUJUAN
Tujuan di buatnya makalah ini adalah membuat ringkasan tentang materi.Dan juga bagian dari
tugas dari mata pelajaran pemrograman dasar..
BAB 2 :
1. Judul program
2. Blok program
a. Bagian deklarasi
-
deklarasi label
-
deklarasi konstanta
-
deklarasi tipe
-
deklarasi variable
-
deklarasi prosedur
-
deklarasi fungsi
b. Bagian pernyataan
Begin
End.
Bentuk umum dari bagian pernyataan adalah :
Begin
Statement;
End
Contoh :
Begin
Writeln ( ‘Saya pascal’ );
Writeln ( ‘--------------‘ )
End .
Outputnya : Saya pascal
---------------
Program pascal
tidak mengenal aturan penulisan di kolom tertentu , jadi boleh ditulis
mulai kolom berapapun.
Penulisan statement-statement pada contoh program yang menjorok masuk beberapa kolom
tidak mempunyai pengaruh diproses, hanya dimaksudkan supaya mempermudah pembacaan
program, sehingga akan lebih terlihat bagian-bagiannya, dan baik untuk dokumentasi.
Judul program sifatnya optional dan tidak signifikan didalam program. Jika ditulis dapat
digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi
program dengan lingkungannya yang sifatnya sebagai dokumentasi saja. Judul program
bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma,
Contoh :
Program contoh ;
Begin
Writeln ( ‘Gunadarma’ );
Writeln( ‘---------------‘ );
End .
C. ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN
- Percabangan
Percabangan adalah suatu keadaan dimana pernyataan dapat dieksekusi apabila s
uatu kondisi memenuhi syarat untuk mengerjakan pernyataan tersebut
if
Switch
class teskeputusan{
public static void main (String[] args) {
char jeniskelamin='w';
//nested if
if (jeniskelamin=='L')
System.out.println("Cowok");
else if (jeniskelamin=='P')
System.out.println("Cewek");
else
System.out.println("Banci");
//tenary
System.out.println(jeniskelamin=='P'? "Dia Pasti Cowok." :
"Dia Pasti Cewek");
//switch case
switch (jeniskelamin){
case 'L' : System.out.println("Cowok");
break;
case 'P' : System.out.println("Cewek");
break;
default : System.out.println("Banci");
break;
}}}
- Perulangan
For
For merupakan perulangan yang memiliki variable untuk melakukan pengkondisian. Element pada for
yaitu nilai awal, syarat, dan penambahan atau pengurangan nilai. misalnya
While
While merupakan perulangan yang berguna untuk terus melakukan proses perulangan selama
kondisinya benar (true) dan berhenti apabila salah (false). misalnya:
Struktur Penulisan Perulangan While
do.....while
Do while merupakan perulangan yang hampir sama dengan while, namun while disini bersifat
memproses atau mengecek instruksi terlebih dahulu kemudian membandingkan (kondisi).
sedangkan pada while bersifat mengecek kondisi baru melakukan instruksi. Misal
Struktur Penulisan Perulangan Do... While
Tipe data record adalah tipe data khusus yang komponennya terdiri dari berbagai jenis tipe
data lain. Sebuah record berisi beberapa variabel lain yang ‘dipaketkan’. Konsep struktur
data seperti ini sedikit mirip dengan konsep object dalam bahasa pemrograman modern
(walaupun di dalam pascal juga terdapat konsep tentang object).
Record juga mirip dengan array, dimana kita bisa membuat sebuah variabel yang berisi
berbagai element. Perbedaannya, record bisa menampung berbagai jenis tipe data, tidak
hanya 1 tipe data seperti array.
Cara Penggunaan Tipe Data Record Pascal
Untuk membuat record di dalam pascal, kita bisa mendeklarasikannya di bagian type atau di
bagian var. Jika digunakan di dalam bagian var, cara penulisannya adalah sebagai berikut:
1Var
2 nama_record:
3 record
4 variabel: tipe_data;
5 variabel: tipe_data;
variabel: tipe_data;
6 end;
7
Perhatikan bahwa untuk membuat record, diawali dengan nama_record. Ini adalah variabel
yang akan menampung seluruh isi record. Setelah itu, pembuatan ‘isi’ record berada di antara
perintah record dan end;. Disinilah seluruh variabel yang menjadi ‘isi’ record di defenisikan.
Sebagai contoh, saya akan membuat sebuah record ‘siswa’ yang terdiri dari nama, umur,
sekolah, dan kota. Berikut cara penulisannya:
1Var
2 siswa: record
3 nama: string[20];
4 umur: integer;
5 sekolah: string[30];
kota: string[20];
6 end;
7
Sekarang, variabel ‘siswa’ adalah tipe data record yang terdiri dari nama, umur, sekolah, dan
kota. Bagaimana cara mengakses record ini?
Untuk mengakses variabel di dalam record (atau disebut juga sebagai field), digunakan
karakter titik ( . ), seperti contoh berikut:
1siswa.nama:= 'Anto';
2siswa.umur:= 17;
3siswa.sekolah:= 'SMA 1 Durian Runtuh';
4siswa.kota:= 'Pelembang';
Dalam kode diatas, saya mengisi beberapa data kedalam record ‘siswa’. Perhatikan bahwa isi
masing-masingnya harus bersesuaian dengan tipe data sewaktu kita merancang record. Untuk
nama, bisa diisi dengan string[20], sedangkan untuk umur bisa diisi dengan angka bulat
(integer).
program tipe_record;
uses crt;
var
siswa: record
nama: string[20];
umur: integer;
sekolah: string[30];
kota: string[20];
end;
begin
clrscr;
siswa.nama:= 'Anto';
siswa.umur:= 17;
siswa.sekolah:= 'SMA 1 Durian Runtuh';
siswa.kota:= 'Pelembang';
writeln('Nama : ',siswa.nama);
writeln('Umur : ',siswa.umur);
writeln('Sekolah : ',siswa.sekolah);
writeln('Kota : ',siswa.kota);
readln;
end.
Pada kode diatas, saya membuat sebuah record siswa, mengisinya dengan beberapa data,
kemudian menampilkan isi record menggunakan perintah writeln.
Didalam penulisan bahasa pemograman setiap penggunaan array harus dideklarsikan terlebih
dahulu. Pendeklarasian array diawali dengan nama variabel array diikuti dengan indeks array
yang dituliskan didalam tanda “[]” , diikuti dengan kata cadangan of dan tipe data yang
dibutuhkan. Berikut bentuk penulisan;
Nama_Variable : array [..tipe index ..] of tipe data;
Contoh :
Var
A : array[1..4] of integer;
B : array[1..5] of string;
C: array[1..10] of real;
Di dalam pemrograman prosedur dan fungsi memiliki pengertian yang sama yaitu sebagai
sebuah program terpisah (sub-program) yang berfungsi untuk mengerjakan tugas tertentu.
Tujuan dibuatnya prosedur atau fungsi adalah untuk memudahkan dalam proses ngoding,
karena setiap tugas atau fungsi nantinya dapat di kelompokan ke dalam satu blok program
(sub-program) yang terpisah dari program utama. sehingga proses yang kelihatannya rumit
dapat di pecah menjadi bagian-bagian yang lebih sederhana.
Selain itu ketika kita sudah mendefinisikan suatu prosedur atau fungsi, maka cukup
membuatnya sekali saja dan seterusnya jika ingin menggunakannya kita hanya perlu
memanggilnya dari program utama, hal ini membuat program lebih efisien karena tidak perlu
membuat perintah yang sama berulang-ulang.
Perbedaan Fungsi dan Prosedur
Walaupun tujuan fungsi dan prosedur sama sebagai sub program namun keduanya memiliki
sifat dan ciri-ciri yang berbeda. Berikut ini adalah perbedaannya:
Pendefinisian Prosedur
Program Nama_Program;
Procedure Nama_Prosedur;
Begin
........
........
End;
Begin
.........
.........
End.
Setiap prosedur mempunyai nama yang unik, sebaiknya nama prosedur diawali dengan kata
kerja misalnya HitungKeliling, CariBilangan, CetakNilai dan lain sebagainya.
//Mendefinisikan prosedur
procedure CetakHello;
begin
writeln('Hello World');
end;
Begin
//Memanggil prosedur
CetakHello;
end.
Pada program di atas kita membuat prosedur CetakHello tanpa menggunakan parameter
dengan aksi yang di lakukan yaitu mencetak kalimat Hello World.
Prosedur tersebut di panggil pada program utama dengan cara menyebutkan nama prosedur
CetakHello.
Hasil Keluaran
Program Procedure_2 ;
uses crt;
var
bil1,bil2, hasil: integer;
//Mendefinisikan prosedur
procedure HitungPenjumlahan(var a,b :integer);
begin
hasil:=a+b;
writeln('Hasil Penjumlahan ',a,'+',b,'=',hasil);
end;
Begin
write('Masukan bilangan pertama : '); readln(bil1);
write('Masukan bilangan kedua : '); readln(bil2);
//Memanggil prosedur
HitungPenjumlahan(bil1,bil2);
end.
Pada program kedua kita membuat prosedur dengan nama HitungPenjumlahan prosedur ini
membawa dua parameter yakni variabel a dan b masing-masing bertipe integer.
Variabel a dan b merupakan variabel lokal, dimana ruang lingkup aksesnya hanya pada
prosedur itu sendiri, tidak dapat di akses oleh prosedur lain ataupun pada program utama.
Saat program di jalankan, pengguna akan memasukan bilangan pertama dan kedua yang di
tampung pada variabel bil1 dan bil2 (keduanya merupakan variabel global) yang kemudian
nilainya menjadi pelewatan parameter pada prosedur HitungPenjumlahan.
Hasil Keluaran
Program Procedure_3 ;
uses crt;
var
i, N : integer;
a, t : real;
L : real;
//Mendefinisikan prosedur
procedure HitungLuasSegitiga(alas, tinggi :real; var luas : real);
begin
luas:=(alas*tinggi)/2;
end;
Begin
for i:=1 to N do
begin
writeln ('HITUNG LUAS SEGITIGA-',i);
write ('Masukan alas : ');readln(a);
write ('Masukan tinggi : ');readln(t);
//Memanggil prosedur
HitungLuasSegitiga(a,t,L);
writeln('Luas segitiga = ',L:0:2);
writeln();
end;
end.
Pada contoh prosedur yang ketiga kita membuat program untuk menghitung sejumlah N luas
segitiga dengan menggunakan prosedur HutungLuasSegitiga dengan melewatkan 3
parameter yakni alas, tinggi dan luas yang masing-masing bertipe real. Prosedur ini akan
mengerjakan instruksi untuk menghitung luas segitiga dengan rumus luas=(alas*tinggi)/2;
Karena program akan menghitung sejumlah N luas segitiga, maka kita perlu melakukannya
dengan menggunakan perulangan for do. Nilai N akan menjadi batas perulangan akan
dilakukan.
Pengguna akan memaukan alas dan tinggi segitiga yang di tampung pada variabel a dan t
yang merupakan variabel global, yang selanjutnya nilainya akan di lewatkan pada prosedur
HutungLuasSegitiga.
Pendefinisian Fungsi
Pendefinisian fungsi sama halnya dengan prosedur, yang membedakan pada kata kunci
menggunakan function sebelum nama fungsi di deklarasikan.
Selain itu fungsi juga memiliki tipe yang mendefinisikan tipe nilai yang diberikan oleh fungsi,
tipe dapat berupa tipe dasar atau bentukan. Nantinya fungsi akan mengembalikan nilai sesuai
dengan tipe fungsi tersebut.
Perlu diketahui setiap variabel/konstanta yang di deklarasikan di dalam fungsi hanya dapat
digunakan dalam fungsi itu sendiri(tidak untuk fungsi lain atau program utama), hal ini kita
kenal dengan istilah variabel lokal.
Program Nama_Program;
Function nama_fungsi(daftar_parameter): type;
Begin
........
........
End;
Begin
.........
.........
End.
Pada program di atas kita membuat program untuk menghitung perkalian dua buah bilangan
menggunakan fungsi HitungPerkalian dengan parameter a dan b bertipe integer. Fungsi ini
akan mengembalikan nilai dengan mengalikan bilangan a dan b. Variabel a dan b merupakan
variabel lokal pada fungsi tersebut.
Pada bagian main program di deklarasikan variabel x dan y dengan tipe integer, nantinya
pengguna akan memasukan nilai x dan y dan nilai tersebut akan dilewatkan pada parameter
fungsi HitungPerkalian.
Program Fungsi_2;
uses crt;
Function genap(var x:integer): boolean;
Begin
genap:=(x mod 2=0);
End;
Var
bil: integer;
begin
clrscr;
write('Masukan bilangan : '); readln(bil);
if genap(bil) then
begin
writeln(bil,' adalah bilangan genap');
end
else
begin
writeln(bil,' adalah bilangan ganjil');
end;
readln;
end.
Pada contoh program yang kedua, untuk menentukan apakah suatu bilangan yang dimasukan
merupakan bilangan genap atau ganjil tentunya menggunakan function.
Fungsi di definisikan dengan nama genap yang membawa sebuah parameter x dengan tipe
integer. Fungsi genap bertipe boolean yang mana fungsi ini akan menghasilkan nilai balik
true atau false.
Fungsi genap akan mengerjakan instruksi untuk melakukan operasi modulus 2 terhadap nilai
x, jika menghasilkan nilai 0 maka fungsi tersebut bernilai true (artinya nilai x adalah genap).
Pada main program pengguna akan memasukan bilangan yang di tampung pada variabel bil
yang kemudian di cek kondisi jika fungsi genap bernilai true maka program menampilkan
bilangan genap sedangkan jika false akan menampilkan bilangan ganjil.
Program Fungsi_3;
uses crt;
Function faktor(bilangan :integer) : real;
Begin
If bilangan = 0 then faktor := 1
Else
Faktor := faktor(bilangan-1)*bilangan;
End;
Var
n : integer;
begin
clrscr;
write('Berapa Faktorial Dari = '); readln(n);
writeln(n,' faktorial = ', faktor(n):0:0);
readln;
end.
Pada contoh yang ketiga program tentang faktorial, fungsi yang kita definisikan sebenarnya
sudah mengimplementai algoritma rekursif.
Fungsi yang di definisikan adalah faktor bertipe real dengan sebuah parameter bertipe integer.
Fungsi ini akan mengerjakan instruksi untuk menghitung faktorial suatu bilangan.
BAB 3 :
DAFTAR PUSTAKA
- https://kelasprogrammer.com/contoh-program-pascal-prosedur-dan-
fungsi/
- http://sidikariffine.blogspot.com/2015/10/algoritma-percabangan-dan-
perulangan.html
- https://www.duniailkom.com/tutorial-belajar-pascal-pengertian-dan-cara-
penggunaan-tipe-data-record-pascal/