materi 2 dan 3nisa_raihani.staff.gunadarma.ac.id/downloads/files... · jika golongan 1, besarnya...
TRANSCRIPT
ALGORITMA & PEMROGRAMAN 2A
MATERI 2 DAN 3
MANIPULASI STRING & STRUKTUR KENDALI
2ALGORITMA & PEMROGRAMAN 2A (1IA)
OPERASI STRING
Suatu string dalam Bahasa Pascal dapat dioperasikan
dengan berbagai macam tujuan. Pascal menyediakan
berbagai prosedur standar dan fungsi stanfar untuk
operasi string
Dalam operasinya string hanya mempunyai sebuah
operator, yaitu operator ‘+’. Bila operator ini digunakan
untuk dua buah elemen string, maka akan menjadi
penggabungan dua buah string menjadi satu
Panjang maksimal suatu string yang diijinkan oleh
Pascal adalah 255 karakter
3ALGORITMA & PEMROGRAMAN 2A (1IA)
Output : Bahasa Turbo Pascal merupakan bahasa terstrukur
4
OPERASI STRING (LNJT)
Pascal menyediakan berbagai prosedur standar
dan fungsi standar untuk operasi string
Prosedur Standar : Fungsi Standar :
1. DELETE 1. CONCAT
2. INSERT 2. COPY
3. STR 3. POS
4. VAL 4. LENGHT
ALGORITMA & PEMROGRAMAN 2A (1IA)
PROCEDURE STANDART PADA STRING
1. DELETE : Menghapus substring dari suatu string, dimulai dari posisi
i, sebanyak n String
Bentuk Umum : DELETE (string,i,n);
Cat : Jika jumlah i lebih besar dari jumlah karakter dalam string, maka
tidak ada karakter yang terhapus
Output : String pertama = ABCDEF
String akhir = AEF
5ALGORITMA & PEMROGRAMAN 2A (1IA)
2.INSERT : Insert (Menyisipkan) substring
(String1) dalam suatu string (String2), pada posisi I
String
Bentuk Umum : INSERT (string1, string2, i)
Cat : Apabila hasil penyisipan menjadi String yang
panjangnya lebih dari 255 karakter, maka yang
dianggap signifikan hanya sampai 255 karakter saja
6ALGORITMA & PEMROGRAMAN 2A (1IA)
7ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh :
VAR r,s : string[24];
BEGIN
s := ‘UNIVERSITAS DARMA’;
r := insert(‘GUNA’,s,13);
writeLn(‘Hasil r adalah ‘, r);
END.
Hasil r adalah UNIVERSITAS GUNADARMA
3.STR : Mengubah bentuk numerik (x) menjadi nilai string (s)
Bentuk Umum : STR (x [ : n [ :m ] ], string)
Cat : Nilai ‘n’ menunjukkan format panjang dari nilai utuh
dan nilai ‘m’ menunjukkan format panjang desimal (Nilai
dibelakang koma)
8ALGORITMA & PEMROGRAMAN 2A (1IA)
4. VAL : Mengubah nilai suatu argumen string menjadi nilai numerik
Bentuk Umum :
Cat : Var_string_angka berisi data string yang berupa angka
Var_nilai berisi data hasil konversi
Jika terjadi kesalahan data maka akan posisi kesalahan disimpan
pada kode
9ALGORITMA & PEMROGRAMAN 2A (1IA)
FUNGSI STANDAR PADA OPERASI STRING
1. CONCAT : Menggabungkan dua string secara berurut
Bentuk Umum : ConCat(S1,S2[,S3,…, Sn])
Cat : Fungsi standar ini mempunyai operasi yang sama dengan
operator string ‘+’, yaitu merangkai beberapa nilai string
10ALGORITMA & PEMROGRAMAN 2A (1IA)
2.COPY : Mengambil bagian string (Substring) dari suatu
string, dimulai dari posisi i, sebanyak n String
Bentuk Umum : COPY (String, i, n )
Contoh : Nilai r adalah BCD
11ALGORITMA & PEMROGRAMAN 2A (1IA)
3. POS : Mencari posisi letak dari suatu substring yang ada dalam suatu
string Interger
Bentuk Umum : POS (subString, string)
Cat : Jika SubString yang dicari terdiri dari beberapa karakter, maka
dalam pencariannya akan mencari deretan karakter yang sesuai
12ALGORITMA & PEMROGRAMAN 2A (1IA)
4. LENGTH : Memberikan nilai panjang atau jumlah karakter
dari suatu string Integer
Bentuk Umum : LENGTH (string)
13ALGORITMA & PEMROGRAMAN 2A (1IA)
STRUKTUR KENDALI
STRUKTUR PERULANGAN WHILE-DO
Mempunyai struktur sebagai berikut :
Bentuk Umum : WHILE condition Do statement
Bentuk Proses (Flowchart) :
Statement WHILE-DO digunakan untuk melakukan proses perulangan
suatu statement atau blok statement terus-menerus selama kondisi
ungkapan-logika pada WHILE masih bernilai logika benar
14ALGORITMA & PEMROGRAMAN 2A (1IA)
statement While While ungkapan logika Do statement
15ALGORITMA & PEMROGRAMAN 2A (1IA)
STRUKTUR PERULANGAN REPEAT-UNTIL
Digunakan untuk mengulang (Repeat) statement-statement atau blok
statement sampai (Until) kondisi yang diseleksi di Until tidak
terpenuhi
Mempunyai struktur sebagai berikut :
Bentuk Umum : REPEAT sequence statement UNTIL condition
Bentuk Proses (Flowchart) :
16ALGORITMA & PEMROGRAMAN 2A (1IA)
Repeat statement Until Ungkapan
;
C
statement
false
true
17ALGORITMA & PEMROGRAMAN 2A (1IA)
Perbedaan antara struktur REPEAT-UNTIL dengan
WHILE-DO :
• Paling sedikit statement-statement di dalam perulangan
REPEAT-UNTIL diproses sekali, karena seleksi kondisi ada
pada statement Until yang terletak dibawah. Sedang pada
struktur WHILE-DO paling sedikit dikerjakan nol kali, karena
seleksi kondisi ada pada statement While yang terletak diatas,
sehingga kalau kondisi sudah tidak terpenuhi, maka tidak
akan masuk ke dalam lingkungan perulangan
• Pada REPEAT-UNTIL dapat tidak dipergunakan blok
statement (Tidak diperlukan Begin dan End untuk
menunjukkan batas perulangannya), karena batas
perulangannya sudah ditunjukkan oleh Repeat sampai dengan
Until (Repeat dan Until sebagai pengganti Begin dan End)
18ALGORITMA & PEMROGRAMAN 2A (1IA)
STRUKTUR FOR
Digunakan untuk mengulang statement atau satu blok statement berulang
kali sejumlah yang ditentukan
Mempunyai struktur sebagai berikut :
Bentuk Umum :
FOR id := v1 TO v2 DO statement
(Dengan penghitung / counter dari kecil ke besar (Penambahan positif))
FOR id := v1 DOWNTO v2 DO statement
(Dengan penghitung / counter dr besar ke kecil (Pertambahannya
negatif))
19ALGORITMA & PEMROGRAMAN 2A (1IA)
statement For FOR variabel kontrol nilai awal:=
To
DownTo
nilai akhir Do statement
Bentuk Proses (Flowchart) :
20ALGORITMA & PEMROGRAMAN 2A (1IA)
id = v1
t = v2
id <= t
statement
id = succ (id)
false
true
FOR - TO
id = v1
t = v2
id >= t
statement
id = pred (id)
false
true
FOR - downto
21ALGORITMA & PEMROGRAMAN 2A (1IA)
STATEMEN IF
Bentuk Umum :
• IF kondisi THEN statement
• IF kondisi THEN statement_1 ELSE statement_2
• IF kondisi_1 THEN
IF kondisi_2 THEN statement_1
ELSE statement_2
• IF kondisi_1 THEN
BEGIN
IF kondisi_2 THEN statement_1 ELSE statement_2
END
22ALGORITMA & PEMROGRAMAN 2A (1IA)
Bentuk Proses (Flowchart) :
23ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh : If - Then
Var
NilaiUjian : real;
Ket : string[11];
Begin
Ket := ‘Tidak Lulus’;
Write(‘Nilai yang didapat ? ‘);
Readln(NilaiUjian);
If NilaiUjian > 60 Then Ket :=’Lulus’;
Writeln(Ket);
End.
Hasilnya :
Nilai yang didapat ? 70
Lulus
24ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh : If - Then - else
Var
NilaiUjian : real;
Ket : string[11];
Begin
Write(‘Nilai yang didapat ? ‘);
Readln(NilaiUjian);
If NilaiUjian > 60 Then
Writeln(‘Lulus’);
Else
Writeln(‘Tidak Lulus’);
End.
Hasilnya :
Nilai yang didapat ? 70
Lulus
25ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh :
26ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh :
27ALGORITMA & PEMROGRAMAN 2A (1IA)
STRUKTUR CASE
28ALGORITMA & PEMROGRAMAN 2A (1IA)
Bentuk Proses (Flowchart) :
29ALGORITMA & PEMROGRAMAN 2A (1IA)
Decisio n
S-1 S-n
S-3
S-2
cll-1 cll-n
... .dst. ...kete ra nga n :
cll = case la be l list
Perbedaan antara CASE dengan IF adalah jika
statement if menyeleksi suatu kondisi dan
terpenuhi, setelah memproses statement dalam
lingkungan yang terpenuhi tersebut, proses
penyeleksian masih dilakukan terhadap statement if
berikutnya yang lain
Sedangkan pada struktur CASE-OF bila salah satu
kondisi terpenuhi dan statement tersebut telah
diproses, selanjutnya statement-statement yang
lainnya dalam lingkungan CASE tidak akan
diseleksi lagi
30ALGORITMA & PEMROGRAMAN 2A (1IA)
Daftar case label dapat berupa sebuah konstanta,
atau range dari konstanta yang bukan bertipe real
Contoh :
1 : (nilai integer 1)
1,2,3,4 : (nilai integer 1,2,3,4)
1..5 : (nilai integer 1,2,3,4,5)
‘A’ : (nilai karakter A)
‘A’,’B’ : (nilai karakter A dan B)
‘A’..’D’ : (nilai karakter A,B,C,D)
‘*’ : (nilai karakter *)
31ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh :
Var Nilai :char;
Begin
Write(‘Nilai huruf yang didapat’);readln(Nilai);
CASE Nilai OF
‘A’ : writeln (‘sangat baik’);
‘B’ : writeln (‘baik’);
‘C’: writeln (‘cukup’);
End;
End.
Hasil :
Nilai huruf yang didapat C
cukup
32ALGORITMA & PEMROGRAMAN 2A (1IA)
Contoh :
Kasus yang menggunakan CASE, misalnya untuk menentukan
besarnya gaji berdasarkan golongannya.
jika golongan 1, besarnya gaji adalah Rp. 100.000
jika golongan 2, besarnya gaji adalah Rp. 200.000
jika golongan 3, besarnya gaji adalah Rp. 300.000
jika golongan 4, besarnya gaji adalah Rp. 400.000
yang lain besarnya gaji adalah Rp. 500.000
33ALGORITMA & PEMROGRAMAN 2A (1IA)
TERIMA KASIH