DASAR PEMROGRAMAN
Oleh :
Nama : Raihan Azhar Lapandu
NPM : 207006044
LABORATORIUM INFORMATIKA
PROGRAM STUDI INFORMATIKA
FAKULTAS TEKNIK UNIVERSITAS SILIWANGI
TASIKMALAYA
2020
BAB II
TIPE DATA, NILAI, INPUT DAN OUTPUT
TUJUAN PRAKTIKUM
Praktikum diharapkan dapat:
1. Mengetahui dan memahami penggunaan tipe-tipe data dasar pada Pascal
2. Memahami penggunaan operator dan ekspresi dalam membuat program
3. Memahami penggunaan perintah dasar Input-Output pada Pascal
DASAR TERORI
2.1. TIPE DATA
Pada umumnya, program komputer bekerja dengan memanipulasi objek(data)
di dalam memori. Objek(data) yang akan diprogram bermacam-macam jenis atau
tipenya. Jenis-jenis tipe data dasar yang dikenal dalam bahasa pascal antara lain:
1. Boolean: tipe data bilangan logika, hanya bisa bernilai True(Benar) atau
False(Salah)
2. False: merupakan tipe data bilangan bulat. Macam tipe bilangan bulat:
Type Rentang Nilai Ukuran
byte 0...255 8 bit
shortint -128.....127 8 bit
word 0...65535 16 bit
integer -32768....32767 16 bit
longint -2147483648...2147483647 32 bit
1
2
3. Real: merupakan tipe data bilangan desimal. Macam tipe bilangan real:
Type Rentang Nilai Ukuran
real 2.9x10-39... 1.7x1038 6 byte
single 1.5x10-45... 3.4x1038 4 byte
double 5.0x10-324... 1.7x10308 8 byte
extended 3.4x10-4932... 1.1x104932 10 byte
Contoh:
VAR
Nama : string; {variabel nama bertipe string}
Nim : integer; {variabel nim bertipe integer/bilangan bulat}
Jns_kelamin : char; {variabel jns_kelamin bertipe karakter}
Nilai : real; {variabel nama bertipe real/bilangan desimal}
Nilai_uts, nilai_uas, nilai_tugas : real; {variabel dengan nama nilai_uts, nilai_uas,
nilai_tugas bertipe sama yaitu real}
4
b. KONSTANTA
Konstanta merupakan nilai yang sifatnya tetap dan dan nilai yang disimpan
padanya tidak dapat diubah selama eksekusi program berlangsung. Untuk
mendefinisikan konstanta harus memakai kata kunci const dengan bentuk
umum:
const nama_konstanta= nilai;
Konstanta harus langsung diisi dengan sebuah nilai tertentu sebagai contoh:
const phi = 3.14;
Analisis
Program ini berfungsi untuk menghitung luas lingkaran dengan
menggunakan rumus untuk luas : phi*r*r, dan untuk keliling : 2*phi*r. Phi
nya didefinisikan dengan menggunakan const yaitu dengan nilai tetap 3.14.
Menggunakan tiga variabel, yaitu ‘jari_jari’ untuk mewakilkan jari-jari
lingkaran, ‘luas’ untuk nantinya sebagai input memasukkan rumus luas
lingkaran, dan ‘keliling’ untuk memasukkan input rumus keliling
lingkaran. Menggunakan operator perkalian ‘*’.
Jenis-jenis operator:
1. Operator Assignment(Pemberian Nilai)
Bentuk umum:
nama_variabel := ekspresi;
Statement tersebut akan menyimpan nilai ekspresi pada sebelah kanan operator
‘:=’, pada tempat penyimpanan yang ditunjukan oleh nama_variabel di sebelah
kiri operator ‘:=’
2. Operator Perbandingan
Operator perbandingan digunakan untuk membandingkan dua operand.
Operand yang dibandingkan bisa bertipe bilangan bulat, karakter, real, boolean,
atau string. Ekspresi yang menggunakan operator perbandingan akan
menghasilkan nilai boolean(true atau false).
Operator Operasi Contoh Ekspresi Hasil
= Sama dengan a:=6=9 a=false
<> Tidak sama dengan a:=7< > 5 a=false
< Lebih kecil dari a:=4<6 a=true
> Lebih besar dari a:=10>1 a=true
<= Lebih kecil atau sama dengan a:=8<=4 a=false
>= Lebih besar atau sama dengan a:=3>=1 a=true
6
3. Operator aritmatika
Operator aritmatika hanya dapat dikenakan pada operand bertipe bilangan bulat
atau bilangan real. Ekspresi yang menggunakan operator ini pun hanya akan
menghasilkan nilai bilangan bulat atau real
4. Operator logika
Operator ini dikenakan pada operand bertipe dan ekspresinya akan
menghasilkan nilai boolean(true atau false)
Operator Operasi
Not bitwise negation(negasi)
And bitwise and(dan)
Or bitwise or(atau)
Xor bitwise xor
Hasil operator not, and, or, dan xor untuk berbagai kombinasi kondisi
Analisis
Program ini menggunakan empat variabel yang semuanya bertipe boolean.
Variabel ‘k’ bernilai true dan variabel ‘l’ bernilai false. Variabel ‘m’ bernilai
false karena ‘k or l’= true and l = false, true and false = FALSE. Variabel ‘n’
bernilai True karena semua pernyataannya bernilai true.
9
5. Operator string
Analisis
Program ini menggunakan dua variabel ‘A’ dan ‘B’ yang bertipe string.
Variabel ‘A’ nilainya Aku dan variabel ‘B’ nilainya Dia. Kemudian dua
variabel ini digabungkan menggunakan operator string yang hanya ada satu,
yaitu operator penjumlahan ‘+’ untuk menggabungkan kedua data string
tersebut. Hasilnya, variabel ‘A’ digabung dengan variabel ‘B’ diselingin
dengan kata ‘ dan ‘ menjadi Aku dan Dia.
10
a. READ
Perintah untuk membaca data yang dimasukkan pemakai melalui keyboard,
data tersebut disimpan pada variable. Pada statement ini posisi kursor tidak
pindah ke baris selanjutnya.
Sintaks: read(nama_variable);
Program 2.6
Program Data_Angka;
Var
X, Y, Z: char;
Begin
Write(‘Masukkan 3 buah karakter : ‘); read(X, Y, Z);
Writeln;
Writeln(‘Karakter pertama = ‘,X);
Writeln(‘Karaktek kedua = ‘,Y);
Writeln(‘Karakter ketiga = ‘,Z);
end.
Analisis
Program ini dibuat untuk mengidentifikasi tiga huruf yang dimasukkan
kedalam program tersebut. Menggunakan tiga variabel yang bertipe char.
Variabel inilah yang nantinya mewakili ketiga huruf yang akan diinput oleh
si user nantinya.
11
b. READLN
Perintah untuk membaca data yang dimasukkan pemakai, pada statement ini
posisi kursor akan pindah ke baris selanjutnya setelah di input. Readln juga
bisa digunakan untuk menghentikan program(menunggu enter ditekan)
Sintaks: readln(nama_variable);
readln;
Program 2.7
Program Jumlah_Bilangan;
Var
angka1, angka2: integer;
Begin
Writeln(‘Input angka pertama : ‘); readln(angka1);
Writeln(‘Input angka kedua : ‘); readln(angka2);
Writeln(‘angka1,’+’,angka2,’=’,angka1+angka2);
Readln;
end.
Analisis
Program ini dibuat untuk menjumlahkan antara dua bilangan. Bilangan ini
diwakili oleh variabel ‘angka1’ untuk bilangan pertama dan ‘angka2’ untuk
bilangan kedua. Kemudian variabel tersebut ditambahkan dengan
menggunakan operator ‘+’. Program ini cukup sederhana, hanya
menggunakan perintah writeln dan readln.
c. READKEY
Untuk pembacaan sebuah karakter dari keyboard. Tipe data yang dihasilkan
adalah char. Karakter yang dimasukkan tidak ditampilkan di layar.
Sintaks: nama_variable=Readkey;
12
Analisis
Program ini menunjukkan kepada kita output-output dari berbagai tipe. Output
ini bisa dicapai dengan menggunakan perintah ‘write’ dan ‘writeln’. Untuk
output variabel, variabel ini diwalkilkan dengan ‘bil’ yang bertipe real. Untuk
output constanta, maksimalnya 1000. Untuk output integer, berupa angka
bilangan bulat. Untuk output string, berupa huruf dan angka yang membentuk
suatu kalimat atau paragraf. Untuk output ekspresi, berupa operasi-operasi
matematika semisal penjumlahan”+’, perkalian ‘*’, dan lainnya. Terakhir,
untuk input fungsi berupa fungsi matematika.
13
2.5. LATIHAN
1.1.1. Soal
1. Buatlah sebuah program yang menginputkan nama, nim, dan kelas kemudian
tampilkan output dari program tersebut sebagai berikut: “Nama saya [nama]
dengan NIM [nim] merupakan mahasiswa Teknik Informatika kelas [kelas]”.
Contoh:
[input]
Masukkan Nama Anda : Arjuna
NIM : 077006xxx
Kelas :A
[output]
Nama saya Arjuna dengan NIM 077006xxx merupakan mahasiswa Teknik
Informatika kelas A
2. Buat program untuk mencari sisi miring dari suatu segitiga siku-siku jika
diketahui panjang dua sisi yang membentuk sudut siku-siku.
Petunjuk: Sisi miring dari segitiga siku-siku dapat dihitung dengan rumus
phytagoras:
c = √𝑎2 + 𝑏2 , dengan a dan b adalah siku-siku
Kemudian hitung pula Luas dari segitiga siku-siku tersebut dengan rumus
L = 1/2xalasxtinggi
Kamus
n, a, b, c: integer
ra: integer
Deskripsi
read(n)
a n div 3600
ra n mod 3600
b ra div 60
c ra mod 60
write(a, b, c)
4. Lakukan analisa terhadap program 2.6 dan 2.7! Tentukan input dan output dari
program serta jelaskan secara singkat proses yang dikerjakan oleh program
tersebut!
14
2.5.2. Jawaban
1. Identitas.pas
Program Identitas;
Uses Crt;
Var
Nama, NIM, Kelas: string;
Begin
Clrscr;
Write(‘Masukkan Nama Anda: ‘); readln(Nama);
Write(‘NIM: ‘); readln(NIM);
Write(‘Kelas: ‘); readln(Kelas);
Writeln(‘Nama saya ‘,Nama,’ dengan NIM ‘,NIM,’ merupakan mahasiswa
Teknik Informatika kelas ‘,kelas);
Readln;
End.
Analisis
Menggunakan tiga variabel sebagai inputnya, yaitu Nama, NIM, dan Kelas yang tipe
datanya string. Menggunakan fungsi writeln.
2. Pythagoras.pas
Program pythagoras;
Uses crt;
Var a,b,c:integer; d:real;
Begin
Clrscr;
write(‘Masukkan Panjang Sisi A = ‘);readln(a);
write(‘Masukkan Panjang Sisi B = ‘);readln(b);
c:=sqr(a)+sqr(b);
writeln(‘Panjang Sisi C adalah = ‘,sqrt(c));
d:=a*b/2
writeln(‘Luas Segitiga adalah = ‘,d:2:2);
end.
Tampilan pada layar
15
Analisis
Menggunakan tiga variabel yang bertipe integer sebagai input dari sisi-sisi
segitiganya, dan satu variabel bertipe real sebagai pencari luas dari segitiga
tersebut. Untuk mencari sisi miring, digunakan rumus c = √𝑎2 + 𝑏2 dan untuk
rumus luas digunakan rumus ½*a*t. Fungsi sqr adalah sebagai pangkat dua,
dan sqrt sebagai fungsi pengakaran.
3. pengubahdetik.pas
Program DetikJadiJam;
uses crt;
var
n,a,b,c:integer;
ra:integer;
begin
clrscr;
write(‘Masukkan jumlah detik diatas 3600 (diatas 1 jam) yang
ingin diubah menjadi format jam, menit, dan detik = ‘);
readln(n);
a:=n div 3600;
ra:=n mod 3600;
b:=ra div 60;
c:=ra mod 60;
writeln(a,’ jam ‘,b,’ menit ‘,c,’ detik ‘);
readln;
end.
Analisis
Program ini digunakan untuk mengubah/mengkonversi detik yang jumlahnya
diatas 3600 detik (diatas 1 jam) menjadi format jam-menit-detik. Menggunakan
operator div dan mod, kemudian menggunakan empat variabel, yaitu n,a,b,c
dan ra yang bertipe integer. Div adalah hasil bagi dalam pembagian, sedangkan
16
4. Program 2.6
Analisis
Program ini dibuat untuk mengidentifikasi tiga huruf yang dimasukkan
kedalam program tersebut. Menggunakan tiga variabel yang bertipe char.
Variabel inilah yang nantinya mewakili ketiga huruf yang akan diinput oleh
si user nantinya.
Input
Program Data_Angka;
Var
X, Y, Z: char;
Begin
Write(‘Masukkan 3 buah karakter : ‘); read(X, Y, Z);
Writeln;
Writeln(‘Karakter pertama = ‘,X);
Writeln(‘Karakter kedua = ‘,Y);
Writeln(‘Karakter ketiga = ‘,Z);
end.
Output
Program 2.7
Analisis
Program ini dibuat untuk menjumlahkan antara dua bilangan. Bilangan ini
diwakili oleh variabel ‘angka1’ untuk bilangan pertama dan ‘angka2’ untuk
bilangan kedua. Kemudian variabel tersebut ditambahkan dengan
menggunakan operator ‘+’. Program ini cukup sederhana, hanya
menggunakan perintah writeln dan readln.
Input
Program Jumlah_Bilangan;
Var
angka1, angka2: integer;
Begin
Writeln(‘Input angka pertama : ‘); readln(angka1);
Writeln(‘Input angka kedua : ‘); readln(angka2);
Writeln(‘angka1,’+’,angka2,’=’,angka1+angka2);
Readln;
17
end.
Output
18