materi 2 dan 3nisa_raihani.staff.gunadarma.ac.id/downloads/files... · jika golongan 1, besarnya...

34
ALGORITMA & PEMROGRAMAN 2A MATERI 2 DAN 3

Upload: others

Post on 20-Dec-2020

20 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

ALGORITMA & PEMROGRAMAN 2A

MATERI 2 DAN 3

Page 2: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 3: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

3ALGORITMA & PEMROGRAMAN 2A (1IA)

Output : Bahasa Turbo Pascal merupakan bahasa terstrukur

Page 4: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 5: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 6: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 7: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 8: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 9: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 10: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 11: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 12: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 13: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

4. LENGTH : Memberikan nilai panjang atau jumlah karakter

dari suatu string Integer

Bentuk Umum : LENGTH (string)

13ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 14: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 15: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

15ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 16: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 17: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

17ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 18: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 19: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 20: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 21: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

21ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 22: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 23: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

Bentuk Proses (Flowchart) :

23ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 24: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 25: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 26: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

Contoh :

26ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 27: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

Contoh :

27ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 28: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

STRUKTUR CASE

28ALGORITMA & PEMROGRAMAN 2A (1IA)

Page 29: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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

Page 30: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 31: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 32: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 33: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

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)

Page 34: MATERI 2 DAN 3nisa_raihani.staff.gunadarma.ac.id/Downloads/files... · jika golongan 1, besarnya gaji adalah Rp. 100.000 jika golongan 2, besarnya gaji adalah Rp. 200.000 jika golongan

TERIMA KASIH