Tugas Keenam
1. Dalam matematika dan ilmu komputer, algoritma adalah urutan atau langkah-langkah untuk penghitungan atau untuk menyelesaikan suatu masalah yang ditulis secara berurutan. Sehingga, algoritma pemrograman adalah urutan atau langkah-langkah untuk menyelesaikan masalah pemrograman komputer.
Dalam pemrograman, hal yang penting untuk dipahami adalah logika kita dalam berpikir bagaimana cara untuk memecahkan masalah pemrograman yang akan dibuat. Sebagai contoh, banyak permasalahan matematika yang mudah jika diselesaikan secara tertulis, tetapi cukup sulit jika kita terjemahkan ke dalam pemrograman. Dalam hal ini, algoritma dan logika pemrograman akan sangat penting dalam pemecahan masalah.
2. Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa :
Program = Algoritma + Bahasa (Struktur Data)Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya.
Logika dalam komputer merupakan awal untuk mempelajari lebih dalam bahasa pemrograman dan sektor lain yang membutuhkan logika salah satunya sistem digital yang memerlukan pemahaman tentang gerbang logika.
Macam – macam logika :
- Logika Aritmarik, logika ini biasa muncul dalam soal – soal psikotes matematika
- Logika Boolean, logika ini berupa nilai true / false dalam operasi and, or, xor, not
- Logika Perbadingan, logika ini juga bernilai true / false dengan operasi <,>,<=,>=, =, <>
Algoritma cenderung ke arah prosedur yang logis dan runtut didalamnya. Beberapa macam algoritma yang cukup dikenal dalam computer adalah algoritma pseudocode dan flowchart
Algoritma pseudocode mirip dengan penulisan dalam pemrograman akan tetapi pseudocode lebih mudah dimengerti karena bahasanya lebih sederhana. Umumnya strukturnya adalah
- Judul Algoritma
- Deklarasi variable dan/atau konstanta
- Perintah
Sedangkan algoritma flowchart menggunakan diagram yang dapat bercabang untuk menjelaskan langkah – langkah penyelesaian. Contoh yang sering diggunakan untuk pembelajaran adalah flowchart dalam mencari luas dan keliling segitiga.
4. flowchart adalah suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses dengan proses lainnya dalam suatu program.Flowchart juga adalah Bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah. Flowchart merupakan cara penyajian dari suatu algoritma.
5. contoh soal dan jawaban
a. Tentukan notasi dan untuk T(n) = 2n2 + 6n + 1
. Jawab: Karena 2n2 + 6n + 1 2n2 untuk n 1, maka dengan C = 2 kita memperoleh 2n2 + 6n + 1 = (n2) Karena 2n2 + 5n + 1 = O(n2) dan 2n2 + 6n + 1 = (n2), maka 2n2 + 6n + 1 = (n2).
b. Tentukan notasi notasi O, dan untuk T(n) = 5n3 + 6n2 log n
. Jawab: Karena 0 6n2 log n 6n3, maka 5n3 + 6n2 log n 11n3 untuk n 1. Dengan mengambil C = 11, maka 5n3 + 6n2 log n = O(n3) Karena 5n3 + 6n2 log n 5n3 untuk n 1, maka maka dengan mengambil C = 5 kita memperoleh 5n3 + 6n2 log n = (n3) Karena 5n3 + 6n2 log n = O(n3) dan 5n3 + 6n2 log n = (n3), maka 5n3 + 6n2 log n = (n3)
c. Tentukan notasi notasi O, dan untuk T(n) = 1 + 2 + … + n.
Jawab: 1 + 2 + … + n = O(n2) karena 1 + 2 + … + n n + n + … + n = n2 untuk n 1. 1 + 2 + … + n = (n) karena 1 + 2 + … + n 1 + 1 + … + 1 = n untuk n 1. 1 + 2 + … + n n/2 + … + (n – 1) + n n/2 + … + n/2 + n/2 = (n + 1)/2 n/2 (n/2)(n/2) = n2/4 Kita menyimpulkan bahwa 1 + 2 + … + n = (n2) Oleh karena itu, 1 + 2 + … + n = (n2).