Topic outline

  • Course Outline

    • Page icon
      Algoritma dan Pemrograman
      Course Outline — E-Learning ILMU2 UPN Veteran Jawa Timur
      Kode MK: IF221106
      Program Studi: Informatika
      Semester: II (Dua)
      SKS: 3 SKS
      Dosen: Eka Prakarsa Mandyartha, ST., M.Kom.
      1
      Computational Thinking & Pengantar Bahasa C
      Pertemuan 1
      P1
      Algoritma dan Computational Thinking
      • ·Klasifikasi bahasa pemrograman: mesin, rendah, menengah, tinggi
      • ·Pengertian dan manfaat computational thinking
      • ·Empat tahapan: Dekomposisi, Pengenalan Pola, Abstraksi, Algoritma
      • ·Karakteristik dan kelebihan computational thinking
      • ·Penerapan CT: studi kasus menghitung keliling lingkaran
      2
      Struktur Program, Variabel, dan Tipe Data
      Pertemuan 2 – 3
      P2
      Struktur dasar program bahasa C
      • ·Preprocessor directives: #include dan #define
      • ·Deklarasi global dan fungsi utama main()
      • ·Fungsi input/output: printf dan scanf
      • ·String format, placeholder, dan tipe karakter (%d, %f, %s, dll.)
      • ·Whitespace karakter: \n, \t
      P3
      Pernyataan, variabel, konstanta, dan tipe data
      • ·Deklarasi dan inisialisasi variabel
      • ·Konstanta dengan const dan makro #define
      • ·Tipe data bilangan bulat: char, int, short, long, unsigned
      • ·Tipe data non-bulat: float, double, long double
      • ·Pendefinisian tipe data baru dengan typedef
      3
      Pertemuan 4 – 5
      P4
      Operator dasar
      • ·Operator aritmatika: +, -, *, /, %
      • ·Operator penugasan (=) dan kombinasional/pemendekan (+=, -=, *=, dll.)
      • ·Operator penaikan dan penurunan: ++ dan --
      • ·Operator relasi: ==, !=, >, <, >=, <=
      P5
      Operator lanjutan dan prioritas
      • ·Operator logika: && (and), || (or), ! (not)
      • ·Operator kondisi / ternary: operand1 ? operand2 : operand3
      • ·Operator bitwise: <<, >>, &, |, ^, ~
      • ·Prioritas dan urutan eksekusi operator dalam ekspresi
      4
      Pertemuan 6 – 7
      P6
      Penyeleksi kondisi if
      • ·Konsep penyeleksi kondisi dalam pemrograman
      • ·Pernyataan if tunggal
      • ·Pernyataan if-else
      • ·Pernyataan if – else if – else (bertingkat)
      • ·Blok pernyataan dan penggunaan kurung kurawal
      P7
      Penyeleksi kondisi switch
      • ·Sintaks dan struktur switch-case
      • ·Peran break dalam switch
      • ·Klausa default pada switch
      • ·Perbandingan if-else vs switch: kapan menggunakan masing-masing
      5
      Perulangan
      Pertemuan 8 – 9
      P8
      Perulangan while dan do-while
      • ·Konsep dan kegunaan struktur perulangan
      • ·Perulangan while: kondisi diuji sebelum badan dieksekusi
      • ·Perulangan do-while: kondisi diuji setelah badan dieksekusi
      • ·Perbedaan mendasar while vs do-while
      • ·Infinite loop dan cara menghindarinya
      P9
      Perulangan for dan nested loop
      • ·Sintaks for (ekspresi_1; ekspresi_2; ekspresi_3)
      • ·Variabel kontrol dan pembaharuan nilai pada tiap iterasi
      • ·Nested loop (perulangan di dalam perulangan)
      • ·Penggunaan break dan continue dalam perulangan
      6
      Array
      Pertemuan 10 – 11
      P10
      Array satu dimensi
      • ·Konsep array sebagai variabel kompleks bertipe sama
      • ·Deklarasi, inisialisasi, dan akses elemen array
      • ·Indeks array dimulai dari 0
      • ·Traversal array menggunakan perulangan for
      • ·Pencarian nilai dalam array (nilai maks, min)
      P11
      String (array karakter)
      • ·String sebagai array bertipe data char
      • ·Deklarasi dan inisialisasi string
      • ·Input/output string dengan scanf dan printf (%s)
      • ·Karakter null terminator '\0'
      • ·Fungsi-fungsi string standar: strlen, strcpy, strcat, strcmp
      7
      Fungsi
      Pertemuan 12 – 14
      P12
      Pengenalan fungsi dan return value
      • ·Konsep fungsi dan manfaat modularitas program
      • ·Deklarasi, definisi, dan pemanggilan fungsi
      • ·Tipe data nilai kembalian (return value) dan pernyataan return
      • ·Parameter fungsi: formal dan aktual
      • ·Fungsi tanpa nilai kembalian (void)
      P13
      Jenis-jenis variabel dalam fungsi
      • ·Variabel lokal (automatic): hanya dapat diakses dalam fungsi sendiri
      • ·Variabel global (extern): dapat diakses di seluruh program
      • ·Variabel statis (static): nilai tetap meskipun fungsi selesai dieksekusi
      • ·Konflik nama variabel lokal dan global
      P14
      Pengiriman argumen pada fungsi
      • ·Pengiriman parameter by value: salinan nilai dikirim ke fungsi
      • ·Pengiriman parameter by reference: alamat memori dikirim ke fungsi
      • ·Perbedaan dampak perubahan nilai pada by value vs by reference
      • ·Studi kasus: fungsi swap dua nilai menggunakan pointer
  • Algorithm: Introduction

  • Algorithm: Seleksi Kondisi / Percabangan / Seleksi Bersarang

    • Assignment icon
      Opened: Friday, 13 March 2026, 12:00 AM
      Due: Thursday, 2 April 2026, 11:59 PM

      Buatlah 1 Algoritma , 1 Flowchart dan 1 Pseudocode menggunakan struktur seleksi bersarang

      Ketentuan:

      • Antar peserta kelas tidak boleh sama. 
      • Tidak boleh generate jawaban dari AI
      • Buat flowchart menggunakan aplikasi grafis, misalnya: MS Visio, Aplikasi UML (ibm sparx, argo uml, star uml, dkk) atau aplikasi online seperti draw.io. 
      • Tidak diijinkan generate flowchart dari plantUML dan sejenisnya yang menggunakan prompt/kode dari AI.
      • Dalam file .doc, NPM_Nama_TugasTopik2
      • file .doc (isi file .doc berupa Soal , Algoritma , Pseudocode dan screenshoot dari flowchart pada file raptor)
  • Algorithm: Struktur Dasar Perulangan

  • Algorithm: Kombinasi Struktur Dasar

    • Assignment icon
      Opened: Friday, 13 March 2026, 12:00 AM
      Due: Thursday, 2 April 2026, 11:59 PM

      Buatlah 2 Algoritma, Flowchart dan Pseudocode yang menggunakan kombinasi struktur dasar (minimal ada perulangan di salah satu soal)
      File yang dikumpulkan :
      2 Soal kombinasi struktur dasar , 2 Algoritma ,2 Flowchart, 2 Pseudocode

      Format penulisan :
      1 a Soal
      b. Algoritma
      c Flowchart
      d.Pseudocode

      2. a Soal
      b. Algoritma
      c Flowchart
      d.Pseudocode

      Ketentuan:

      • Antar peserta kelas tidak boleh sama. 
      • Tidak boleh generate jawaban dari AI
      • Buat flowchart menggunakan aplikasi grafis, misalnya: MS Visio, Aplikasi UML (ibm sparx, argo uml, star uml, dkk) atau aplikasi online seperti draw.io. 
      • Tidak diijinkan generate flowchart dari plantUML dan sejenisnya yang menggunakan prompt/kode dari AI.
      • Dalam file .doc, NPM_Nama_TugasTopik4
  • Programming: Computational Thinking & Pengantar Bahasa C

    • File icon
       
      Topik 1 · Pertemuan 1
      Computational Thinking &
      Pengantar Bahasa C

      Pada topik ini mahasiswa diajak memahami cara berpikir komputasional sebagai fondasi sebelum menulis kode, mengenal posisi bahasa C di antara berbagai tingkatan bahasa pemrograman, lalu langsung mempraktikkan penulisan program C pertama lengkap dengan fungsi input dan output.

      Yang Akan Dipelajari
      Klasifikasi 4 tingkat bahasa pemrograman
      4 tahapan computational thinking
      Struktur dasar program bahasa C
      Fungsi printf dan scanf serta placeholder
      📖
      Materi
      Baca & pelajari halaman per halaman
      💻
      Latihan
      Praktik menulis & menjalankan kode C
      📝
      Kuis
      Uji pemahaman materi topik ini
  • Programming: Operator

    • File icon
       
      Topik 3 · Pertemuan 4 – 5
      Operator dalam Bahasa C

      Topik ini membahas berbagai jenis operator yang tersedia dalam bahasa C — mulai dari operasi matematika dasar hingga manipulasi bit. Mahasiswa akan memahami cara kerja setiap operator, bagaimana operator membentuk ekspresi, serta aturan prioritas yang menentukan urutan eksekusinya dalam sebuah pernyataan.

      Yang Akan Dipelajari
      P4
      Operator Dasar
      Aritmatika  ·  Penugasan  ·  Pemendekan  ·  Penaikan & Penurunan  ·  Relasi
      P5
      Operator Lanjutan & Prioritas
      Logika  ·  Kondisi / Ternary  ·  Bitwise  ·  Urutan eksekusi operator
      Jenis Operator yang Dibahas
      Aritmatika  + - * / % Penugasan  = += -= *= Penaikan/Penurunan  ++ -- Relasi  == != > < >= <= Logika  && || ! Kondisi / Ternary  ? : Bitwise  << >> & | ^ ~
      📖
      Materi
      Baca & pelajari halaman per halaman
      💻
      Latihan
      Prediksi & jalankan kode per operator
      📝
      Kuis
      Uji pemahaman materi topik ini
  • Tugas: Operator

    • File icon
       
      🏫 Algoritma dan Pemrograman 📺 Materi Slide

      Slide Praktik Koding — Operator, Seleksi Kondisi, Perulangan

      Operator, seleksi kondisi, dan perulangan dalam bahasa C — lengkap dengan contoh koding dan ilustrasi bitwise

      👤 Dosen: Eka Prakarsa Mandyartha, ST., M.Kom. 📄 Jumlah slide: 16 slide 📚 Pertemuan: Operator, Seleksi Kondisi, Perulangan

      ■ Isi materi

      Bagian 1

      Operator aritmatika & penugasan

       
      + - * / % ++ -- Contoh koding

      Bagian 2

      Operator bitwise & shift

       
      & | ^ ~ << >> Ilustrasi bit

      Bagian 3

      Seleksi kondisi

       
      if / else switch-case Coba di PC

      Bagian 4

      Perulangan

       
      while do-while for

      Bagian 5

      Coding session

       
      Grade nilai Tabel perkalian bitwise.c

      Bonus

      Cheat sheet & referensi

       
      Quick ref Semua syntax

      ↓ Unduh materi

      📺

      Praktikum_DasarPemrograman_Percobaan2_v2.pptx

      PowerPoint  ·  16 slide  ·  Versi lengkap dengan contoh koding

      ↓ Unduh Sekarang

      📚 Topik yang dipelajari

       

      Operator aritmatika

      Penjumlahan, pengurangan, perkalian, pembagian, modulus

       

      Increment & decrement

      Pre dan post: ++x, x++, --x, x--

       

      Operator bitwise

      AND, OR, XOR, NOT, shift kiri & kanan — dengan ilustrasi bit

       

      Relasi & logika

      Perbandingan dan penghubung kondisi

       

      Seleksi kondisi

      if, if-else, else if, switch-case

       

      Perulangan

      while, do-while, for — perbandingan ketiganya

      ℹ Setiap bagian dilengkapi dengan contoh koding yang bisa langsung dicoba di PC. Materi ini menjadi referensi utama dalam mengerjakan Tugas Operator, Seleksi Kondisi, dan Perulangan.

      Program Studi Informatika – UPN “Veteran” Jawa Timur

      Algoritma dan Pemrograman
    • Assignment icon
      Opened: Tuesday, 9 June 2026, 12:00 AM
      Due: Monday, 15 June 2026, 12:00 AM
       
      🏫 Algoritma dan Pemrograman ✨ Tugas Baru

      Tugas Bab Operator

      Operator aritmatika, relasi, logika, bitwise, dan kondisi dalam bahasa C

      👤 Dosen: Eka Prakarsa Mandyartha, ST., M.Kom. 📅 Dibuka: 9 Juni 2026 ⏰ Deadline: [ 14 Juni 2026 ]

      ✓ Yang harus dikerjakan

      💻
      Ketik dan jalankan program percobaan operator. Isi tabel data hasil dengan output yang muncul di layar.
      Jawab semua soal analisa dan soal kesimpulan pada lembar jawaban.
      📷
      Sertakan screenshot output program untuk setiap baris percobaan di tabel.

      Deadline: [ 14 Juni 2026 Jam 23.59 WIB ].
      Keterlambatan pengumpulan akan ditandai sebagai late submission di sistem.


      📦 Format pengumpulan

      1

      Source code

      Program .c yang sudah berjalan
      NPM_Nama_ALPRO_tugasoperator.c

      2

      Laporan

      Jawaban + screenshot hasil percobaan
      NPM_Nama_laporan.pdf

      3

      Kemas dalam ZIP

      Gabungkan kedua file di atas menjadi satu folder ZIP

      4

      Upload ke e-learning

      Submit melalui tautan Assignment di halaman ini

      📦

      Nama file ZIP

      NPM_NamaLengkap_ALPRO_tugasoperator.zip

      📄 Berkas pendukung

      📄
      File soal: Soal_Praktik_ALPRO_praktikoperator.pdf — tersedia di attachment halaman ini
      📋
      Lembar jawaban — diunduh, diisi, dikumpulkan bersama source code dalam ZIP

      Program Studi Informatika – UPN “Veteran” Jawa Timur

      Algoritma dan Pemrograman
  • Programming: Seleksi Kondisi

    • File icon
       
      Topik 4  ·  Pertemuan 6 – 7
      Seleksi Kondisi

      Topik ini membahas cara membuat program yang mampu mengambil keputusan berdasarkan kondisi tertentu. Dengan seleksi kondisi, program tidak lagi berjalan lurus dari atas ke bawah — ia bisa memilih jalur mana yang akan dieksekusi tergantung pada nilai atau ekspresi yang dievaluasi. Konsep ini merupakan fondasi dari hampir semua logika pemrograman nyata.

      🔗 Sambungan dari Topik Operator

      Operator relasi (== != > < >= <=), operator logika (&& || !), dan operator ternary (? :) yang sudah dipelajari adalah bahan bakar utama seleksi kondisi. Di topik ini, cara evaluasinya diperluas menjadi struktur yang jauh lebih fleksibel dan powerful.

      Yang Akan Dipelajari
      P6
      Penyeleksi Kondisi if
      if tunggal  ·  if-else  ·  if – else if – else bertingkat  ·  blok pernyataan
      P7
      Penyeleksi Kondisi switch
      switch-case  ·  peran break  ·  klausa default  ·  if-else vs switch
      Jenis Seleksi Kondisi dalam Bahasa C
      if
      Eksekusi satu blok jika kondisi benar
      if-else
      Dua jalur: satu jika benar, satu jika salah
      else if
      Banyak kondisi diperiksa berurutan
      switch
      Banyak nilai diskrit, kode lebih rapi
      📖
      Materi
      Baca & pelajari halaman per halaman
      💻
      Latihan
      Praktik menulis program percabangan
      📝
      Kuis
      Uji pemahaman materi topik ini
  • Programming: Perulangan (Looping)

    • File icon
       
       
      Topik 5  ·  Pertemuan 8 – 9
      Perulangan (Looping)

      Topik ini membahas cara membuat program yang mampu mengulang suatu proses tanpa harus menulis kode yang sama berkali-kali. Dengan struktur perulangan, serangkaian instruksi dapat dieksekusi ribuan kali secara otomatis — selama kondisi tertentu terpenuhi. Perulangan adalah mesin penggerak dari hampir semua algoritma nyata: menghitung, mencari data, mencetak pola, dan memproses daftar.

      🔗 Sambungan dari Topik Sebelumnya

      Perulangan menggunakan ekspresi kondisi yang sama dengan seleksi kondisioperator relasi dan logika yang sudah dipelajari. Perbedaannya: di seleksi kondisi, kondisi menentukan apakah blok dieksekusi sekali. Di perulangan, kondisi menentukan seberapa lama blok terus dieksekusi berulang.

      Yang Akan Dipelajari
      P8
      Perulangan while dan do-while
      Kondisi diperiksa sebelum badan  ·  Kondisi diperiksa setelah badan  ·  Perbedaan keduanya  ·  Infinite loop
      P9
      Perulangan for & Nested Loop
      Sintaks for  ·  Variabel kontrol  ·  Perulangan bersarang  ·  break & continue
      Tiga Struktur Perulangan dalam Bahasa C
      while
      Kondisi diperiksa sebelum badan dieksekusi. Mungkin tidak pernah berjalan jika kondisi awal sudah salah.
      do-while
      Kondisi diperiksa setelah badan dieksekusi. Selalu berjalan minimal sekali.
      for
      Jumlah iterasi sudah diketahui. Inisialisasi, kondisi, dan update dalam satu baris.
      📖
      Materi
      Baca & pelajari halaman per halaman
      💻
      Latihan
      Praktik membuat pola & perulangan
      📝
      Kuis
      Uji pemahaman materi topik ini
  • Programming: Array & String

    • File icon
       
       
      Topik 6  ·  Pertemuan 10 – 11
      Array & String

      Topik ini membahas cara menyimpan dan mengelola banyak data bertipe sama menggunakan satu variabel — itulah array. Tanpa array, untuk menyimpan 100 nilai kita harus membuat 100 variabel terpisah. Dengan array, cukup satu deklarasi. Topik ini juga membahas string, yang merupakan array karakter khusus untuk menyimpan teks.

      🔗 Sambungan dari Topik Perulangan

      Perulangan for yang sudah dipelajari adalah pasangan alami array. Hampir setiap operasi pada array — mengisi, membaca, mencari, mengurutkan — dilakukan dengan cara mengiterasi elemen satu per satu menggunakan indeks sebagai variabel kontrol.

      Yang Akan Dipelajari
      P10
      Array Satu Dimensi
      Deklarasi & inisialisasi  ·  Akses elemen dengan indeks  ·  Traversal dengan for  ·  Pencarian nilai maks & min
      P11
      String (Array Karakter)
      Deklarasi string  ·  Input & output string  ·  Null terminator '\0'  ·  Fungsi string standar
      Konsep Array dalam Memori
      Contoh: int nilai[5] = {85, 72, 90, 68, 77};
      Nilai
      Indeks
      85
      [0]
      72
      [1]
      90
      [2]
      68
      [3]
      77
      [4]
      ⓘ Indeks selalu dimulai dari 0, bukan 1. Array dengan 5 elemen memiliki indeks 0 s.d. 4.
      📖
      Materi
      Baca & pelajari halaman per halaman
      💻
      Latihan
      Praktik manipulasi array & string
      📝
      Kuis
      Uji pemahaman materi topik ini
  • Programming: Fungsi

    • File icon
       
       
      Topik 7  ·  Pertemuan 12 – 14
      Fungsi (Function)

      Topik ini membahas cara memecah program besar menjadi unit-unit kecil yang terkelola melalui fungsi. Dengan fungsi, blok kode yang sama tidak perlu ditulis berulang kali — cukup definisikan sekali, panggil berkali-kali dari mana saja. Ini adalah fondasi dari pemrograman modular yang membuat kode lebih rapi, mudah dipelihara, dan mudah dilacak kesalahannya.

      🔗 Sambungan dari Topik Sebelumnya

      Seluruh materi sebelumnya — operator, seleksi kondisi, perulangan, array, dan string — digunakan di dalam fungsi. Fungsi pertama yang sudah kita kenal sejak awal adalah main(). Di topik ini, kita belajar membuat fungsi-fungsi sendiri di luar main() dan memanggilnya sesuai kebutuhan.

      Yang Akan Dipelajari
      P12
      Pengenalan Fungsi & Return Value
      Deklarasi & definisi  ·  Pemanggilan  ·  Nilai kembalian (return)  ·  Fungsi void  ·  Parameter formal & aktual
      P13
      Jenis-jenis Variabel dalam Fungsi
      Variabel lokal  ·  Variabel global  ·  Variabel statis  ·  Konflik nama
      P14
      Pengiriman Argumen pada Fungsi
      By value  ·  By reference (pointer)  ·  Perbedaan dampak perubahan nilai  ·  Pengiriman array ke fungsi
      Anatomi Sebuah Fungsi
      int hitungLuas ( int panjang , int lebar )
      {
      return panjang * lebar;
      }
       
      int — tipe data nilai kembalian
       
      hitungLuas — nama fungsi
       
      panjang, lebar — parameter
       
      return — nilai yang dikembalikan
      📖
      Materi
      Baca & pelajari halaman per halaman
      💻
      Latihan
      Praktik menulis & memanggil fungsi
      📝
      Kuis
      Uji pemahaman materi topik ini
  • Final Exam (UAS)

    • Assignment icon
      Opened: Sunday, 21 June 2026, 12:00 AM
      Due: Sunday, 28 June 2026, 11:59 PM

      Seluruh petunjuk pengumpulan dan pengerjaan soal dan jawaban ada di file soal. Kumpulkan jawaban ke e-learning ILMU2.