Algoritma Pemrograman 1 01 Konsep Dasar

  Konsep Dasar Algoritma Ika Menarianti Algoritma Pemrograman I Apakah Algoritma itu?  Masalah adalah pertanyaan atau tugas yang kita cari jawabannya. 

  Untuk masalah yang kecil, dapat ditemukan solusi dengan mudah dan cepat.

  

  Jika masalah berukuran besar? Perlu dilakukan langkah-langkah pengurutan untuk menghasilkan solusi.

  

  Prosedur yang berisi langkah-langkah penyelesaian masalah disebut algoritma

  Pengertian Algoritma Algoritma adalah urutan langkah-langkah untuk memecahkan suatu

  masalah Definisi lain algoritma menurut: 1.

  Anany Levitin, algoritma adalah deretan instruksi yang jelas untuk memecahkan masalah yaitu untuk memperoleh keluaran yang diinginkan dari suatu masukan dalam jumlah waktu yang terbatas.

  2. Thomas H. Cormen, algoritma adalah prosedur komputasi yang

  terdefinisi dengan baik yang menggunakan beberapa nilai sebagai masukan dan menghasilkan beberapa nilai yang disebut keluaran.

  3. Microsoft Bookshelf, algoritma adalah urutan langkah berhingga

  untuk memecahkan masalah logika atau matematika Apakah Pemrograman itu? 

  Algoritma baru efektif jika dijalankan oleh sebuah pemroses (processor)

  

  Menurut Les Goldschlager, suatu pemroses harus: 1.

  Mengerti setiap langkah dalam algoritma

  

  Algoritma yang ditulis dalam bahasa komputer dinamakan program

  

  Bahasa komputer yang digunakan dalam menulis program disebut

  bahasa pemrograman

  Orang yang membuat program komputer dinamakan pemrogram (programmer)

  

  Kegiatan merancang dan menulis program disebut pemrograman

Langkah-langkah pemrograman 1

  Mendefinisikan masalah 2. Menentukan solusi 3. Memilih algoritma 4. Menulis program 5. Menguji program 6. Menulis dokumentasi 7. Merawat program

Contoh algoritma sederhana 1

  Menulis Surat: 1.

  Mempersiapkan kertas dan amplop 2. Mempersiapkan alat tulis 3. Mulai menulis 4. Memasukkan kertas ke dalam amplop 5. Pergi ke kantor pos untuk mengirimkan surat Contoh algoritma sederhana 2

  Pengerjaan dalam praktikum:

  1. Siapakan tabung reaksi ukuran 100cc 2.

  Teteskan 50 cc larutan H 2 SO 4 ke dalam tabung 3.

  Campurkan 20 cc larutan NaOH kedalam tabung, aduk hingga tercampur rata Pengisian pulsa: 1.

  Tekan #888 lalu tekan Yes 2. Tekan “2” untuk memulai memasukkan pulsa 3.

  Masukkan 14 digit kartu prabayar

  4. Tekan tombol Yes Contoh algoritma matematika 1 

  Menghitung luas lingkaran: =

  2 1.

  Masukkan R 2. Pi  3.14 3. L  Pi * R * R 4. Tulis L Contoh algoritma matematika 2 

  Menuliskan nilai absolut: = ≥ 0 = < 0 1.

  Masukkan x 2. Jika (

  < 0) maka kerjakan baris 3, jika tidak kerjakan 3. baris 4  - 4. Tulis Contoh algoritma matematika 3 

  Menghitung rata-rata:

  <1

  = 1. Masukkan N 2.

   1 3.  0 4.

  Selama ( <=N) kerjakan baris 4 sampai dengan 7 5.

  Masukkan 6.

   + 1 7.  + 8.

  Rata-rata  /N Catatan Akhir..

  

  Algoritma sebenarnya digunakan untuk membantu kita dalam mengonversikan suatu permasalahan ke dalam bahasa komputer.

  Soal...

  1. Tulislah algoritma untuk mencari luas segitiga jika masukan dari pengguna adalah alas dan tingginya.

  1 = 2 . .

  2. Tulislah algoritma untuk mencari sisi miring dari segitiga siku-siku jika panjang dua sisi membentuk sudut siku-siku.

  2

  2

  • =
Tipe Data 

  Variabel adalah tempat dimana mengisi atau mengosongkan nilai dan memanggil kembali. Setiap variabel memiliki nama (identifier) dan nilai.

  Misal: Username = “Ryan”;

  Password =“123456”;

   Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa

  diubah. Misal:

  

pi = “3.14”;

  Tipe data adalah jenis data yang dapat diolah komputer untuk memenuhi kebutuhan dalam pemrograman.

  

  Setiap variabel atau konstanta dalam kode program, tentukan dengan pasti tipe datanya.

  Macam-macam Tipe Data 1.

  Tipe Sederhana

  a) Tipe Ordinal  Tipe Bilangan Bulat

   Tipe Boolean

   Tipe Karakter

   Tipe Terbilang

   Tipe Subjangkauan

  b) Tipe Real 2.

  Tipe String 3. Tipe Terstruktur 4. Tipe pointer

  5. Tipe Prosedural 6.

  Tipe Objek Tipe Bilangan Bulat Digunakan untuk menyimpan bilangan bulat.

  • 32768..32767
  • 2147483648..2147483647 0..255 0..65535 8 bit 16 bit 32 bit 8 bit 16 bit

  Contoh:

  

  Mendeklarasikan dua variabel bertipe integer yaitu x dan y var x, y : integer;

  Tipe Range Ukuran Shortint Integer Longint Byte Word 128...127 Tipe Boolean Tipe yang hanya dapat bernilai benar atau salah.

   Yang paling sering digunakan adalah tipe boolean. 

  Mendeklarasikan variabel bertipe boolean var b1: boolean;

  

  Ada dua macam nilai yang diberikan b1:= true; b1:= false;

  Tipe Data Ukuran Boolean ByteBool WordBool LongBool

  1 Byte

  1 Byte

  2 Byte

  4 Byte Tipe Karakter 

  Digunakan untuk menyimpan data alfanumeris

  

  Tipe karakter dideklarasikan dengan kata kunci char

   var

  ch: char;

  

  Cara memberi nilai pada variabel bertipe karakter:

   Menuliskan karakter didalam tanda petik ch := „A‟;

   Menuliskan tanda # diikuti dengan nomor ASCII ch := #65;

   Mengonversikan nomor ASCII ke karakter menggunakan fungsi chr ch := chr(65);

  Tipe Subjangkauan 

  Mendeklarasikan tipe yang berada pada jangkauan tertentu

  

  Pendeklarasian dilakukan dengan menuliskan batas bawah dan batas atas jangkauannya. type Bulan = 1 . . . 12;

  

  Mendeklarasikan tipe Bulan yang memiliki jangkauan 1 sampai 12, maka variabel bertipe Bulan, seperti: var januari : Bulan;

  

  Tidak bisa memberikan nilai kurang dari 1 atau lebih dari 12 Januari := 1;

  Tipe Terbilang 

  Memberi nama pada nilai tertentu. Contoh: type TipeHari = (Minggu, Senin, Selasa, Rabu, Kamis,

  Jumat, Sabtu);

  

  Dengan pendeklarasian TipeHari, tidak perlu menggunakan angka 0 sampai 6 untuk menjelaskan hari.

  

  Dapat menuliskan variabel Hari yang bertipe TipeHari var Hari : TipeHari; Tipe Real 

  Digunakan untuk menyimpan bilangan real

  • 1 6 byte 4 byte 8 byte 10 byte 8 byte

  

  Mendeklarasikan dua variabel bertipe real, yaitu x dan y, serta satu variabel bertipe double yaitu z var x, y : real; z : double;

  

  Cara pemberian nilai:

   Menuliskan nilai dengan tanda titik eksponen x := 123.45;

   Menuliskan nilai dengan eksponen x := 1.2345E+2;

  Tipe Data Range Ukuran Real Single Double Extended Comp 2.9*

  10 ;39 .. 1.7*

  10

38

1.5* 10 ;45 .. 3.4*

  10

38

5.0* 10 ;324 .. 1.7*

  10 308 3.4* 10 ;4932 .. 1.1*

  

10

4932 −2 63 +1 ..

  2 63 Tipe String 

  Digunakan untuk menyimpan data yang berupa untaian karakter

  

  Mendeklarasikan digunakan kata string var kalimat : string;

  

  Pemberian nilai pada string dilakukan dengan meletakkan untaian karakter diantara tanda petik tunggal kalimat :=

  ‘Algoritma Pemrograman’; Tipe Larik 

  Mendeklarasikan kumpulan variabel yang bertipe sama

  

  Bentuk umum: var nama_larik: array [batas_bawah .. batas_atas] of tipe_larik;

  

  Membuat delapan variabel bertipe Longint. Tanpa menggunakan larik, mendeklarasikan variabel dengan cara: var a1, a2, a3, a4, a5, a6, a7, a8 : longint;

  

  Dengan larik sederhanakan deklarasi kedelapan variabel menjadi var a: array [1 .. 8] of longint;

  Tipe Himpunan 

  Digunakan untuk menyimpan kumpulan nilai yang bertipe sama. Contoh: type HimpunanKarakter = set of char;

  

  Mendeklarasikan tipe HimpunanKarakter sebagai himpunan dari karakter. Contoh variabel yang dideklarasikan; var

  Vokal : HimpunanKarakter Huruf : HimpunanKarakter

  

  Pemberian nilai pada tipe himpunana dilakukan dengan menuliskan anggota himpunan dalam kurung siku ([dan ]) Vokal : =

  [‘A’, ‘I’, ‘U’, ‘E’, ‘O’] Huruf :=

  [‘A’ .. ‘Z’]

Macam-macam Operator 1

  Operator pemberian nilai 2. Operator aritmetik 3. Operator pemanipulasi bit 4. Operator boolean 5. Operator pembanding 6. Operator himpunan 7. Operator string Operator Pemberian Nilai 

  Pemberian nilai dilakukan dengan menggunakan tanda :=

  

  Contoh: A := 12 ; (untuk tipe bilangan bulat)

B := „Halo‟ ; (untuk tipe string)

  C := 3.14; ( untuk tipe real) D := [3, 4, 5]; (untuk tipe himpunan) Operator Aritmetik 

  Dapat dikenakan pada operan bertipe bilangan bulat atau real 1.

  Operator aritmetik tunggal

  Operator Operasi Tipe Operan Tipe hasil Identitas Bilangan bulat Bilangan bulat + Bilangan real Bilangan real Invers - Bilangan bulat Bilangan bulat Bilangan real Bilangan real

  Operator Operasi 2.

  Operator aritmetik biner

  Penjumalahan + Pengurangan -

  • Perkalian / Pembagian div Pembagian bilangan bulat mod Sisa pembagian modulus
Operator Aritmetik lanj.

  

  Contoh pegunaan Operator Aritmetik Tunggal x := -y ;  yang artinya nilai x sama dengan invers dari nilai y. x := +y;  yang sama artinya dengan x := y

  

  Contoh penggunaan Operator Aritmetik Biner: x := y + z; x := a – b – c – d; x := 5 * 9 * 3.14; x := a / b ; x := 10 div 2; x := i mod j; Operator Pemanipulasi Bit 

  Berhubungan dengan pemanipulasian bit pada operan, misalnya menggeser bit ke kanan, memutar bit kekiri, dll.

  1

  1

  1

  1

  1

  1

  1

  1

  1

  

  1

  1

  1

  1

  A B not A not B A and B A or B A xor B

  Invers Logika and Logika or Logika xor Penggeseran bit ke kiri Penggeseran bit ke kanan

  Operator Operasi not and or xor shl shr

  Operator and, or dan xor mengevaluasi bit pada operannya. Hasilnya:

  1 Operator Boolean 

  Dikenakan pada tipe operan bernilai boolean

  

  Hasil operator not, and, or dan xor untuk berbagai kombinasi kondisi

  Operator Operasi not and or xor

  Negasi Logika and Logika or Logika xor

  A B not A not B A and B A or B A xor B false false true true false true false true true true false false

  True false true false false false false true false true true true false true true false Operator Pembanding 

  Digunakan untuk membandingkan dua buah operan

  

  Hasil dari operator bernilai benar atau salah

  

  Contoh: a:= 5 = 6; ( a = false karena 5 tidak sama dengan 6) a:= 5 <>6; ( a= true) a:= 5 < 6; ( a= true) a:= (3<4) and (5 > 6); (a=false karena 5 < 6)

  Operator Operasi = <> < > <= >=

  Sama dengan

Tidak sama dengan Kurang dari Lebih dari Kurang dari sama dengan Lebih dari sama dengan Operator Himpunan 

  Digunakan pada tipe himpunan

  Operator Operasi Union +

  • Selisih Interseksi * In Anggota dari

  

  Contoh: A := B + C; menggabungkan semua anggota himpunan B dan C ke dalam A. Jika A, B dan C bertipe set of char dan nilai A dan b masing-masing adalah [„A‟], [„B‟] dan [„C‟], maka variabel C bernilai [„A‟, „B‟, „C‟],

  Operator String 

  Hanya mengenal satu macam operator string yaitu penggabungan

  

  Digunakan untuk menggabungkan dua atau lebih operan string menjadi sebuah string yang lebih panjang

  

  Simbolnya adalah ( + )

  

  Contoh: S:= „Turbo‟ + „Pascal‟; Sama artinya dengan Turbo Pascal Soal..

  $a b.

  10.1 c. 4000 d. Alpro 2.

  Jika y=real, mana nilai yang bisa diberikan ke y? a.

  .3 b.

  1E2 c.

  3E+4.2 d. 3,14

  • 2 d.

  1

  2 ;4. .

  ; :

  =

  2 f.

  2 .

  1

  . sin e. = . +

  2

  =

  program a.

  2

  =

  2 c.

  4 . .

  1

  =

  2 b.

  = .

  2.