Buku Algoritma Python
Buku Algoritma Python
1
e. Menyelesaikan tugas sesuai prioritas.
4. Algoritma Menghitung Kembalian saat Berbelanja:
Saat berbelanja dan membayar tunai, kasir menghitung total harga barang,
menghitung jumlah uang yang diberikan pelanggan, dan kemudian menghitung kembalian
yang harus diberikan. Itu adalah serangkaian instruksi yang berurutan.
5. Algoritma Rute Tercepat (Navigasi):
Aplikasi peta dan navigasi seperti Google Maps menggunakan algoritma untuk
mencari rute tercepat dari satu tempat ke tempat lain. Algoritma ini mempertimbangkan faktor
seperti lalu lintas, jarak, dan kondisi jalan.
6. Algoritma Mencuci Pakaian:
Saat mencuci pakaian menggunakan mesin cuci, ada algoritma yang diikuti: memilih
mode pencucian, menambahkan deterjen, mengatur suhu air, dan menentukan waktu
pencucian.
7. Algoritma Penyusunan Tugas dalam Ujian:
Saat menghadapi ujian, kita mungkin menyusun algoritma untuk menjawab soal.
Misalnya, mulai dari soal yang mudah, lalu beralih ke soal yang lebih sulit.
8. Algoritma Menyikat Gigi:
Ini termasuk urutan tindakan yang harus diikuti: ambil sikat gigi, tambahkan pasta
gigi, sikat seluruh permukaan gigi, kumur-kumur, dan bersihkan sikat.
Semua contoh di atas menunjukkan bahwa algoritma bukan hanya konsep di dunia
komputer, tapi juga diterapkan di berbagai aspek kehidupan sehari-hari.
1.2 Pemrograman
Pemrograman adalah proses merancang, menulis, menguji, dan memelihara kode atau
instruksi yang dijalankan oleh komputer untuk menyelesaikan suatu tugas atau masalah. Kode
ini ditulis dalam bahasa pemrograman tertentu, seperti Python, Java, C++, dan lainnya, yang
dapat dimengerti dan diproses oleh komputer.
Tujuan pemrograman adalah untuk membuat perangkat lunak (software) atau aplikasi
yang dapat digunakan untuk berbagai keperluan, seperti pengolahan data, pengendalian
perangkat keras, atau menyediakan layanan di internet.
Berikut adalah komponen-komponen kunci dalam pemrograman:
a. Algoritma: Langkah-langkah logis yang harus diikuti untuk menyelesaikan masalah.
b. Bahasa Pemrograman: Bahasa yang digunakan untuk menulis kode, seperti Python,
Java, C++, dsb.
2
c. Sintaks: Aturan yang menentukan bagaimana instruksi harus ditulis agar dapat
dipahami oleh komputer.
d. Debugger: Alat untuk mengidentifikasi dan memperbaiki kesalahan dalam kode (bug).
e. Compiler/Interpreter: Alat untuk menerjemahkan kode yang ditulis oleh programmer
ke dalam bahasa mesin yang bisa dijalankan oleh komputer.
Secara singkat, pemrograman memungkinkan kita memberikan instruksi kepada
komputer untuk melakukan tugas tertentu sesuai dengan logika yang kita tentukan.
1.3 Software Editor
Software editor adalah perangkat lunak yang digunakan untuk menulis, mengedit, dan
mengelola teks atau kode, terutama dalam konteks pemrograman. Software ini membantu
pengembang (developer) dalam menulis kode dengan efisien serta mempermudah proses
pengujian dan debugging.
Berikut beberapa jenis software editor yang populer:
Text Editor (Editor Teks)
a. Notepad++: Editor teks ringan dengan fitur untuk menulis berbagai bahasa
pemrograman.
b. Sublime Text: Editor yang mendukung berbagai bahasa pemrograman, ringan, dan
memiliki banyak fitur seperti multi-caret, package manager, dan custom themes.
c. Atom: Editor open-source yang dikembangkan oleh GitHub, terkenal karena
kustomisasi dan integrasinya dengan Git.
Integrated Development Environment (IDE)
a. Visual Studio Code (VS Code): Editor kode sumber yang ringan dan populer.
Mendukung banyak bahasa pemrograman dengan fitur seperti debugging, pengelolaan
proyek, terminal bawaan, dan integrasi dengan sistem kontrol versi Git.
b. PyCharm: IDE khusus untuk bahasa pemrograman Python, dengan fitur canggih seperti
debugging dan integrasi dengan berbagai framework.
c. Eclipse: IDE yang mendukung banyak bahasa pemrograman, sering digunakan untuk
Java, dengan banyak plugin dan kustomisasi.
d. IntelliJ IDEA: IDE yang terkenal untuk pengembangan Java dan Kotlin, mendukung
alat-alat otomatisasi dan refactoring yang canggih.
Markdown Editor
a. Typora: Editor Markdown yang menyederhanakan proses menulis teks dengan format
Markdown dan langsung melihat hasilnya dalam tampilan yang bersih.
3
b. MarkdownPad: Editor khusus untuk Markdown yang menawarkan tampilan langsung
dari teks yang sedang dikodekan.
Software editor ini berfungsi untuk memudahkan pengembang dalam menulis dan
mengelola kode serta mempermudah integrasi dengan alat-alat lain, seperti sistem kontrol versi
dan debugger.
Visual Studio Code (VS Code) adalah editor kode sumber gratis yang dikembangkan
oleh Microsoft. Editor ini sangat populer di kalangan pengembang karena ringan, fleksibel, dan
mendukung banyak bahasa pemrograman. VS Code dirancang untuk pengembangan yang
cepat dan produktif dengan fitur yang kaya dan dapat diperluas melalui ekstensi.
Fitur Utama VS Code:
a. Cross-Platform: VS Code dapat digunakan di berbagai sistem operasi seperti Windows,
macOS, dan Linux.
b. Sintaks Berwarna dan Pelengkapan Otomatis: Mendukung banyak bahasa
pemrograman, termasuk JavaScript, Python, C++, Java, dan lainnya, dengan fitur
sintaks berwarna dan pelengkapan otomatis (IntelliSense).
c. Terminal Terintegrasi: VS Code memiliki terminal bawaan, sehingga memudahkan
pengembang menjalankan perintah tanpa perlu beralih antar aplikasi.
d. Debugging: Editor ini dilengkapi dengan alat debugging yang kuat, memungkinkan
pengembang untuk menjalankan kode, menambahkan breakpoint, dan memantau
variabel secara langsung dalam lingkungan pengembangan.
e. Pengelolaan Proyek dan Folder: VS Code memungkinkan Anda membuka folder atau
proyek secara langsung, memudahkan navigasi di antara file dan direktori.
f. Ekstensi: Salah satu kekuatan utama VS Code adalah kemampuan untuk menambah
fungsionalitas melalui ribuan ekstensi yang tersedia di marketplace-nya. Ekstensi ini
mencakup segala hal mulai dari dukungan untuk bahasa pemrograman baru, integrasi
dengan sistem kontrol versi (Git), hingga alat-alat produktivitas seperti formatter atau
linting.
4
g. Git Terintegrasi: VS Code memiliki integrasi Git yang kuat, memungkinkan pengguna
untuk mengelola repositori Git langsung dari editor. Anda bisa melakukan commit,
push, pull, dan lain-lain tanpa meninggalkan editor.
h. Live Share: Fitur ini memungkinkan kolaborasi langsung dengan pengembang lain
secara real-time, dengan berbagi sesi coding, debugging, dan server secara langsung.
i. Kustomisasi: Pengguna dapat menyesuaikan VS Code sesuai kebutuhan mereka, seperti
mengubah tema, menambahkan shortcut, atau bahkan menulis skrip untuk memperluas
fungsionalitasnya.
Kelebihan VS Code:
a. Ringan dan Cepat: Meskipun memiliki fitur lengkap, VS Code tetap ringan dan cepat
dibandingkan dengan IDE lain.
b. Gratis dan Open-Source: VS Code dapat diunduh dan digunakan secara gratis, serta
komunitas terbuka turut berkontribusi mengembangkan ekosistemnya.
c. Ekosistem yang Kuat: Terdapat banyak ekstensi yang memperluas fungsionalitas VS
Code, dari manajemen proyek hingga dukungan linting dan formatting kode.
Dengan fitur-fitur ini, VS Code menjadi pilihan utama banyak pengembang untuk
berbagai jenis proyek pemrograman, baik skala kecil maupun besar.
1.4 Memulai VS Code
Langkah langkah dalam memulai pemrograman dengan VS Code, dapat di ikuti sebagai
berikut :
a. download python version untuk windows disini https://www.python.org/downloads/
5
b. download visual studio disini https://code.visualstudio.com/Download
c. Buka visual studio dan pilih extension, klik di search extension "python" install
debugger bawaan microsoft.
d. Buat perintah di new file visual studio dengan ucapat "hello word" simpan dengan nama
filenya tambahkan extension .py pastikan visual studio dapat menjalankan python.
6
1.5 Extension Pemrograman
Extension Python umumnya merujuk pada berbagai jenis ekstensi atau modul tambahan
yang bisa digunakan untuk memperluas fungsionalitas Python. Berikut adalah beberapa jenis
ekstensi yang mungkin Anda maksud:
a. Library atau Paket Eksternal: Modul atau pustaka pihak ketiga yang bisa diinstal
menggunakan `pip`, seperti `numpy` untuk perhitungan numerik, `pandas` untuk
analisis data, atau `requests` untuk HTTP requests.
b. C Extensions: Modul yang ditulis dalam bahasa C yang dapat diimpor ke dalam Python
untuk meningkatkan performa, seperti `numpy` dan `pandas`, yang menggunakan
ekstensi C untuk operasi yang lebih cepat.
c. Python Modules: File `.py` atau direktori dengan file `__init__.py` yang
mengimplementasikan fungsionalitas tertentu yang bisa diimpor dan digunakan dalam
program Python.
d. Jupyter Notebook Extensions: Ekstensi untuk Jupyter Notebook yang menambah fitur,
seperti `jupyter_contrib_nbextensions` untuk berbagai fitur tambahan seperti tabel
konten, autopep8, dan lain-lain.
e. Python Plugins: Plugin untuk berbagai aplikasi atau framework Python yang menambah
fitur atau mengubah cara kerja aplikasi tersebut.
7
PERTEMUAN 2
STATMENT DAN VARIABEL
2.1 Statment
Dalam konteks pemrograman, "statement" atau "pernyataan" adalah sebuah baris kode
yang memberikan instruksi kepada komputer untuk melakukan suatu aksi. Pernyataan ini
merupakan unit terkecil dari kode yang bisa dieksekusi. Ada berbagai jenis pernyataan,
termasuk:
8
2. Statment menampilkan pesan
a. Nama variabel: Label yang digunakan untuk mereferensikan nilai. Misalnya, dalam
pernyataan `x = 5`, `x` adalah nama variabel.
b. Tipe data: Variabel dapat menyimpan berbagai tipe data, seperti angka (integer, float),
teks (string), boolean, objek, dan lain-lain.
c. Nilai: Isi atau data yang disimpan dalam variabel, misalnya angka, string, atau hasil dari
suatu operasi.
9
Contoh:
python
x = 10 # Variabel x menyimpan nilai integer 10
name = "Ali" # Variabel name menyimpan string "Ali"
is_true = True # Variabel is_true menyimpan boolean True
Di sini:
a. `x` adalah variabel yang menyimpan angka 10.
b. `name` adalah variabel yang menyimpan string "Ali".
c. `is_true` adalah variabel yang menyimpan nilai boolean `True`.
Variabel memungkinkan kita untuk mengakses dan memanipulasi data dengan lebih
mudah di dalam program.
2.3.1 Macam macam variabel dan type data
Tipe data mengacu pada jenis nilai yang dapat disimpan dalam variabel. Berikut adalah
beberapa tipe data umum:
a. Tipe Data Primitif:
1) Integer (int): Bilangan bulat.
▪ Contoh: x = 10
2) Float: Bilangan pecahan (desimal).
▪ Contoh: y = 3.14
3) String (str): Sekumpulan karakter atau teks.
▪ Contoh: name = "Ali"
4) Boolean (bool): Menyimpan nilai benar atau salah (True atau False).
▪ Contoh: is_active = True
b. Tipe Data Koleksi:
1) List: Sekumpulan nilai yang terurut dan dapat diubah.
▪ Contoh: my_list = [1, 2, 3, 4]
2) Tuple: Sekumpulan nilai yang terurut dan tidak dapat diubah.
▪ Contoh: my_tuple = (1, 2, 3)
3) Set: Sekumpulan nilai unik dan tidak terurut.
▪ Contoh: my_set = {1, 2, 3, 3} (Hanya menyimpan nilai unik)
10
4) Dictionary: Kumpulan pasangan kunci-nilai.
▪ Contoh: my_dict = {"name": "Ali", "age": 25}
c. Tipe Data Lainnya:
1) None: Menunjukkan ketiadaan nilai.
▪ Contoh: x = None
2) Complex: Menyimpan bilangan kompleks.
▪ Contoh: z = 3 + 4j
2.3.2 Struktur Type Data
Struktur tipe data mengacu pada cara data diorganisasi dan disimpan di memori, yang
memungkinkan akses dan manipulasi yang efisien. Di dalam pemrograman, tipe data
dikelompokkan ke dalam dua kategori utama:
Tipe Data Primitif (Sederhana)
Tipe data primitif adalah tipe data dasar yang disediakan langsung oleh bahasa
pemrograman. Tipe data ini hanya menyimpan satu nilai pada satu waktu.
Contoh tipe data primitif:
a. Integer (int): Menyimpan bilangan bulat (contoh: 1, -5, 100).
b. Float: Menyimpan bilangan pecahan atau desimal (contoh: 3.14, -2.0).
c. String (str): Menyimpan teks atau urutan karakter (contoh: "Hello", 'A').
d. Boolean (bool): Menyimpan nilai benar atau salah (True atau False).
e. Complex: Menyimpan bilangan kompleks (contoh: 3 + 4j).
Contoh :
11
c. Contoh:
12
Contoh Penamaan Variabel:
Multiple Assignment
Python juga mendukung penugasan beberapa variabel sekaligus dalam satu baris.
Anda juga bisa menetapkan nilai yang sama ke beberapa variabel secara bersamaan:
13
Menghapus Variabel
Anda bisa menggunakan pernyataan `del` untuk menghapus variabel dari memori.
14
f. tuple: Kumpulan elemen yang tidak dapat diubah, seperti `(1, 2, 3)`.
g. dict: Kumpulan pasangan kunci-nilai, seperti `{"name": "Ali", "age": 25}`.
15
Output:
Dengan fleksibilitas dan kemampuan Python dalam menangani variabel dan tipe data,
proses pengembangan program menjadi lebih efisien dan mudah diikuti.
16