0% menganggap dokumen ini bermanfaat (0 suara)
79 tayangan11 halaman

In Format I Kanji NG

Dokumen ini menjelaskan fondasi berpikir komputasional, termasuk teknik pemecahan masalah seperti decomposisi, pengenalan pola, abstraksi, dan perancangan algoritma. Selain itu, dokumen ini juga membahas konteks penerapan dalam pendidikan, sains, teknologi, dan kesehatan, serta teknik algoritma pengurutan dan struktur data. Terakhir, terdapat penjelasan tentang pemrograman Python, termasuk kelebihan, istilah, operator, dan pentingnya diagram alir dalam perancangan program.

Diunggah oleh

emilianaayubidan
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
79 tayangan11 halaman

In Format I Kanji NG

Dokumen ini menjelaskan fondasi berpikir komputasional, termasuk teknik pemecahan masalah seperti decomposisi, pengenalan pola, abstraksi, dan perancangan algoritma. Selain itu, dokumen ini juga membahas konteks penerapan dalam pendidikan, sains, teknologi, dan kesehatan, serta teknik algoritma pengurutan dan struktur data. Terakhir, terdapat penjelasan tentang pemrograman Python, termasuk kelebihan, istilah, operator, dan pentingnya diagram alir dalam perancangan program.

Diunggah oleh

emilianaayubidan
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

INFORMATIKA

1. Mengidentifikasi fondasi dalam berpikir komputasional

1. Decomposition (Decomposisi / Pemecahan Masalah)

Memecah masalah besar atau kompleks menjadi bagian-bagian kecil yang lebih mudah ditangani.

2. Pattern Recognition (Pengenalan Pola)

Mengidentifikasi kesamaan atau pola dalam data atau masalah.

3. Abstraction (Abstraksi)

Memfokuskan pada informasi yang penting dengan mengabaikan detail yang tidak relevan.

4. Algorithm Design (Perancangan Algoritma)

Menyusun langkah-langkah atau instruksi yang logis dan berurutan untuk menyelesaikan masalah.

Fondasi Tujuan Utama Contoh Singkat


Memecah masalah menjadi bagian
Decomposition Membagi proses pembuatan aplikasi
kecil
Pattern Mengenali kesamaan/pola dalam Menemukan pola langkah dalam permainan
Recognition masalah/data catur
Abstraction Menyaring informasi penting Menyederhanakan tampilan data peta
Menyusun langkah penyelesaian Membuat instruksi langkah demi langkah
Algorithm Design
masalah dalam kode

2. Mengidentifikasi konteks konteks dalam berpikir komputasional:

1. Konteks Pendidikan

Digunakan untuk membantu siswa memahami materi pelajaran dengan pendekatan logis dan
sistematis.

2. Konteks Ilmu Pengetahuan (Sains)

Membantu dalam menganalisis data eksperimen dan membuat simulasi ilmiah.

3. Konteks Teknologi dan Rekayasa

Diterapkan dalam pengembangan perangkat lunak, robotika, sistem otomatisasi, dan kecerdasan
buatan.

4. Konteks Sosial dan Kehidupan Sehari-hari

Membantu menyelesaikan masalah praktis di kehidupan nyata dengan berpikir logis dan efisien.

5. Konteks Ekonomi dan Bisnis


Digunakan dalam analisis data penjualan, peramalan permintaan pasar, hingga otomasi proses bisnis.

6. Konteks Kesehatan

Membantu dalam diagnosis, prediksi penyebaran penyakit, dan pengelolaan data pasien.

Konteks Contoh Penggunaan

Pendidikan Menyusun jadwal otomatis, menyelesaikan soal matematika

Ilmu Pengetahuan Memprediksi cuaca, membuat simulasi eksperimen

Teknologi dan Rekayasa Membuat robot, aplikasi, atau sistem kontrol otomatis

Mengatur rute tercepat dengan aplikasi, mengelola pengeluaran rumah


Sosial dan Kehidupan
tangga

Ekonomi dan Bisnis Rekomendasi produk, analisis tren penjualan

Kesehatan Sistem pendeteksi penyakit, manajemen data pasien

3. Megidentifikasi teknik algoritma pengurutan, Mengevaluasi penerapan dari jenis-jenis


struktur data, Mengevaluasi operasi dalam struktur data

1. Mengidentifikasi Teknik Algoritma Pengurutan (Sorting)

Algoritma pengurutan digunakan untuk menyusun data secara berurutan, misalnya dari kecil ke
besar (ascending) atau sebaliknya. Berikut beberapa teknik algoritma pengurutan yang umum:

Kompleksitas Waktu (rata-


Nama Algoritma Deskripsi Singkat
rata)

Menukar elemen bersebelahan jika tidak


Bubble Sort O(n²)
berurutan

Memilih elemen terkecil dan menukarnya ke


Selection Sort O(n²)
depan

Insertion Sort Menyisipkan elemen ke posisi yang tepat O(n²)

Membagi lalu menggabungkan dengan urutan


Merge Sort O(n log n)
benar

Quick Sort Memilih pivot, membagi dan mengurutkan O(n log n) (rata-rata)

Heap Sort Menggunakan struktur heap untuk pengurutan O(n log n)

Catatan: Merge Sort dan Quick Sort lebih efisien untuk data besar dibanding Bubble, Selection, atau
Insertion Sort.
2. Mengevaluasi Penerapan dari Jenis-Jenis Struktur Data

Struktur data digunakan untuk menyimpan dan mengelola data dalam program secara efisien.
Evaluasi dilakukan berdasarkan kebutuhan program dan jenis data yang ditangani.

Struktur Deskripsi & Penerapan


Kelebihan Kekurangan
Data Ideal

Menyimpan data dengan Ukuran tetap, penyisipan


Array Akses cepat via indeks
indeks tetap (statis) sulit

Data tersambung lewat Ukuran fleksibel, mudah Akses data lambat,


Linked List
node menambah/menghapus penggunaan memori lebih

LIFO (Last In First Out), Operasi cepat pada satu ujung Hanya bisa akses elemen
Stack
contoh: Undo, Rekursi (atas) terakhir

FIFO (First In First Out), Teratur, cocok untuk manajemen Akses hanya di ujung
Queue
contoh: antrean proses proses depan/belakang

Tree Hirarki data, contoh: Cepat untuk pencarian Kompleks, perlu


(Pohon) struktur folder terstruktur (BST) pengelolaan khusus

Graph Relasi antar titik, contoh:


Representasi hubungan kompleks Proses traversal bisa rumit
(Graf) jaringan sosial

Hash Pasangan kunci-nilai (key- Akses sangat cepat jika tanpa Masalah collision, perlu
Table value) konflik fungsi hash baik

3. Mengevaluasi Operasi dalam Struktur Data

Setiap struktur data memiliki operasi dasar. Evaluasi dilakukan dengan melihat seberapa efisien
operasi dilakukan dalam konteks penggunaan tertentu.

Operasi Dasar Penjelasan Efisiensi Tergantung Struktur Data

Insert Menambahkan elemen Cepat di linked list, lambat di array statis

Delete Menghapus elemen Stack/Queue cepat, array/linked list bisa lambat

Search Mencari elemen tertentu Hash table sangat cepat, tree terstruktur efisien

Traversal Menjelajahi seluruh elemen Penting pada tree dan graph (DFS, BFS)

Update Mengubah nilai elemen Mudah di array/hash table, relatif sulit di tree/graf

Sort Mengurutkan elemen Efektif dengan merge sort atau quick sort di array

o Hash Table → jika banyak pencarian.


o Stack/Queue → jika urutan operasi penting.
o Tree → jika butuh struktur hirarki atau pencarian teratur.
4. Mengidentifikasi kelebihan pemrograman python

Kelebihan Manfaat Praktis

Sintaks sederhana Mudah dipelajari dan dibaca

Multi-paradigma Fleksibel sesuai gaya coding

Komunitas besar Banyak bantuan & dokumentasi

Banyak library/framework Mendukung berbagai bidang

Portabilitas tinggi Bisa jalan di berbagai OS

Cepat untuk prototipe Hemat waktu pengembangan

Bisa integrasi dengan bahasa lain Memperluas fleksibilitas

Serbaguna Bisa untuk web, AI, data science, IoT, dsb

5. Mengidentifikasi istilah- istilah dalam penrograman python

Istilah Penjelasan Singkat

Tempat menyimpan data dalam memori. Tidak perlu


Variabel
deklarasi tipe data secara eksplisit.

Contoh: nama = "Ali"

Jenis data yang bisa digunakan (seperti: int, float,


Tipe Data
str, bool, list)

Contoh: x = 10 → int, y = "halo" →


str

Blok kode yang bisa dipanggil berulang untuk


Fungsi (function)
menjalankan tugas tertentu.

Contoh: def sapa():


print("Halo!")

Percabangan Struktur logika untuk pengambilan keputusan.

Contoh: if, elif, else

Perulangan Mengulang blok kode, seperti for dan while.

Contoh: for i in range(5):

List Kumpulan data berurutan, bisa diubah (mutable).


Istilah Penjelasan Singkat

Contoh: angka = [1, 2, 3]

Kumpulan data berurutan, tetapi tidak bisa diubah


Tuple
(immutable).

Contoh: data = (1, 2, 3)

Dictionary Kumpulan pasangan kunci-nilai (key:value).

Contoh: siswa = {"nama": "Rina",


"umur": 16}

String (str) Tipe data untuk teks, diapit tanda kutip.

Contoh: "Python"

Baris penjelasan yang tidak dieksekusi. Diawali dengan


Komentar
#.

Contoh: # Ini adalah komentar

Import Mengambil atau menggunakan modul eksternal.

Contoh: import math

Kesalahan (error) saat program berjalan, bisa


Exception
ditangani dengan try-except.

Contoh: try: x=1/0 except:


print("Error")

Spasi/tab untuk menunjukkan blok kode (wajib dalam


Indentasi
Python).

Contoh: Setelah if, isi harus diindentasi

File Python berisi fungsi/variabel yang bisa digunakan


Module
di file lain.

Contoh: import random → menggunakan


fungsi dari modul random

Konsep pemrograman berorientasi objek (OOP).


Class dan Object
Class adalah cetakan, object adalah hasilnya.

Contoh: class Mobil: dan mobil1 =


Mobil()

6. Mengevaluasi penulisan kode program dalam pemrograman python

1. Periksa Kebenaran Logika Program


2. Periksa Struktur dan Sintaks Kode

3. Evaluasi Kualitas dan Kebersihan Kode (Clean Code)

7. Mengidentifikasi jenis- jenis operator dalam pemrograman python

Jenis Operator Fungsi Contoh

Operator Aritmatika Operasi matematika dasar +, -, *, /, %, //, **

Contoh: 5 + 3 = 8 4 ** 2 = 16 (pangkat)

Operator Perbandingan | Membandingkan nilai | ==, !=, <, >, <=, >= |
Contoh: 5 > 3 → True | | a == b (apakah sama) |

Operator Logika | Operasi logika Boolean | and, or, not |


Contoh: True and False → False | | not True → False |

Operator Penugasan | Memberi atau memodifikasi nilai | =, +=, -=, *=, /=, %= |
Contoh: x += 1 (x = x + 1) | | a *= 5 |

Operator Bitwise | Operasi pada bit angka biner | &, |, ^, ~, <<, >> |
Contoh: 5 & 3 → 1 | (operasi AND, OR, XOR, NOT, shift) | 8 << 1 (geser kiri) |

Operator Identitas | Membandingkan objek/identitas | is, is not |


Contoh: a is b | Apakah dua variabel menunjuk objek sama | x is not y |

Operator Keanggotaan | Cek keanggotaan dalam koleksi | in, not in |


Contoh: 'a' in 'apel' → True | | 3 not in [1, 2, 3] → False |

8. Mengevaluasi hasil keluaran dari sebuah operasi python

Contoh Evaluasi
# Operasi aritmatika
hasil = 10 / 4
print(hasil) # Output: 2.5

 Evaluasi: Output bertipe float dan hasil 2.5 sudah benar.

# Operasi logika
x = (5 > 3) and (2 == 2)
print(x) # Output: True

 Evaluasi: Output boolean True sesuai dengan kondisi logika.

9. Mengidentifikasi peranan dari suatu kode program python sederhana

1. Baca Kode Secara Utuh


2. Lihat Tujuan Umum Program

3. Amati Struktur Kode

 Variabel → untuk menyimpan data


 Fungsi → untuk menjalankan tugas tertentu
 Percabangan (if) → untuk pengambilan keputusan
 Perulangan (for, while) → untuk mengulang proses

4. Evaluasi Input dan Output

 Mengambil data dari pengguna (input)


 Menghasilkan tampilan atau hasil (output)

10. Mengidentfikasi peranan yang ada di dalam percabangan python

✅ Struktur Dasar Percabangan di Python


if kondisi:
# kode jika kondisi benar
elif kondisi_lain:
# kode jika kondisi lain benar
else:
# kode jika semua kondisi salah

✅ Peranan Elemen dalam Percabangan


Elemen Peran/Fungsi

if Mengecek kondisi pertama. Jika benar (True), jalankan blok kode di bawahnya.

elif (Opsional) Mengecek kondisi lain jika if salah. Bisa lebih dari satu.

else (Opsional) Menangani semua kondisi selain if dan elif.

✅ Contoh & Identifikasi Peran


nilai = 80

if nilai >= 90:


print("Sangat Baik")
elif nilai >= 70:
print("Baik")
else:
print("Perlu Perbaikan")

🔍 Identifikasi Peranan:

 if nilai >= 90: Mengecek apakah nilai sangat baik.


 elif nilai >= 70: Cek apakah cukup baik (jika if salah).
 else: Jika nilai < 70 → cetak “Perlu Perbaikan”.

11. Mengevaluasi penulisan kode program untuk kondisi dalam percabangan python

1. Periksa Sintaks Dasar


 Gunakan kata kunci if, elif, dan else dengan benar.
 Jangan lupa titik dua (:) setelah setiap kondisi.
 Pastikan indentasi (spasi) rapi dan konsisten.

2. Periksa Kebenaran Kondisi

 Kondisi harus menghasilkan nilai boolean (True atau False).


 Gunakan operator perbandingan atau logika dengan tepat (==, !=, <, >, and, or).

🧪 Contoh Evaluasi

❌ Contoh Salah:

nilai = 85
if nilai >= 60:
print("Cukup")
elif nilai >= 80:
print("Baik")
else:
print("Kurang")

❗ Kesalahan:

 elif nilai >= 80 tidak akan pernah dijalankan, karena kondisi nilai >= 60
sudah terpenuhi lebih dulu.

✅ Perbaikan:

nilai = 85
if nilai >= 80:
print("Baik")
elif nilai >= 60:
print("Cukup")
else:
print("Kurang")

✔ Evaluasi:

 Urutan logika sudah benar (dari nilai tertinggi ke terendah).


 Tidak ada kondisi yang tumpang tindih.
 Penulisan rapi dan mudah dibaca.

12. Mengidentifikasi peranan diagram alir (flowchart) dalam pemrograman

1. Merancang Alur Logika Program

 Flowchart membantu memvisualisasikan langkah-langkah logika dari awal sampai akhir


sebelum menulis kode.
 Mempermudah pemahaman urutan proses, percabangan, dan perulangan.

2. Membantu Perencanaan Program

 Sebagai alat bantu perancangan sebelum menulis kode Python (atau bahasa lainnya).
 Mengurangi kesalahan logika karena proses sudah ditata visual.

3. Meningkatkan Pemahaman dan Komunikasi

 Memudahkan programmer, tim, atau siswa memahami alur program secara visual.
 Cocok digunakan dalam tim atau saat menjelaskan program kepada orang lain.

4. Sebagai Dokumentasi

 Flowchart bisa digunakan sebagai dokumentasi program untuk memudahkan debugging


atau pengembangan lebih lanjut.

Simbol Makna

⬤ Terminator Awal/Akhir program

▭ Proses Langkah/proses yang dilakukan

◆ Keputusan (if) Percabangan logika

🔽 Input/Output Masukan/keluaran data

→ Panah Arah alur proses

13. Megidentifikasi simbol-simbol dalam diagram alir (flowchart)

Simbol Nama Simbol Fungsi

⬤ atau 🔺 Terminator Menunjukkan awal atau akhir suatu program/proses.


Menunjukkan langkah/proses yang dilakukan, seperti
Proses
perhitungan.

Menunjukkan masukan (input) dari pengguna atau keluaran


🔽 Input/Output
(output).

Keputusan
◆ Menunjukkan percabangan atau kondisi logika (misal: if-else).
(Decision)

→ Panah (Flowline) Menunjukkan arah aliran dari proses satu ke proses berikutnya.

✅ Penjelasan Simbol Utama:

1. Terminator (Start/End)
o Simbol: Oval / Elips
o Fungsi: Awal atau akhir dari flowchart
o Contoh: Start, End
2. Proses (Process)
o Simbol: Persegi panjang
o Fungsi: Melambangkan aksi atau langkah yang dilakukan
o Contoh: Hitung total, Simpan data
3. Input/Output (Data)
o Simbol: Jajar genjang
o Fungsi: Menunjukkan input dari pengguna atau output ke layar
o Contoh: Masukkan angka, Tampilkan hasil
4. Keputusan (Decision)
o Simbol: Belah ketupat / wajik
o Fungsi: Menentukan kondisi benar atau salah (percabangan)
o Contoh: Apakah nilai > 75?
5. Panah (Flowline)
o Simbol: Garis berpanah →
o Fungsi: Menunjukkan urutan atau alur antar proses

✅ Contoh Flowchart Sederhana

Program: Menentukan Bilangan Genap atau Ganjil

 ⬤ Start
 🔽 Masukkan angka

o Jika Ya → ▭ Tampilkan "Genap"


 ◆ Apakah angka % 2 == 0?

o Jika Tidak → ▭ Tampilkan "Ganjil"


 ⬤ End

14. Mengevaluasi kode program yang sesuai pada diagram alir (flowchart)

1. Pahami Flowchart Terlebih Dahulu

 Identifikasi urutan proses, keputusan (percabangan), dan input/output yang ditunjukkan


oleh simbol-simbol dalam diagram alir.
 Perhatikan simbol:

o ▭ Proses
o 🔽 Input/Output

o ◆ Keputusan
o ⬤ Start/End

2. Cocokkan Urutan Kode

 Pastikan urutan kode Python mengikuti alur dari flowchart, dari start ke end.
 Setiap proses di flowchart harus ada dalam bentuk baris kode.

3. Cocokkan Kondisi Percabangan

 Evaluasi apakah percabangan if, elif, else dalam kode sesuai dengan kondisi pada
flowchart.
 Cek apakah setiap cabang (ya/tidak) ditangani dengan benar.

4. Periksa Input/Output

 Pastikan input() dan print() dalam kode mewakili simbol I/O di diagram alir.

5. Uji dengan Nilai Contoh


 Coba jalankan kode dengan input yang sesuai untuk memastikan output sama seperti alur
flowchart.

15. Menganalisis hasil keluaran dari diagram alir (flowchart)

1. Baca dan Pahami Setiap Simbol

 ⬤ Start / End → Awal dan akhir alur

▭ Proses → Perhitungan/logika yang dilakukan


 🔽 Input → Menentukan nilai awal dari pengguna

 ◆ Keputusan → Percabangan (if-else)
 → Panah → Arah alur

2. Tentukan Nilai Input

 Gunakan nilai contoh (misal: angka, nama, dll.) yang dimasukkan di simbol input.

3. Ikuti Alur Flowchart

 Telusuri panah satu per satu.


 Pada setiap proses, lakukan perhitungan jika ada.
 Pada simbol keputusan (◆), pilih jalur Ya atau Tidak sesuai kondisi.

4. Lihat Output di Simbol I/O

 Catat apa yang akan ditampilkan atau dicetak sebagai hasil akhir.
 Ini adalah keluaran (output) yang ingin dianalisis.

Anda mungkin juga menyukai