RESUME BERFIKIR KOMPUTASI
Buku modul
1. STUKTUR DATA :
Dalam istilah ilmu komputer, struktur data adalah cara menyimpan dan mengatur data secara terstruktur pada sistem komputer atau pangkalan data (database) sehingga lebih mudah diakses. Secara teknis, data dalam bentuk angka, huruf, simbol, dan lainnya ini diletakkan dalam kolom-kolom dan susunan tertentu. Contoh struktur data dapat dilihat pada berkas-berkas lembar sebar(spreadsheet), pangkalan data, pengolah kata, citra yang dipampat (compressed image), dan pemampatan berkas dengan teknik tertentu yang memanfaatkan struktur data.
Dalam teknik pemrograman, struktur data berarti tata letak data yang berisi kolom-kolom data, baik itu kolom yang terlihat oleh pengguna ataupun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak terlihat oleh pengguna. Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record). Lebar kolom untuk data dapat berubah dan bervariasi. Ada kolom yang lebarnya berubah secara dinamis sesuai masukan dari pengguna, dan juga ada kolom yang lebarnya tetap. Dengan sifatnya ini, sebuah struktur data dapat diterapkan untuk pengolahan basis data (misalnya untuk keperluan data keuangan) atau untuk pengolah kata yang kolomnya berubah secara dinamis.
2. TREE DATA :
Dalam ilmu komputer , pohon adalah tipe data abstrakyang digunakan secara luas yang mewakili struktur pohonhierarkis dengan sekumpulan simpul yang terhubung . Setiap simpul di pohon dapat dihubungkan ke banyak anak (tergantung pada jenis pohon), tetapi harus dihubungkan ke tepat satu induk, [1] kecuali untuk simpul akar , yang tidak memiliki induk (yaitu, simpul akar sebagai simpul paling atas dalam hierarki pohon). Batasan-batasan ini berarti tidak ada siklus atau "loop" (tidak ada simpul yang dapat menjadi leluhurnya sendiri), dan juga bahwa setiap anak dapat diperlakukan seperti simpul akar dari sub-pohonnya sendiri, menjadikan rekursi sebagai teknik yang berguna untuk traversal pohon . Berbeda dengan struktur data linear , banyak pohon tidak dapat direpresentasikan oleh hubungan antara simpul-simpul tetangga (simpul induk dan anak dari suatu simpul yang dipertimbangkan, jika ada) dalam satu garis lurus (disebut tepi atau tautan antara dua simpul yang berdekatan).
Pohon biner adalah jenis yang umum digunakan, yang membatasi jumlah anak untuk setiap induk hingga maksimal dua. Ketika urutan anak ditentukan, struktur data ini sesuai dengan pohon terurut dalam teori grafik . Nilai atau penunjuk ke data lain dapat dikaitkan dengan setiap simpul di pohon, atau terkadang hanya dengan simpul daun , yang tidak memiliki simpul anak.
Tipe data abstrak (ADT) dapat direpresentasikan dalam sejumlah cara, termasuk daftar induk dengan penunjuk ke anak, daftar anak dengan penunjuk ke induk, atau daftar simpul dan daftar terpisah relasi induk-anak (tipe spesifik dari daftar ketetanggaan ). Representasi mungkin juga lebih rumit, misalnya menggunakan indeks atau daftar leluhur untuk kinerja.
3. GRAPH DATA :
Dalam ilmu komputer , grafik adalah tipe data abstrakyang dimaksudkan untuk mengimplementasikan konsep grafik tak berarah dan grafik berarah dari bidang teori grafik dalam matematika .
Struktur data grafik terdiri dari sekumpulan titik (yang mungkin bisa berubah) yang terbatas (juga disebut nodeatau titik ), bersama dengan sekumpulan pasangan titik yang tidak berurutan untuk grafik yang tidak berarah atau sekumpulan pasangan berurutan untuk grafik berarah. Pasangan ini dikenal sebagai edge (juga disebut link atau garis ), dan untuk grafik berarah juga dikenal sebagai edgetetapi terkadang juga disebut arrow atau arcs . Titik dapat menjadi bagian dari struktur grafik, atau dapat menjadi entitas eksternal yang direpresentasikan oleh indeks atau referensi integer .
Struktur data grafik juga dapat mengasosiasikan ke setiap sisi suatu nilai sisi , seperti label simbolik atau atribut numerik (biaya, kapasitas, panjang, dan lain-lain).
4. ALGORITMA :
Dalam matematika dan ilmu komputer, algoritma adalah rangkaian terbatas dari instruksi-instruksi yang rumit, yang biasanya digunakan untuk menyelesaikan atau menjalankan suatu kelompok masalah komputasi tertentu. Algoritma digunakan sebagai spesifikasi untuk melakukan perhitungan dan pemrosesan data. Algoritma yang lebih mutakhir dapat melakukan deduksi otomatis (disebut sebagai penalaran otomatis) dan menggunakan tes matematis dan logis untuk mengarahkan eksekusi kode melalui berbagai rute (disebut sebagai pengambilan keputusan otomatis). Penggunaan karakteristik manusia sebagai deskriptor mesin secara metaforis telah dipraktekkan oleh Alan Turing dengan terminologi seperti "memory", "search" dan "stimulus".[1]
Sebaliknya, heuristika adalah pendekatan untuk pemecahan masalah komputasi yang mungkin tidak sepenuhnya terspesifikasi atau tidak menjamin hasil yang benar atau optimal, terutama dalam ranah masalah komputasi yang mana tidak ada hasil yang benar atau optimal yang terdefinisi dengan baik.[2]
Sebagai metode yang efektif, algoritma dapat diekspresikan dalam jumlah ruang dan waktu yang terbatas,[3] dan dalam bahasa formal yang terdefinisi dengan baik[4] untuk menghitung suatu fungsi.[5] Dimulai dari tataran awal dan input awal (bisa jadi kosong),[6]instruksi-instruksi yang ada menggambarkan sebuah komputasi yang, ketika dieksekusi, berjalan melalui sejumlah tataran dengan jumlah terhingga yang terdefinisi dengan baik,[7] yang pada akhirnya menghasilkan "output"[8] dan berakhir pada tataran final akhir. Transisi dari satu tataran ke tataran berikutnya tidak selalu bersifat menentukan; beberapa algoritma, yang dikenal sebagai algoritma acak, menggabungkan input acak.[9]
5. PENGERTIAN ALGORITMA MENURUT AHLI :
Definisi Algoritma Menurut Para Ahli
- Menurut Abu Ja’far Muhammad Ibnu Musa Al-Khawarizmi, Seorang Matematikawan Islam dari Uzbekistan
Algoritma adalah suatu metode khusus untuk menyelesaikan suatu persoalan yang ada.
- Menurut Goodman danHedetniemi, penulis buku “Introduction to the Design and Analysis of Algorithms“
Algoritma merupakan Urut-urutan terbatas dari operasi terdefinisi dengan baik, yang masing-masing membutuhkan memory dan waktu yang terbatas untuk menyelesaikan suatu masalah.
- Menurut Donald Ervin Knuth, seorang ilmuan terkenal dalam bidang komputerisasi
Algoritma yaitu Sekumpulan aturan-aturan berhingga yang memberikan sederetan operasi-operasi untuk menyelesaikan suatu jenis masalah yang khusus.
- Menurut Seymour Lipschutz dan Marc Lipson, keduanya penulis buku tentang aljabar dan seorang praktisi matematika dan komputer
Algoritma merupakan suatu daftar langkah demi langkah yang terhingga dari instruksi-instruksi yang terdefinisikan dengan jelas yang dipakai untuk permasalahan tertentu.
- Menurut Marvin Minsky, seorang Ilmuwan dibidang Kecerdasan Buatan (Artificial Intelligence)
Algoritma adalah seperangkat aturan yang memberitahukan kepada kita dari waktu ke waktu, tepatnya bagaimana untuk bertindak.
- Menurut David Bolton, seorang praktisi dibidang teknologi asal Australia
Algoritma merupakan sebuah deskripsi suatu prosedur yang berakhir dengan sebuah hasil.
- Menurut Andrey Andreyevich Markov, Matematikawan asal Rusia
Algoritma adalah hal umum untuk dipahami sebagai suatu keputusan yang tepat untuk mendefinisikan proses komputasi yang mengarahkan dari data awal hingga hasil yang diinginkan.
- Menurut Romi Satria Wahono, salah satu praktisi Komputerisasi terbaik dari indonesia pemilik dari situs ilmukomputer.com
Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan.
6. EXPRESI LOGIKA :
Ekspresi Logika
Ekspresi logika adalah serangkaian satu atau beberapa operan logika dan operator logika. Ekspresi logika dievaluasi menjadi satu nilai logika. Operator dapat berupa salah satu dari berikut ini.
Operator | Nama Standar |
---|---|
.AND. .OR. .NEQV. .XOR. .EQV. .NOT. | Konjungsi logis Disjungsi logis (inklusif OR) Ketidaksetaraan logis Eksklusif logisOR Kesetaraan logis Negasi logis |
Pembatas periode diperlukan.
Dua operator logika tidak dapat muncul berurutan, kecuali operator kedua adalah .NOT.operatornya.
Operator logika dievaluasi berdasarkan prioritas berikut:
Tabel 3-5 Urutan Operator Logika
Operator | Hak lebih tinggi |
---|---|
.NOT. .AND. .OR. .NEQV.,.XOR., .EQV. | Paling tinggi
Terendah |
Jika operator logika memiliki prioritas yang sama, mereka dievaluasi dari kiri ke kanan.
Jika operator logika muncul bersama berbagai operator lain dalam suatu ekspresi logika, prioritasnya adalah sebagai berikut.
Operator | Hak lebih tinggi |
---|---|
Hitung Karakter Relasional Logis | Paling tinggi
Terendah |
Tabel berikut menunjukkan arti dari ekspresi sederhana:
Tabel 3-7 Ekspresi Logika dan Maknanya
Ekspresi | Arti |
---|---|
X .AND. Y X .OR. Y X .NEQV. Y X .XOR. Y X .EQV. Y .NOT. X | Keduanya Xdan Ybenar. Salah satu Xatau Ykeduanya benar. Xdan Ytidak keduanya benar dan tidak keduanya salah. Salah satu Xbenar Y, tapi tidak keduanya. Xdan Ykeduanya benar atau keduanya salah. Negasi logis. |
Berikut ini adalah sintaks untuk penugasan nilai ekspresi logika ke variabel logika:
v = t | |
---|---|
Bahasa Inggris: | Ekspresi logika, bilangan bulat antara -128 dan 127, atau konstanta karakter tunggal |
kita | Variabel logika, elemen array, atau bidang rekaman |
Eksekusi pernyataan penugasan logis menyebabkan evaluasi ekspresi logis e dan penugasan nilai yang dihasilkan ke v . Jika e adalah ekspresi logis, bukan bilangan bulat antara -128 dan 127, atau konstanta karakter tunggal, maka e harus memiliki nilai benar atau salah.
Ekspresi logika dengan ukuran berapa pun dapat ditetapkan ke variabel logika dengan ukuran berapa pun.
Menetapkan angka ke angka logika diperbolehkan. (Semua nilai bukan nol diperlakukan sebagai .TRUE. , dan nol dianggap .FALSE. ) Namun, praktik ini tidak standar dan tidak dapat dipindahtangankan.
7. OPERASI LOGIKA :
Dalam logika, operator logika atau perangkai logikamerupakan simbol logika yang dipakai untuk menghubungkan rumus-rumus logika. Sebagai contoh, dalam sintaks logika proposisional, operasi biner dapat dipakai untuk menggabungkan dua rumus atomik dan , memberikan rumus kompleks .
Operator logika pada umumnya meliputi negasi, disjungsi, konjungsi, implikasi dan kesetaraan . Dalam sistem logika klasik yang standar, operator-operator tersebut dipandang sebagai fungsi kebenaran, yakni fungsi yang menerima suatu nilai kebenaran (benar atau salah) dan menghasilkan nilai kebenaran yang baru. Sedangkan dalam logika non-klasik ada beberapa interpretasi berbeda terkait definisi dari operator-operator tersebut. Interpretasi klasik dari setiap operator tersebut mirip dengan ungkapan "tidak", "atau", "dan", dan "jika" dalam bahasa alami seperti Bahasa Indonesia, walau tidak identik.
8. FLOW CHART
Pengertian Flowchart: Fungsi, Jenis, Simbol, dan Contohnya
Flowchart adalah alat visual yang digunakan untuk merepresentasikan alur kerja atau proses dalam bentuk diagram. Dalam dunia pemrograman dan sistem, flowchart digunakan untuk merencanakan, menganalisis, dan memahami langkah-langkah yang diperlukan dalam menyelesaikan suatu tugas atau masalah.
Simbol Flowchart dan Fungsinya
Simbol-simbol dalam flowchart memiliki makna dan fungsi tertentu yang membantu dalam pemahaman alur kerja. Beberapa simbol dasar flowchart meliputi:
1.Simbol Awal (Start/End):
Simbol ini menandakan awal dan akhir dari suatu proses atau algoritma. Biasanya direpresentasikan dengan bentuk oval atau persegi panjang dengan tepi melengkung.
2. Simbol Proses:
Simbol ini digunakan untuk menunjukkan langkah-langkah atau tindakan yang harus dilakukan dalam proses. Umumnya direpresentasikan dengan bentuk persegi panjang.
3. Simbol Keputusan (Decision):
Simbol ini menunjukkan titik keputusan dalam alur kerja yang memerlukan pilihan ya atau tidak. Biasanya direpresentasikan dengan bentuk diamond.
4. Simbol Input/Output:
Simbol ini digunakan untuk menunjukkan input atau output data dalam proses. Biasanya direpresentasikan dengan bentuk paralelogram.
5. Simbol Penghubung (Connector):
Simbol ini digunakan untuk menghubungkan bagian-bagian flowchart yang terpisah. Biasanya direpresentasikan dengan garis lurus atau panah.
Fungsi Flowchart dalam Pemrograman dan Sistem
Flowchart memiliki beberapa fungsi penting dalam pemrograman dan sistem, antara lain:
1. Merencanakan Proses:
Flowchart membantu dalam merencanakan langkah-langkah yang diperlukan dalam menyelesaikan suatu tugas atau masalah dengan jelas dan terstruktur.
2. Menganalisis Algoritma:
Dengan menggunakan flowchart, kita dapat menganalisis algoritma secara visual dan memahami logika yang digunakan dalam proses pemrograman.
3. Memudahkan Komunikasi:
Flowchart menjadi alat komunikasi yang efektif antara programmer, analis, dan pengguna dalam memahami alur kerja suatu sistem atau program.
4. Memperbaiki Kesalahan:
Dengan melihat flowchart, kita dapat mengidentifikasi dan memperbaiki kesalahan atau bug dalam algoritma dengan lebih cepat dan efisien.
9. FLOW CHART DOKUMEN
Pengertian flowchart
Flowchart atau bagan alur adalah diagram yang menampilkan langkah-langkah dan keputusan untuk melakukan sebuah proses dari suatu program. Setiap langkah digambarkan dalam bentuk diagram dan dihubungkan dengan garis atau arah panah.
Flowchart berperan penting dalam memutuskan sebuah langkah atau fungsionalitas dari sebuah proyek pembuatan program yang melibatkan banyak orang sekaligus. Selain itu dengan menggunakan bagan alur proses dari sebuah program akan lebih jelas, ringkas, dan mengurangi kemungkinan untuk salah penafsiran. Penggunaan flowchart dalam dunia pemrograman juga merupakan cara yang bagus untuk menghubungkan antara kebutuhan teknis dan non-teknis.
Sebelum lanjut saya mau memberitahu sesuatu nih, kamu dapat memperdalam pengetahuan kamu mengenai flowchart di Dicoding loh. Materi ini dapat kamu temukan dan kamu pelajari di Memulai Dasar Pemrograman untuk Menjadi Pengembang Software.
Fungsi flowchart
Fungsi utama dari flowchart adalah memberi gambaran jalannya sebuah program dari satu proses ke proses lainnya. Sehingga, alur program menjadi mudah dipahami oleh semua orang. Selain itu, fungsi lain dari flowchart adalah untuk menyederhanakan rangkaian prosedur agar memudahkan pemahaman terhadap informasi tersebut.
Jenis flowchart
Flowchart sendiri terdiri dari lima jenis, masing-masing jenis memiliki karakteristik dalam penggunaanya. Berikut adalah jenis-jenisnya:
Flowchart dokumen
Pertama ada flowchart dokumen (document flowchart) atau bisa juga disebut dengan paperwork flowchart. Flowchart dokumen berfungsi untuk menelusuri alur form dari satu bagian ke bagian yang lain, termasuk bagaimana laporan diproses, dicatat, dan disimpan.Flowchart program
Selanjutnya kita akan membahas flowchart program. Flowchart ini menggambarkan secara rinci prosedur dari proses program. Flowchart program terdiri dari dua macam, antara lain: flowchart logika program (program logic flowchart) dan flowchart program komputer terinci (detailed computer program flowchart).Flowchart proses
Flowchart proses adalah cara penggambaran rekayasa industrial dengan cara merinci dan menganalisis langkah-langkah selanjutnya dalam suatu prosedur atau sistem.Flowchart sistem
Yang keempat ada flowchart sistem. Flowchart sistem adalah flowchart yang menampilkan tahapan atau proses kerja yang sedang berlangsung di dalam sistem secara menyeluruh. Selain itu flowchart sistem juga menguraikan urutan dari setiap prosedur yang ada di dalam sistem.Flowchart skematik
Terakhir ada flowchart skematik. Flowchart ini menampilkan alur prosedur suatu sistem, hampir sama dengan flowchart sistem. Namun, ada perbedaan dalam penggunaan simbol-simbol dalam menggambarkan alur. Selain simbol-simbol, flowchart skematik juga menggunakan gambar-gambar komputer serta peralatan lainnya untuk mempermudah dalam pembacaan flowchart untuk orang awam.10. FLOWCHART SISTEM
Apa itu Flowchart?
Berdasarkan laman Wikipedia, flowchartatau diagram alir adalah sebuah ilustrasi visual yang didalamnya menggambarkan alur kerja atau proses dan solusi dari suatu kajian ataupun sebuah permasalahan tertentu. Flowchart sistem adalah suatu toolsyang mampu menampilkan proses linier dari sebuah pekerjaan.
Sebagian besar orang menggunakan diagram ini agar bisa menjelaskan konsekuensi logis, proses dari suatu proyek, dan juga aliran otoritas dalam suatu perusahaan. Untuk menjelaskan alur kerja pada publik luas, menggunakan flowchartsistem adalah pilihan yang sangat tepat dan ringkas.
Baca juga: Langkah Mudah dalam Menerapkan Digitalisasi dalam Bisnis
Tujuan dari Flowchart
Tujuan dari diagram alir adalah agar bisa menggambarkan sebuah tahapan penyelesaian atas suatu masalah secara rapi, sederhana, jelas dan terurai, serta bisa menggunakan berbagai simbol yang sifatnya standar.
Nah, beberapa tujuan penggunaan flowchartsistem adalah untuk bisa menggambarkan sebuah tahapan penyelesaian masalah, sederhana, rapi, terurai dan jelas, serta menggunakan berbagai simbol standar.
Baca juga: Mengenal Aplikasi Pelacak Lokasi dan Manfaatnya dalam Bisnis
Simbol-Simbol Flowchart
Pada dasarnya, dalam membuat flowchartsistem tidak ada ketentuan tertentu yang memang harus dipenuhi. Pasalnya, diagram ataupun chart ini dibuat dengan berdasarkan pemikiran untuk bisa menganalisa suatu permasalahan di dalam bisnis.
Berbagai simbol dari flowchart sistem mempunyai fungsi dan juga jenis nya masing-masing. Ada yang berfungsi untuk menghubungkan satu simbol dengan simbol lainnya, seperti simbol flow, flow direction symbols, processing symbols untuk bisa menyatakan simbol yang berkaitan dengan serangkaian proses berjalan, dan yang terakhir adalah simbol I/O atau berbagai input-output symbol yang berkaitan dengan keluaran dan masukan.
Baca juga: Apa itu Retail Apocalypse? Ini Pengertian dan Dampaknya di Indonesia!
Manfaat Flowchart
Umumnya, flowchart digunakan agar bisa mengidentifikasi aliran yang sebenarnya ada dibandingkan dengan aliran yang memang seharusnya. Berikut ini adalah manfaat pentingnya:
- Bisa membantu memperjelas proses yang sifatnya kompleks.
- Melakukan identifikasi perilaku yang tidak meningkatkan nilai untuk para pelanggan eksternal ataupun internal. Di dalamnya termasuk pekerjaan yang tidak perlu, transportasi, biaya tambahan, duplikasi, serta gangguan komunikasi.
- Membantu setiap anggota tim untuk bisa memperoleh pemahaman umum terkait proses dan menggunakan pengetahuan ini untuk mengumpulkan data, mengidentifikasi masalah, fokus pada diskusi, dan mengidentifikasi sumber.
- Gambar flowchart yang berguna sebagai dasar dalam merancang proses baru.
- Menjelaskan hubungan antara berbagai langkah proses yang berbeda.
- Menghimpun data terkait proses tertentu.
- Mendukung keputusan pengukuran proses kinerja.
- Menjelaskan struktur prosesnya dan memberikan fasilitas pelacakan kesalahan aliran proses. 11. FLOWCHART DATA :
- Flowchart data adalah diagram yang menggambarkan aliran data dalam suatu sistem atau proses. Ini membantu memvisualisasikan bagaimana data masuk, diproses, dan dikeluarkan dalam sistem, serta bagaimana data tersebut mengalir antara berbagai komponen atau entitas.
- ### Komponen Utama dalam Flowchart Data
- 1. **Mulai**: Titik awal alur data.
- 2. **Input Data**: Tempat data masuk ke dalam sistem.
- 3. **Proses Data**: Langkah-langkah di mana data diproses atau diubah.
- 4. **Keputusan**: Titik di mana alur data dapat bercabang berdasarkan kondisi tertentu.
- 5. **Output Data**: Hasil akhir dari proses data.
- 6. **Penyimpanan Data**: Tempat di mana data disimpan untuk penggunaan di masa mendatang.
- 7. **Koneksi**: Garis atau panah yang menunjukkan aliran data dari satu komponen ke komponen lain.
- ### Contoh Flowchart Data
- Misalnya, kita ingin menggambarkan alur data dalam sistem pemrosesan pesanan online:
- 1. **Mulai**
- - V
- 2. **Input Data Pesanan**
- - (Input: Informasi Pesanan)
- - V
- 3. **Validasi Data Pesanan**
- - Apakah data valid?
- - [Ya] → V
- - [Tidak] → Tampilkan Kesalahan
- - V
- 4. **Proses Pembayaran**
- - (Proses: Verifikasi Pembayaran)
- - V
- 5. **Update Status Pesanan**
- - (Update: Status Pesanan dalam Database)
- - V
- 6. **Generate Konfirmasi Pesanan**
- - (Output: Konfirmasi untuk Pengguna)
- - V
- 7. **Simpan Data Pesanan**
- - (Penyimpanan: Database Pesanan)
- - V
- 8. **Selesai**
- ### Simbol Umum dalam Flowchart Data
- - **Oval**: Menunjukkan awal dan akhir alur data.
- - **Parallelogram**: Mewakili input atau output data.
- - **Rectangle**: Mewakili proses atau pengolahan data.
- - **Diamond**: Menunjukkan titik keputusan yang mempengaruhi alur data.
- - **Cylinder**: Mewakili penyimpanan data (misalnya, database).
- Flowchart data membantu dalam mendokumentasikan dan menganalisis aliran data di dalam sistem, serta mempermudah pemahaman bagaimana data diproses dan digunakan.
12.FLOWCHART PROGAM
Flowchart program merupakan langkah-langkah (instruksi-instruksi) program yang menceritakan kejadian suatu proses satu dengan proses lainya dalam suatu program secara mendetail yang di wakilkan dalam bentuk simbol atau bagan.
13. SIMBOL FLOWCHART
Simbol flowchart
Pada dasarnya simbol-simbol dalam flowchart memiliki arti yang berbeda-beda. Berikut adalah simbol-simbol yang sering digunakan dalam proses pembuatan flowchart.
Simbol-simbol di atas memiliki jenis dan fungsi yang berbeda-beda. Ada yang berfungsi untuk menghubungkan satu simbol dengan simbol lainnya seperti simbol flow, on-page dan off-page reference. Selain itu ada juga simbol yang berfungsi untuk menunjukan suatu proses yang sedang berjalan, dan yang terakhir terdapat simbol yang berfungsi untuk memasukan input dan menampilkan output.
Komentar
Posting Komentar