Weekly outline

  • General

    Selayang Pandang: Cara berpikir algoritmis dan logis dalam pemecahan masalah-masalah komputasi merupakan suatu kemampuan yang harus dikembangkan oleh seorang mahasiswa informatika selama studinya. Selain itu, kemampuan tersebut harus dibuktikan dengan kemahiran dalam menerjemahkan algoritma-algoritma komputer ke dalam bahasa pemrograman tertentu. Mata kuliah "Algoritma dan Logika Informatika" ini diarahkan untuk mengembangkan pengetahuan kognitif dan motorik mahasiswa di bidang-bidang tersebut. Untuk mengilustrasikan bagaimana algoritma-algoritma komputer diimplementasikan, bahasa pemrograman Python v.3 digunakan sebagai alat bantu pembelajaran.

  • Persiapan

    Dalam pertemuan perdana ini, disampaikan Kontrak Perkuliahan yang akan menjadi acuan kegiatan pembelajaran selama satu semester ke depan. Selain itu, diberikan gambaran umum tentang apa yang ingin dicapai dalam pembelajaran mata kuliah "Algoritma dan Logika Informatika" ini serta lingkungan pemrograman yang dibutuhkan.

  • Pemrograman Komputer: Dari 0/1 ke program (Part 1)

    Kuliah ini diberi judul "Pemrograman Komputer, dari 0 dan 1 ke Program" yang isinya menjelaskan apa yang terjadi di dalam prosesor ketika sebuah instruksi dijalankan. Topik pembahasan mencakup gerbang-gerbang logika untuk perhitungan aritmatik sederhana (ADD), pengenalan tabel kebenaran, konversi antar sistem bilangan desimal dan biner, bahasa mesin, bahasa pemrograman tingkat rendah dan tinggi.

  • Pemrograman Komputer: Dari 0/1 ke program (Part 2)

    Kuliah ini merupakan bagian yang kedua dari pembahasan mengenai "Pemrograman Komputer: Dari 0/1 ke program" yang telah dimulai pada kuliah sebelumnya. Materi kali ini berfokus pada: Definisi algoritma, bagaimana menjelaskan algoritma, definisi pemrograman komputer, sintaks dan semantik, IDE, Compiler vs Interpreter dan proses pemecahan masalah komputasional.

  • Persiapan Lingkungan Pemrograman Python

    Bahasa pemrograman Python dipilih untuk mendukung pembelajaran matakuliah "Algoritma dan Logika Informatika" ini. Untuk itu, perlu dipersiapkan lingkungan pemrograman Python yang akan digunakan selama perkuliahan di semester ini.

  • Data dan Ekspresi

    Kuliah ini menjelaskan konsep-konsep penting dan mendasar dalam pemrograman komputer, yakni representasi "Data dan Ekspresi". Konsep-konsep ini selalu hadir dan diimplementasikan dalam berbagai bentuk dan sintaks di semua bahasa pemrograman tingkat tinggi yang kita kenal. Topik-topik pembahasan mencakup: Literal, Numerik literal, String Literal, Karakter Kendali, Karakter Escape, Format angka, Format string, Variabel, Input/Output, Tipe data, Static/Dynamic Typing, Ekspresi, Ekpresi Mixed-type, Explicit/Implicit Typing. Untuk mengilustrasikan topik-topik tersebut, digunakan bahasa pemrograman Python.

  • Kendali Seleksi

    Kuliah kali ini berfokus pada konsep Kendali Seleksi. Topik-topik pembahasannya mencakup: Aliran Kendali, Statemen Kendali, Kendali Sekuensial, kendali Seleksi, Kendali Iteratif, Kondisi, Ekspresi Boolean, Nilai Boolean, Operator Relasional, Operator Keanggotaan, Operator Boolean, Statemen Kendali Seleksi, Indentasi, if-else, if-Bersusun, Header elif.

  • Kendali Iteratif

    Kuliah hari ini berfokus pada "Kendali Iteratif". Materi mencakup: Statemen while, Perulangan tak-terbatas (infinitif), Perulangan tentu, Perulangan tak-tentu, dan Boolean Flag.

  • List

    Kuliah hari ini membahas tentang penggunaan salah satu struktur data linier yang umum dalam pemrograman, yaitu: List. Dalam Python, List termasuk pada struktur data sequence, disamping Tuple dan String. Pada intinya, ketiga struktur data ini berbagi karakteristik yang hampir sama satu sama lain. Materi kuliah mencakup: Apa itu List, operasi-operasi yang umum dalam List, List Traversal, Tuple dan operasi-operasi Tuple, dan Nested List.

  • Strings

    Meskipun selama ini kita telah menggunakan data-data bertipe string dalam banyak kesempatan, namun kuliah ini menjelaskan secara detail dan mendalam tentang apa itu string dan operasi-operasi yang didukungnya.

  • Fungsi

    Fungsi adalah serangkaian instruksi untuk mengerjakan suatu tugas tertentu yang dinamai sehingga dapat dipanggil/dijalankan dari program utama. Kuliah hari ini berfokus pada konsep Fungsi dan penggunaannya dalam bahasa Python.

  • Dictionary

    Dictionary adalah tipe data asosiatif dimana data dinyatakan dalam bentuk pasangan kunci unik dan nilai tertentu. Materi kuliah hari ini membahas tentang Dictionary serta cara penggunaannya dalam Python.

  • Himpunan

    Dalam matematika, himpunan adalah sekumpulan objek yang dapat dianggap sebagai satu kesatuan. Materi kuliah hari ini membahas tentang implementasi dan penggunaan struktur data himpunan dalam bahasa pemrograman Python.

  • Module

    Module adalah salah satu cara untuk mengabstraksi kompleksitas fungsi-fungsi ke dalam sebuah file yang dapat digunakan (di-import) dari program utama. Kuliah hari ini akan diawali dengan review materi2 yang lalu, melalui analisa program, dan dilanjutkan dengan pembahasan mengenai module.

  • Objek dan Kelas (Part 1)

    Topik kuliah hari ini mengawali pembahasan mengenai Pemrograman Berbasis Objek (OOP, Object-Oriented Programming) yang akan dilanjutkan pada beberapa pertemuan yang akan datang. Pemahaman mengenai apa itu objek dan kelas serta bagaimana mengimplementasikannya dalam bahasa pemrograman adalah penting untuk menguasai konsep OOP.

  • Objek dan Kelas (Part 2)

    Kuliah hari ini melanjutkan pembahasan dalam kuliah minggu lalu yakni tentang Objek dan Kelas. Materi difokuskan pada tiga fitur utama pemrograman berorientasi objek yakni: 1) Enkapsulasi, 2) Pewarisan, dan 3) Polimorfisme.

  • Recursion

    Kuliah ini membahas tentang teknik pemrograman dengan recursion dan bagaimana mengimplementasikannya dalam Python.