Home » Dasar Pemrograman » PENGENALAN ALGORITMA DAN PEMROGRAMAN

PENGENALAN ALGORITMA DAN PEMROGRAMAN

Hello guys,

Di awal post ini aku mau share tentang pemahaman awal mengenai algoritma dan pemrograman. Dimulai dari pembahasan tentang persoalan (problem), yang selanjutnya akan dijelaskan tentang program dan pemrograman, dan ditutup dengan penjelasan tentang notasi yang akan digunakan dalam menuliskan algoritma.


1.  Persoalan (problem)

Kehidupan manusia itu penuh dengan berbagai persoalan/problem yang melingkupinya. Kehidupan itu sendiri pada dasarnya adalah menyelesaikan aneka persoalan tersebut.  Dan persoalan adalah ibarat pertanyaan yang harus dicari jawabannya.

Agar lebih memahami makna “persoalan”, kita ambil contoh :

“Diketahui sebidang tanah berbentuk persegi panjang dengan panjang dan lebar tertetntu ( dalam satuan meter). Hiutnglah luas tanah tersebut!”

Jawaban (yang diharapkan) dari persoalan ini adalah luas tanah tersebut dalam satuan meter persegi.

2. Algoritma

Algoritma adalah urutan langkah-langkah untuk menyelesaikan suatu persoalan.

Contoh paling simpel yang kita jumpai dalam kehidupan sehari-hari, yakni memasak nasi goreng. Pasti yang ada dipikiran kita pertama kali yaitu “Apa saja alat dan bahan yang dibutuhkan?” “Berapa takaran yang diperlukan?” “Bagaimana langkah membuatnya?” “Apa yang harus kita lakukan bila nasi goreng belum matang?” dan lain-lain.

3. Karakteristik Algoritma

Pada dasarnya, sebuah algoritma menerima beberapa masukan (input), memprosesnya dalam urutan langkah-langkah tadi, dan menghasilkan luaran (output).

Ketika algoritma “dijalankan” (oleh manusia / oleh komputer), maka langkah-langkah tersebut dijelaskan dari awal sampai akhirnya berhenti dan kita memperoleh solusi persoalan. Jika algoritmanya benar, maka hasil (solusinya) pasti benar, sebaliknnya jika algoritma salah maka hasilnya juga salah.

Jadi, ada 2 pesan penting tentang algoritma:

Pertama, sebuah algoritma harus benar. Kedua, algoritma harus berhenti, dan setelah berhenti, algoritma memberikan hasil yang benar.

4. Program dan pemrograman

 

pr

 

Manusia pun dapat melaksanakan suatu algoritma, karena manusia dapat membaca dan mengerti instruksi di dalam algoritma, lalu mengerjakan instruksi tersebut. Namun karena kita bahas pemrograman dengan menggunakan komputer, maka kita memfokuskan pemroses algoritma adalah komputer.

Agar komputer mengerti instruksi yang dibacanya, maka instruksi tersebut tentu harus ditulis dalam bahasa khusus yang disebut bahasa  komputer. Algoritma yang ditulis dalam bahasa komputer dinamakan program. Bahasa komputer yang digunakan untuk menulis program dinamakan bahasa pemrograman (programming language). Orang yang menulis program komputer dinamakan pemrogram (programmer). Dan kegiatan  mulai dari mendesain hingga menulis program dinamakan pemrograman (programming). Teks program dalam bahasa pemrograman sering dinamakan kode program (source code), sehingga menulis kode program sering dinamakan coding.

BELAJAR PEMROGRAMAN ≠ BELAJAR BAHASA PEMROGRAMAN

Belajar pemrograman berarti mempelajari metodologi pemecahan masalah, kemudian menuliskan algoritma pemecahan masalah dalam notasi tertentu.

Belajar bahasa pemrograman berarti belajar memakai suatu bahasa komputer, aturan tata bahasanya, instruksi-instruksi nya, tata cara pengoperasian compiler nya, dan memanfaatkan instruksi-instruksi tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja.

5. Bahasa pemrograman

tumblr_oysy0htucc1rvsjhko1_1280

Sampai sekarang ada puluhan bahasa pemrograman, seperti : bahasa rakitan (assembly), Fortran, Cobol, Ada, PL/I, Algol, Basic, Pascal, C, C++, C#, Java, R, Arduino, PHP, Prolog, LISP, Phyton, dan masih banyak lagi.

Berdasarkan tujuan aplikasinya, bahasa pemrograman dapat digolongkan menjadi 2 kelompok :

  • Bahasa pemrograman bertujuan khusus (specific purpose programming language).

    Yang termasuk kelompok ini adalah Cobol (untuk terapan bisnis dan administrasi), Fortran (aplikasi komputasi ilmiah), bahasa assembly (aplikasi pemrograman mesin), Prolog (aplikasi kecerdasan buatan), bahasa-bahasa simulasi, dan lain-lain.

  • Bahasa pemrograman bertujuan umum (general purpose programming language).

    Dapat digunakan untuk berbagai aplikasi. Yang termasuk kelompok ini adalah bahasa Pascal, Basic,  C, C++, C#, Java, dan lain-lain.

 

6. Struktur teks algoritma

 Sebuah algoritma adalah sebuah teks yang dibaca secara beruntun (sekuensial) dari atas ke bawah. Dan sebuah teks algoritma selalu disusun oleh 3 bagian, yaitu:

  1. Bagian judul

  2. Bagian kamus (deklarasi)

  3. Bagian deskripsi (algoritma)

 

Bagian judul

Bagian judul terdiri dari nama program dan penjelasan (spesifikasi) tentang program tersebut. Seperti yang akan kucontohkan nanti, yaitu tentang membuat nasi goreng sosis. Maka judul yang diberikan dalam notasi algoritma adalah “Membuat Nasi Goreng Sosis”.

Bagian kamus (deklarasi)

Bagian ini digunakan untuk mengumumkan semua nama yang dipakai di dalam algoritma beserta properti nya, antara lain:

  • Nama konstanta

  • Nama peubah

  • Nama tipe bentukan

  • Nama prosedur/fungsi

Di dalam membuat nasi goreng sosis, maka kamus ini diibaratkan sebagai alat dan bahan yang digunakan.

Bagian deskripsi (algoritma)

Bagian ini berisi sederetan aksi. Aksi-aksi tersebut “bekerja” dengan menggunakan nama-nama yang telah diumumkan dalam bagian deklarasi. Maka dalam pembuatan nasi goreng sosis, deskripsi ini ibarat cara/langkah memasak nya.

 

7. Tiga konstruksi dasar

Sebuah algoritma dapat dibangun dari tiga buah konstruksi / struktur dasar, yaitu struktur runtunan (sequence), struktur pemilihan (selection), dan struktur pengulangan (repetition).

Struktur Runtunan

Sebuah runtunan terdiri dari satu / lebih instruksi. Di dalam sebuah runtunan, setiap instruksi dikerjakan secara berurutan (sekuensial) sesuai dengan urutannya di dalam algoritma. Secara sekuensial, artinya suatu instruksi dikerjakan setelah instruksi sebelumnya dikerjakan.

Seperti hal nya dalam membuat nasi goreng sosis, maka urutannya yaitu seperti ambil wajan, taruh wajan di atas kompor dan selanjutnya.

Struktur pemilihan

Adakala nya sebuah aksi dikerjakan jika memenuhi persyaratan (kondisi) tertentu. Dalam pembuatan nasi goreng sosis, maka contoh saja jika nasi goreng sudah matang, lalu tuang di atas piring.

Bentuk instruksi ini dinamakan struktur pemilihan (selection) atau pencabangan, yang dimana penulisannya yaitu

if kondisi then

      aksi

Struktur pengulangan

Pengulangan ini merupakan sesuatu yang dilakukan lebih dari 1 kali. Sebagai contoh, dalam pembuatan nasi goreng sosis bahwa selama nasi goreng belum manis, kemudian kita tambahkan kecap lagi. Sehingga bisa ditulis

While kondisi do

               aksi

Nah setelah mengetahui materi di atas, maka kita bisa membuat notasi algoritma Nasi Goreng Sosis. Berikut adalah notasi nya ↓

 

//Judul

               Membuat Nasi Goreng Sosis

//Kamus

  • Nasi

  • Bawang putih

  • Bawang merah

  • Sosis

  • Cabe

  • Kecap

  • Garam

  • Cobek

  • Spatula

  • Sendok

  • Garpu

  • Kompor

  • Pisau

  • Talenan

//Deskripsi :

  • Ambil nasi dari rice cooker 1 piring

  • Ambil wajan dari rak

  • Taruh wajan di atas kompor

  • Ambil pisau, dan talenan dari rak

  • Masukkan bawang merah, bawang putih ke cobek

  • Ulek dan haluskan

  • While belum halus do

                  haluskan lagi

  • Ambil sosis dari kulkas

  • Potong sosis menjadi kecil-kecil

  • Nyalakan kompor

  • Ambil spatula dari rak

  • Tumis bawang merah dan bawang putih sampai harum

  • Depend on kesukaan

Suka pedas: masukkan cabe

Tidak suka pedas: –

  • Masukkan nasi ke wajan

  • Masukkan sosis ke wajan

  • While nasi goreng kurang manis do

                      tambahkan kecap lagi

  • While nasi goreng kurang asin do

         tambahkan garam hingga rasa pas

  • Aduk nasi beserta bumbu yang sudah ada di wajan

  • While nasi goreng belum matang do

                       Aduk lagi nasi goreng nya

  • If sudah matang then

         Hidangkan di piring

  • Matikan kompor

  • Nasi goreng siap disantap

Jadi deh nasi goreng nya. Silahkan dicoba ya, bila ada kritik saran maupun pertanyaan bisa dikomen di kolom komentar 😁

Thank You !! Semoga bermanfaat 🙂


⇓ VISIT ME ON MY YOUTUBE CHANNEL ⇓

https://www.youtube.com/channel/UCcJ8F3Ecr7BWd5cVDXKPPZA


 


Post a Comment

Your email address will not be published. Required fields are marked *