Universitas Negeri Surabaya
Fakultas Matematika dan Ilmu Pengetahuan Alam
Program Studi S1 Kecerdasan Artifisial

Kode Dokumen

SEMESTER LEARNING PLAN

Course

KODE

Rumpun MataKuliah

Bobot Kredit

SEMESTER

Tanggal Penyusunan

Dasar Pemrograman

5528303004

Mata Kuliah Wajib Program Studi

T=2

P=1

ECTS=4.77

1

15 Agustus 2025

OTORISASI

Pengembang S.P

Koordinator Rumpun matakuliah

Koordinator Program Studi




Harmon Prayogi, M.Sc.




Dr. Elly Matul Imah, M.Kom




ELLY MATUL IMAH

Model Pembelajaran

Project Based Learning

Program Learning Outcomes (PLO)

PLO program Studi yang dibebankan pada matakuliah

PLO-1

Mampu menunjukkan nilai-nilai agama, kebangsaan dan budaya nasional, serta etika akademik dalam melaksanakan tugasnya

PLO-3

Mengembangkan pemikiran logis, kritis, sistematis, dan kreatif dalam melakukan pekerjaan yang spesifik di bidang keahliannya serta sesuai dengan standar kompetensi kerja bidang yang bersangkutan

PLO-5

Menguasai konsep matematika, statistika, dan ilmu komputer yang berkaitan dengan kecerdasan artifisial, menguasai teori bidang kecerdasan artifisial secara menyeluruh

PLO-8

Mampu mengkaji dan memanfaatkan ilmu pengetahuan dan teknologi untuk diaplikasikan pada bidang kecerdasan artifisial, serta menerapkan pemikiran logis, kritis, sistematis, dan inovatif dalam mengambil keputusan secara tepat, bermutu, dan terukur baik individu maupun kelompok dalam bentuk tugas akhir atau kegiatan pembelajaran dengan luaran setara tugas akhir sesuai standar kompetensi bidang kecerdasan artifisial.

PLO-11

Mampu mengambil keputusan secara tepat berdasarkan prosedur dan standar di bidang kecerdasan artifisial, menunjukkan kepemimpinan dengan bertanggung jawab atas pencapaian hasil kerja tim, melakukan supervisi dan evaluasi terhadap pekerjaan yang menjadi tanggung jawabnya, serta membangun jejaring kerja sama di dalam maupun luar lembaga untuk mendukung inovasi dan pengembangan edu-technoecopreneurship berkelanjutan

Program Objectives (PO)

PO - 1

Mahasiswa menguasai konsep algoritma, flowchart, dan pseudocode.

PO - 2

Mahasiswa mamemahami sejarah dan struktur bahasa pemrograman C++.

PO - 3

Mahasiswa mengaplikasikan dan menguasai konsep input-output.

PO - 4

Mahasiswa mengaplikasikan dan menguasai konsep percabangan dan perulangan.

PO - 5

Mahasiswa memahami konsep array dan string.

PO - 6

Mahasiswa menguasai konsep fungsi.

PO - 7

Mahasiswa mampu mengatasi error (debugging).

PO - 8

Mahasiswa memahami konsep memori dan pointer.

PO - 9

Mahasiswa memahami konsep atribut, method, konstuktor, destruktor, dan pointer lanjut

PO - 10

Mahasiswa mampu menggunakan dan menerapkan Standard Template Library (STL)

PO - 11

Mahasiswa mampu merancang proyek dasar pemrograman dengan C++.

PO - 12

Mahasiswa mampu menganalisis masalah dan membuat program dengan bahasa C++ dan menyelesaikan dengan jujur secara mandiri

Matrik PLO-PO

 
POPLO-1PLO-3PLO-5PLO-8PLO-11
PO-1    
PO-2    
PO-3    
PO-4    
PO-5    
PO-6    
PO-7    
PO-8    
PO-9    
PO-10    
PO-11    
PO-12    

Matrik PO pada Kemampuan akhir tiap tahapan belajar (Sub-PO)

 
PO Minggu Ke
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
PO-1
PO-2
PO-3
PO-4
PO-5
PO-6
PO-7
PO-8
PO-9
PO-10
PO-11
PO-12

Deskripsi Singkat Mata Kuliah

Mata kuliah Dasar Pemrograman ini memperkenalkan konsep dasar pemrograman komputer menggunakan bahasa pemrograman C++. Materi mencakup penyusunan algoritma, pembuatan flowchart, dan penulisan pseudocode sebagai dasar logika pemrograman. Mahasiswa akan mempelajari sejarah dan struktur bahasa C++, pengelolaan data menggunakan array dan string, penerapan percabangan dan perulangan, serta teknik input-output. Materi mata kuliah juga mencakup pembuatan fungsi, teknik debugging, penggunaan memori dan pointer, penerapan Standard Template Library (STL) dan konsep pemrograman berorientasi objek (PBO). Melalui praktik dan pembuatan proyek, mahasiswa diharapkan mampu merancang dan membuat program C++ secara efektif serta mampu mengembangkan perangkat lunak sederhana.

Pustaka

Utama :

  1. Cyganek, B., 2020. Introduction to Programming with C++ for Engineers. John Wiley & Sons.
  2. Stroustrup, B., 2024, Programming: Principles and Practice Using C++, 3rd Edition. Addison-Wesley.
  3. Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C++ Cookbook: Solutions and Examples for C++ Programmers. O'Reilly Media, Inc.

Pendukung :

Dosen Pengampu

Dr. Elly Matul Imah, M.Kom.

Harmon Prayogi, M.Sc.

Minggu Ke-

Kemampuan akhir tiap tahapan belajar
(Sub-PO)

Penilaian

Bantuk Pembelajaran,

Metode Pembelajaran,

Penugasan Mahasiswa,

 [ Estimasi Waktu]

Materi Pembelajaran

[ Pustaka ]

Bobot Penilaian (%)

Indikator

Kriteria & Bentuk

Luring (offline)

Daring (online)

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

1

Minggu ke 1

Mahasiswa menguasai konsep algoritma, flowchart, dan pseudocode.

  1. Menjelaskan pengertian algoritma
  2. Memahami simbol-simbol flowchart
  3. Memahami penulisan pseudocode
  4. Membuat flowchart dan pseudocode untuk penyelesaian masalah
Kriteria:

Partisipasi


Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Presentasi, tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Introduction to programming
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.
5%

2

Minggu ke 2

Mahasiswa mamemahami sejarah dan struktur bahasa pemrograman C++.

  1. Memahami latar belakang perkembangan C++
  2. Menjelaskan struktur dasar program C++
  3. Memahami aturan penulisan sintaks C++
  4. Memahami konsep compile dan linking
  5. Tipe-tipe data dalam C++
Kriteria:

Partisipasi


Bentuk Penilaian :
Aktifitas Partisipasif
Presentasi, tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Introduction to programming
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Hello, World!
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.

Materi: Building C Applications
Pustaka: Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C Cookbook: Solutions and Examples for C Programmers. O'Reilly Media, Inc.
0%

3

Minggu ke 3

Mahasiswa mengaplikasikan dan menguasai konsep input-output.

  1. Memahami input-output dasar menggunakan cin dan cout
  2. Memahami penggunaan manipulator (setw, setprecision)
  3. Melakukan pembacaan input dengan spasi (getline)
  4. Melakukan input-output ke dan dari file (fstream)
Kriteria:
  1. Unjuk Kerja
  2. Tugas

Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Presentasi, tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Input and Output Streams
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.

Materi: Streams and Files
Pustaka: Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C Cookbook: Solutions and Examples for C Programmers. O'Reilly Media, Inc.
0%

4

Minggu ke 4

Mahasiswa mengaplikasikan dan menguasai konsep percabangan dan perulangan.

  1. Memahami konsep percabangan dengan if, if-else, dan switch-case
  2. Memahami konsep perulangan dengan for, while, dan do-while
  3. Memahami konsep percabangan dan perulangan bersarang
  4. Melakukan penggunaan break dan continue
  5. Melakukan studi kasus penggunaan percabangan dan perulangan secara bersamaan
Kriteria:
  1. Unjuk Kerja
  2. Tugas

Bentuk Penilaian :
Praktik / Unjuk Kerja
Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Statments
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Statements
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
5%

5

Minggu ke 5

Mahasiswa memahami konsep array dan string.

  1. Menjelaskan konsep dan definisi array
  2. Melakukan deklarasi, inisialisasi, dan akses elemen array
  3. Memahami array multidimensi
  4. Melakukan operasi dasar pada array
  5. Memahami konsep string pada C
  6. Melakukan operasi pada string
Kriteria:
  1. Unjuk Kerja
  2. Tugas

Bentuk Penilaian :
Praktik / Unjuk Kerja
Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: C Basics; Arrays
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: C-style strings; Numbers
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.

Materi: String and Text
Pustaka: Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C Cookbook: Solutions and Examples for C Programmers. O'Reilly Media, Inc.
5%

6

Minggu ke 6

Mahasiswa menguasai konsep fungsi.

  1. Memahami konsep fungsi di dalam C++
  2. Melakukan deklarasi dan definisi fungsi
  3. Memahami konsep parameter dan nilai kembali (return value)
  4. Memahami fungsi rekursif
Kriteria:
  1. Unjuk Kerja
  2. Partisipasi

Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Functions
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Technicalities: Functions
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
0%

7

Minggu ke 7

Mahasiswa mampu mengatasi error (debugging).

  1. Memahami jenis-jenis error
  2. Memahami konsep compilation errors dan runtime errors
  3. Membaca pesan error
  4. Menggunakan debugger
  5. Melakukan teknik tracking program dengan output
  6. Memahami error-error umum pada C++
Kriteria:

Partisipasi

Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Our Friend the Debugger
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Errors!
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
0%

8

Minggu ke 8

Ujian Tengah Semester


Bentuk Penilaian :
Praktik / Unjuk Kerja, Tes
Ujian Tengah Semester
Ujian Tengah Semester
20%

9

Minggu ke 9

Mahasiswa memahami konsep memori dan pointer.

  1. Memahami konsep alamat memori
  2. Melakukan deklarasi dan penggunaan pointer
  3. Memahami konsep pointer pada array
  4. Melakukan alokasi dan dealokasi memori dinamis (new dan delete)
Kriteria:

Partisipasi


Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Memory Management; Pointers
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Vector and Free Store
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.

Materi: Managing Data with Containers
Pustaka: Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C Cookbook: Solutions and Examples for C Programmers. O'Reilly Media, Inc.
0%

10

Minggu ke 10

Mahasiswa memahami konsep atribut, method, pointer lanjut, konstuktor, dan destruktor.

  1. Memahami konsep atribut dan method
  2. Konsep pointer pada fungsi
Kriteria:
  1. Partisipasi
  2. Tugas

Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Delving into Object-Oriented Programming
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Technicalities: Classes
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.

Materi: Classes
Pustaka: Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C Cookbook: Solutions and Examples for C Programmers. O'Reilly Media, Inc.
5%

11

Minggu ke 11

Mahasiswa memahami konsep atribut, method, konstuktor, destruktor, dan pointer lanjut

  1. Memahami konsep Inheritance
  2. Memahami konsep function overriding
  3. Memahami konsep konstruktor dan destruktor
Kriteria:
  1. Partisipasi
  2. Tugas

Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Delving into Object-Oriented Programming
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Technicalities: Classes
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.

Materi: Classes
Pustaka: Stephens, D.R., Diggins, C., Turkanis, J. and Cogswell, J., 2005. C Cookbook: Solutions and Examples for C Programmers. O'Reilly Media, Inc.
5%

12

Minggu ke 12

Mahasiswa mampu menggunakan dan menerapkan Standard Template Library (STL)

  1. Memahami konsep STL pada C++
  2. Memahami konsep containers (vector, list, map, set)
  3. Memahami konsep iterator
Kriteria:

Partisipasi

Presentasi, Tanya jawab
150 menit
Presentasi, tanya jawab
Materi: Introduction to Templates and Generic Programming
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Templates, Exceptions, Containers, Iterators, Maps, Sets
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
0%

13

Minggu ke 13

Mahasiswa mampu mngerjakan proyek dasar pemrograman dengan C++.

  1. Mampu mengidentifikasi permasalahan
  2. Mampu merancang ide proyek

Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk
Luring
3 x 50 menit
Presentasi, tanya jawab
Materi: Semua materi
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Semua materi
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
10%

14

Minggu ke 14

Mahasiswa mampu mngerjakan proyek dasar pemrograman dengan C++.

  1. Mampu mengimplementasikan rancangan program ke dalam C++
  2. Mampu melakukan debugging dan perbaikan kode
  3. Mampu mendokumentasikan proses pengembangan proyek

Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk, Praktik / Unjuk Kerja
Implementasi dan diskusi kelompok offline
Implementasi dan diskusi kelompok offline
Materi: Semua materi
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Semua materi
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
5%

15

Minggu ke 15

Mahasiswa mampu mempresentasikan proyek dasar pemrograman dengan C++.

Mampu mengimplementasikan konsep-konsep dasar pemrograman ke dalam proyek


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk, Praktik / Unjuk Kerja

Presentasi Daring
3 x 50 menit
Materi: Semua materi
Pustaka: Cyganek, B., 2020. Introduction to Programming with C for Engineers. John Wiley & Sons.

Materi: Semua materi
Pustaka: Stroustrup, B., 2024, Programming: Principles and Practice Using C , 3rd Edition. Addison-Wesley.
5%

16

Minggu ke 16

Ujian Akhir Semester


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk
Presentasi Proyek
Presentasi Proyek
35%



Rekap Persentase Evaluasi : Project Based Learning

No Evaluasi Persentase
1. Aktifitas Partisipasif 7.5%
2. Penilaian Hasil Project / Penilaian Produk 50%
3. Praktik / Unjuk Kerja 32.5%
4. Tes 10%
100%

Catatan

  1. Capaian Pembelajaran Lulusan Program Studi (PLO - Program Studi) adalah kemampuan yang dimiliki oleh setiap lulusan Program Studi yang merupakan internalisasi dari sikap, penguasaan pengetahuan dan ketrampilan sesuai dengan jenjang prodinya yang diperoleh melalui proses pembelajaran.
  2. PLO yang dibebankan pada mata kuliah adalah beberapa capaian pembelajaran lulusan program studi (CPL-Program Studi) yang digunakan untuk pembentukan/pengembangan sebuah mata kuliah yang terdiri dari aspek sikap, ketrampulan umum, ketrampilan khusus dan pengetahuan.
  3. Program Objectives (PO) adalah kemampuan yang dijabarkan secara spesifik dari PLO yang dibebankan pada mata kuliah, dan bersifat spesifik terhadap bahan kajian atau materi pembelajaran mata kuliah tersebut.
  4. Sub-PO Mata kuliah (Sub-PO) adalah kemampuan yang dijabarkan secara spesifik dari PO yang dapat diukur atau diamati dan merupakan kemampuan akhir yang direncanakan pada tiap tahap pembelajaran, dan bersifat spesifik terhadap materi pembelajaran mata kuliah tersebut.
  5. Indikator penilaian kemampuan dalam proses maupun hasil belajar mahasiswa adalah pernyataan spesifik dan terukur yang mengidentifikasi kemampuan atau kinerja hasil belajar mahasiswa yang disertai bukti-bukti.
  6. Kreteria Penilaian adalah patokan yang digunakan sebagai ukuran atau tolok ukur ketercapaian pembelajaran dalam penilaian berdasarkan indikator-indikator yang telah ditetapkan. Kreteria penilaian merupakan pedoman bagi penilai agar penilaian konsisten dan tidak bias. Kreteria dapat berupa kuantitatif ataupun kualitatif.
  7. Bentuk penilaian: tes dan non-tes.
  8. Bentuk pembelajaran: Kuliah, Responsi, Tutorial, Seminar atau yang setara, Praktikum, Praktik Studio, Praktik Bengkel, Praktik Lapangan, Penelitian, Pengabdian Kepada Masyarakat dan/atau bentuk pembelajaran lain yang setara.
  9. Metode Pembelajaran: Small Group Discussion, Role-Play & Simulation, Discovery Learning, Self-Directed Learning, Cooperative Learning, Collaborative Learning, Contextual Learning, Project Based Learning, dan metode lainnya yg setara.
  10. Materi Pembelajaran adalah rincian atau uraian dari bahan kajian yg dapat disajikan dalam bentuk beberapa pokok dan sub-pokok bahasan.
  11. Bobot penilaian adalah prosentasi penilaian terhadap setiap pencapaian sub-PO yang besarnya proposional dengan tingkat kesulitan pencapaian sub-PO tsb., dan totalnya 100%.
  12. TM=Tatap Muka, PT=Penugasan terstruktur, BM=Belajar mandiri.