Bahasa Pemrograman · Bahasa yang berorientasi ke manusia (seperti bahasa inggris). Contoh bahasa...

14
Bahasa Pemrograman 1. Program harus ditulis dalam suatu bahasa yang dimengerti oleh komputer yaitu dalam bahasa pemrograman, dibedakan menjadi: · Bahasa tingkat rendah (low level language): Bahasa yang berorientasi ke mesin. · Bahasa tingkat tinggi (high level language): Bahasa yang berorientasi ke manusia (seperti bahasa inggris). Contoh bahasa Pascal, bahasa C, dll. 2. Program yang ditulis dalam bahasa pemrograman akan diterjemahkan ke dalam bahasa mesin (kenal dengan biner digit) dengan menggunakan penerjemah. Penerjemah: Interpreter : menerjemahkan baris per baris instruksi. Contoh bahasa Basic. Compiler : menerjemahkan setelah seluruh instruksi ditulis. Contoh bahasa Pascal, bahasa C/C++, dll. Algoritma Arti umum adalah serangkaian urutan langkah-langkah yang tepat, logis, terperinci, dan terbatas untuk menyelesaikan suatu masalah yang disusun secara sistematis. Kriteria suatu algoritma: Ada input dan output Efektifitas dan efisien Terstruktur Contoh: Algoritma TUKAR ISI BEJANA Diberikan 2 buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru. Tukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan warna biru dan bejana B berisi larutan berwarna merah. Deskripsi: 1. Tuangkan larutan dari bejana A ke dalam bejana B 2. Tuangkan larutan dari bejana B ke dalam bejana A Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar. Langkah di atas tidak logis, hasil pertukaran yang terjadi adalah pertukaran kedua larutan tersebut. Untuk itu pertukaran isi dua bejana, diperlukan sebuah tambahan sebagai tempat penampungan sementara, misalnya bejana C. Maka algoritma untuk menghasilkan pertukaran yang benar adalah sebagai berikut:

Transcript of Bahasa Pemrograman · Bahasa yang berorientasi ke manusia (seperti bahasa inggris). Contoh bahasa...

  • Bahasa Pemrograman

    1. Program harus ditulis dalam suatu bahasa yang dimengerti oleh komputer yaitu dalam bahasa

    pemrograman, dibedakan menjadi:

    · Bahasa tingkat rendah (low level language):

    Bahasa yang berorientasi ke mesin.

    · Bahasa tingkat tinggi (high level language):

    Bahasa yang berorientasi ke manusia (seperti bahasa inggris). Contoh bahasa Pascal, bahasa C,

    dll.

    2. Program yang ditulis dalam bahasa pemrograman akan diterjemahkan ke dalam bahasa mesin

    (kenal dengan biner digit) dengan menggunakan penerjemah.

    Penerjemah:

    Interpreter : menerjemahkan baris per baris instruksi. Contoh bahasa Basic.

    Compiler : menerjemahkan setelah seluruh instruksi ditulis. Contoh bahasa Pascal, bahasa

    C/C++, dll.

    Algoritma

    Arti umum adalah serangkaian urutan langkah-langkah yang tepat, logis, terperinci, dan terbatas untuk

    menyelesaikan suatu masalah yang disusun secara sistematis.

    Kriteria suatu algoritma:

    Ada input dan output

    Efektifitas dan efisien

    Terstruktur

    Contoh:

    Algoritma TUKAR ISI BEJANA

    Diberikan 2 buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi larutan

    berwarna biru. Tukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan warna biru

    dan bejana B berisi larutan berwarna merah.

    Deskripsi:

    1. Tuangkan larutan dari bejana A ke dalam bejana B

    2. Tuangkan larutan dari bejana B ke dalam bejana A

    Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar. Langkah di atas tidak

    logis, hasil pertukaran yang terjadi adalah pertukaran kedua larutan tersebut.

    Untuk itu pertukaran isi dua bejana, diperlukan sebuah tambahan sebagai tempat penampungan

    sementara, misalnya bejana C. Maka algoritma untuk menghasilkan pertukaran yang benar adalah

    sebagai berikut:

  • Diberikan dua buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi larutan

    berwarna biru. Tukarkan isi kedua bejana itu sedemikian hingga bejana A berisi larutan berwarna biru

    dan bejana B berisi larutan berwarna merah.

    Deskripsi:

    1. Tuangkan larutan dari bejana A ke dalam bejana C.

    2. Tuangkan larutan dari bejana B ke dalam bejana A.

    3. Tuangkan larutan dari bejana C ke dalam bejana B.

    Ciri Penting Algoritma

    1. Algoritma harus berhenti setelah menjalankan sejumlah langkah terbatas.

    2. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua ambiguitas).

    3. Algortima memiliki nol atau lebih masukan.

    4. Algoritma memiliki nol atau lebih keluaran.

    5. Algoritma harus efektif (setiap langkah sederhana sehingga dapat dikerjakan dalam waktu

    yang masuk akal).

    Memrogram dan Bahasa Pemrograman:

    1. Belajar memrogram adalah belajar tentang metode pemecahan masalah, kemudian

    menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami.

    2. Belajar bahasa pemrograman adalah memakai suatu bahasa, aturan, tata bahasanya, instruksi-

    instruksinya, tata cara pengoperasian compiler-nya untuk membuat program yang ditulis

    dalam bahasa itu saja.

    Notasi Algoritma:

    1. Penulisan algoritma tidak tergantung dari spesifikasi bahasa pemrograman dan komputer yang

    mengeksekusinya. Notasi algoritma bukan notasi bahasa pemrograman tetapi dapat

    diterjemahkan ke dalam berbagai bahasa pemrograman.

    2. Notasi algoritma dapat berupa:

    Uraian kalimat deskriptif (narasi):

    Contoh:

    Algoritma kelulusan mahasiswa

    Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka

    mahasiswa tersenut dinyatakan lulus, jika nilai lebih kecil dari 60 maka dinyatakan tidak lulus.

    Deskripsi:

  • Baca nama dan nilai mahasiswa

    Jika nilai >= 60 maka

    Keterangan = lulus

    Tetapi jika salah

    Keterangan = tidak lulus

    Tulis nama dan keterangan.

    Tahapan Pembuatan Program:

    1. Mendefinisikan masalah dan menganalisanya. Mencangkup : tujuan pembuatan, parameter yang

    digunakan, fasilitas yang disediakan, algoritma yang diterapkan, dan bahasa pemrograman yang

    digunakan.

    2. Merealisasikan dengan langkah-langkah sebagai berikut:

    http://1.bp.blogspot.com/_9xKt8__1Qn4/TEkhedLg8nI/AAAAAAAAAZs/bz9TaTBHfEU/s1600/screenshot1.png

  • Contoh Algoritma:

    1. Mengirim surat kepada teman:

    · Tulis surat pada secarik kertas surat

    · Ambil sampul surat

    · Masukkan surat ke dalam sampul

    · Tutup sampul surat dengan perekat

    · Jika kita ingat alamat teman tersebut, maka

    tulis alamat surat pada sampul

    · Jika tidak ingat, lihat buku alamat,

    kemudian tulis alamat surat pada sampul

    · Tempel prangko pada sampul

    · Bawa sampul ke kantor pos untuk diposkan

    2. Menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap:

    · Masukkan sebuah bilangan sembarang

    · Bagi bilangan tersebut dengan 2

    · Hitung sisa hasil bagi pada langkah 2

    · Bila sisa hasil sama dengan 0, maka bilangan itu adalah bilangan genap

    · Jika hasil bagi sama dengan 1, maka bilangan itu adalah bilangan ganjil

    Flowchart

    1. Flowchart adalah bagan-bagan yang mempunyai arus menggambarkan langkah-langkah

    penyelesaian suatu masalah

    2. Merupakan cara penyajian dari suatu algoritma

    3. Ada 2 macam flowchart:

    System flowchart:

    Urutan proses dalam system dengan menunjukkan alat media input, output serta jenis

    penyimpanan dalam proses pengolahan data.

    Program flowchart:

    Urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan masalah dalam

    suatu program.

    Contoh program Flowchart

    http://3.bp.blogspot.com/_9xKt8__1Qn4/TEkhgWj-d4I/AAAAAAAAAZ0/gl6M39a5b9w/s1600/screenshot2.png

  • Simbol-simbol Flowchart

    1. Flow Direction Symbols (simbol penghubung alur)

    2. Processing Symbols (simbol proses)

    3. Input-Output Symbols (simbol input-output)

    Tabel Simbol-simbol Flowchart

    Pembuatan Flowchart

    1. Tidak ada kaidah yang baku

    2. Flowchart = gambaran hasil analisa suatu masalah

    3. Flowchart dapat bervariasi antara satu pemrograman dengan pemrograman lainnya.

    4. Secara garis besar ada 3 bagian utama: Input >> Proses >> Output

    5. Hindari pengulangan yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi

    singkat

    6. Jalannnya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas.

    7. Sebuah Flowchart diawali dari satu titik START dan diakhiri dengan End.

    http://4.bp.blogspot.com/_9xKt8__1Qn4/TEkhq6g9tcI/AAAAAAAAAZ8/v-Q417_lGHM/s1600/screenshot3.pnghttp://4.bp.blogspot.com/_9xKt8__1Qn4/TEkhq6g9tcI/AAAAAAAAAZ8/v-Q417_lGHM/s1600/screenshot3.png

  • Pseudocode:

    1. Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka

    mahasiswa tersebut dinyatakan lulus jika tidak maka dinyatakan tidak lulus.

    Deklarasi:

    Nama : String

    Nilai : Integer

    Keterangan : String

    Deskripsi:

    Read (nama, nilai)

    if nilai >= 60 then

    Keterangan = 'lulus'

    else

    Keterangan = 'tidak lulus'

    write (nama, keterangan)

  • Aturan Penulisan Teks Algoritma

    1. Judul Algoritma

    Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut.

    Nama sebaiknya singkat dan menggambarkan apa yang dilakukan oleh algoritma tersebut.

    2. Deklarasi

    Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama tersebut dapat

    berupa nama tetapan, peubah, tipe, prosedure, dan fungsi.

    3. Deskripsi

    Bagian ini berisi uraian langkah-langkah penyelesaian masalah yang ditulis dengan menggunakan

    notasi yang akan dijelaskan selanjutnya.

    Contoh Pseudocode:

    1. Algoritma Luas_Keliling_Lingkaran (ini merupakan judul algoritma)

    {

    Menghitung luas dan keliling untuk ukuran jari-jari tertentu. Algoritma menerima masukkan jari-jari

    lingkaran, menghitung luas dan kelilingnya, dan mencetak luas lingkaran ke piranti keluaran

    } (ini spesifikasi algoritma)

    2. Deklarasi

    const phi = 3.14 {nilai konstanta phi}

    R : real {jari-jari lingkaran}

    Luas : real {luas lingkaran}

    Keliling : real {keliling lingkaran}

    3. Deskripsi

    Read (R)

    Luas = phi * R * R

    Keliling = 2 * phi * R

    Write (luas, keliling)

  • TYPE OPERATOR LOGIKA PADA ALGORITMA

    1. Operator Aritmatika

    Adalah.operator yang digunakan untuk melakukan operasi penjumlahan, pengurangan, pembagian,

    dan perkalian atau operator yg digunakan untuk melakukan perhitungan pada bilangan. Berikut ini

    merupakan tabel yang berisi macam-macam operator aritmatika yang dapat digunakan pada PHP.

    Operasi Operator

    Penambahan +

    Pengurangan –

    Perkalian *

    Pembagian /

    Sisa pembagian %

    Increment ++

    Decrement –

    Contoh penggunaan operasi operator diatas:

    $x = 100;

    $y = 10;

    Operasi Operator Contoh Sintaks Hasil

    Penambahan + $x + $y 110

    Pengurangan – $x – $y 90

    Perkalian * $x * $y 1000

    Pembagian / $x / $y 10

    Sisa Pembagian % $x % $y 0

    Increment ++ $x++ 101

    Decrement – $x– 99

    Berdasarkan contoh diatas, yang dimaksud dengan sisa pembagian adalah sisa dari hasil

    pembagian bukan hasil dari pembagian. Pada contoh diatas $x % $y = 0. Hasil ini didapat dari

    rumus sebagai berikut : $x – ($y * ($x / $y)).

    Pada contoh diatas 50 / 10 = 5. Lalu 50 – (10 * 5) = 0.

  • Nah, sudah jelas kan dari mana nilai 0 itu didapat. Untuk lebih jelasnya saya akan memberikan satu

    contoh lagi :

    Misalkan nilai variabel $y diganti 6 untuk menghasilkan nilai hasil module division, pertama kita

    hitung adalah100/6 = 16,6 tapi kita mengambil nilai bulatnya saja, sehingga nilainya 16.

    Catatan : Untuk nilai pecahan selalu diambil nilai bulatnya saja. misalkan nilai yang didapat 13,85

    maka apabila diambil nilai bulatnya maka akan menjadi 13.

    2. Operator Relasi

    Adalah operator penghubung yang berupa benar atau salah, sesuai dengan teorinya bahwa

    operator relasi mengeluarkan tipe data Boolean sehingga contoh program di atas mengeluarkan

    output true atau false.

    Contoh :

    10>3 ;// true, kemudian

    7

  • Misalnya : ‘\u123’

    2) Numerik (Integer)

    Adalah adalah tipe data integer yang digunakan apabila tidak berurusan dengan pecahan atau

    bilangan decimal. Yang termasuk dalam numerik diantaranya :

    Byte, yang memiliki nilai integer -128 sampai +127 dan menempati 1 byte (8 bits) di memori.

    Short, yang memiliki nilai integer dari -32768 sampai 32767 dan menempati 2 bytes (16 bits)

    di memoriInt, yang memiliki nilai integer dari -2147483648 sampai 2157483647 dan

    menempati 4 bytes (32 bits) di memori.

    Long, yang memiliki nilai dari -9223372036854775808 sampai 9223372036854775807 dan

    menempati 8 bytes (64 bits) di memori

    Operasi aritmatik : tambah (+), kurang (-), kali (*), bagi (/), sisa bagi (mod/%)

    Operasi perbandingan : =, , =.

    3) Type dasar bisasa (Real)

    Bilangan angka yang bisa memiliki titik decimal atau pecahan. Contoh : 1.245, +235, -5.43

    Type dituliskan sebagai real atau float. Jangkauan nilai = -2.9E+39 S/D +1.78e+38. Operasi

    aritmatik dan perbandingan juga berlaku disini

    4) Type dasar bilangan tetap (const)

    Yaitu type bilangan baik bernilai bulat maupun tidak yang nilainya tidak berubah selama

    algoritma dilaksanakan. Type dutuliskan sebagai const. jangkauan nilai meliputi semua bilangan

    yang mungkin.

    5) Boolean

    Adalah tipe data yang terdiri dari dua nilai yaitu True dan False. Boolean sangat penting dalam

    mengevaluasi suatu kondisi, dan sering digunakan untuk menentukan alur program.

    A B A & B A or B A xor B Not A

    T T T T F F

    T F F T T F

    F T F T T T

    F F F F F T

    Algoritma notasi pseudocode

    Notasi pseudocode bisa ( semu atau tidak sebenarnya ) artinya notasi yang menyerupai notasi

    bahasa pemrograman tingkat tinggi yang biasa digunakan seperti bahasa C .Dengan pengertian

    diatas maka dapat didefinisikan bahwa bahasa notasi algorima yang dapat menjelaskan

  • perintahnya dengan bahasa yang jelas tanpa membingungkan pembaca atau pengguna bisa

    disebut dengan notasi algoritma pseudocode. Tidak seperti bahasa program yang direpotkan

    dengan tanda titik koma dan sebagainya, kata-kata khusus,indeks,format, dan lainnya, maka

    dengan pseudo-code ini akan lebih memudahkan dan menguntungkan. Keuntungan

    penggunaan notasi pseudo-code ini adalah kemudahan mengkonversinya kebahasa

    pemrograman, karena terdapat korespondensi antara setiap pseudo-code dengan notasi

    bahasa program.Korespondensi ini dapat diwujudkan dengan tabel translasi dari notasi

    algoritma ke notasi bahasa program

  • S O A L

    Diket :

    A = 50, B = 85, C = 67

    1. A * B = (165) and (C > B) xor (B + A – C A

    T and (not F) xor T

    T and T xor = T

    3. Not (A/B + C > = 95 and B * C = 251)

    Not (F and F)

    Not (F) = T

    Operasi perbandingan

    1) 10 div 3 = 3

    2) 10 mod 3 = 1

    3) 20 mod 5 = 0

    4) 9

  • OPERASI STRING

    1. Operasi Pemenggalan (Substring)

    Bentuk umum : substring (string, posisim banyak)

    Posisi : letak posisi karakter awal dimulainya pemenggalan

    Banyak : banyaknya karakter yang diambil

    Contoh :

    A = SISTEM_INFORMASI

    B = Right (A,6) hasilnya = ORMASI

    C = Left (A,11) hasilnya = SISTEM_INFO

    D = substring (A,10,5) hasilnya = FORMA

    E = substring (C,4,4) hasilnya = TEM_

    2. Operasi Penggabungan (Concatination)

    Operasi ini menggabungkan 2 buah string atau lebih.

    Bentuk umum : string//string atau concate(“string”,”string”)

    Contoh :

    A = PERGURUAN_TINGGI

    B = SWASTA

    C = A//B hasilnya = PERGURUAN_TINGGISWASTA

    D = B//B hasilnya = SWASTASWASTA

    3. Operasi Pencarian Posisi (Index)

    Operasi ini untuk mendapatkan posisi awal (karakter keberapa) suatu substring pada string yang

    diproses (hasilnya berupa angka).

    Bentuk umum = Index (string, substring)

    Contoh :

    A = PERGURUAN TINGGI SWASTA

    B = RUAN

    C = index(A,’Ruan’) hasilnya = 4 karena jumlah huruf/karakter

    D = index(B,A) hasilnya = 6 karena karakter yang ke 6 dari PERGURUAN TINGGI SWASTA

    4. Perhitungan banyaknya karakter /length /len

    Menunjukan banyaknya karakter yang ada pada sebuah string (panjang string) yang dapat dihitung

    melalui sebuah operasi (hasil berupa angka).

    Bentuk umum = length(string) atau len(string)

    Contoh :

    A = NIKEN PERGI KE PASAR

  • B = NAIK BECAK PERGI PULANG

    C = length(A) hasilnya = 20

    D = length(B)-C hasilnya = 3

    Note :

    >> spasi atau blank tetap dihitung

    >> jika operasi yang dilakukan dalam nilai hampa atau tidak ditemukan maka nilai 0

    5. Kombinasi Operasi

    Semua operasi string dikombinasikan namun tetapp harus sesuai dengan kaidah

    Contoh :

    A = PERGURUAN_TINGGI_SWASTA

    B = SWASTA

    C = length(B//A) hasilnya = 29

    D = (B//A,6,5) hasilnya = APERG