belajar pemrograman dari nol hal 1

15.31

 

Belajar pemrograman dari nol hal 1

Ada banyak bahasa pemrograman yang bisa dipelajari, tergantung pada tujuan dan minat Anda. Beberapa bahasa pemrograman populer antara lain:

  1. Python: bahasa pemrograman yang mudah dipelajari dan sering digunakan untuk kecerdasan buatan, analisis data, dan pengembangan web.

  2. Java: bahasa pemrograman yang populer dan banyak digunakan untuk pengembangan aplikasi, game, dan web.

  3. JavaScript: bahasa pemrograman yang banyak digunakan untuk pengembangan web dan pengembangan aplikasi seluler.

  4. C#: bahasa pemrograman yang terkait dengan platform Microsoft .NET dan banyak digunakan untuk pengembangan aplikasi desktop dan game.

  5. C++: bahasa pemrograman yang biasanya digunakan untuk pengembangan aplikasi desktop, game, dan sistem operasi.


di mulai dari yang paling atas 

Bahasa Phyton

Baiklah, mari kita mulai dengan dasar-dasar Python. Python adalah bahasa pemrograman tingkat tinggi yang mudah dipelajari dan digunakan untuk berbagai macam aplikasi, termasuk pengembangan web, pemrosesan data, dan kecerdasan buatan.

Salah satu hal pertama yang perlu Anda ketahui tentang Python adalah dasarnya. Syntax adalah aturan atau struktur grammar yang harus diikuti ketika menulis kode Python.

Contoh:

print("Hello, dunia!")

Baris kode di atas akan mencetak pesan "Halo, dunia!" di layar. Fungsi print()digunakan untuk mencetak pesan atau nilai variabel ke layar.

untuk mempelajari bahasa pemrograman Python, berikut adalah beberapa tahap yang dapat Anda ikuti:

  1. Pelajari dasar-dasar Python: Belajar dengan mempelajari dasar-dasar Python seperti tipe data, variabel, operasi, struktur kendali, dan fungsi. 

  2. Pelajari modul Python: Setelah menguasai dasar-dasar, pelajari modul Python seperti NumPy, Pandas, atau Matplotlib yang berfokus pada analisis data dan ilmu data.

  3. Praktikkan: Praktikkan apa yang telah Anda pelajari dengan membuat program Python sederhana seperti program kalkulator atau program untuk mengonversi suhu dari Celsius ke Fahrenheit. Anda juga dapat mencari tantangan pemrograman online untuk memperbaiki keterampilan pemrograman Anda.

  4. Pelajari lebih lanjut: Setelah memahami dasar-dasar Python, pelajari topik yang lebih lanjut seperti kecerdasan buatan, pembelajaran mesin, atau pengembangan web dengan menggunakan framework seperti Django.

  5. Bergabunglah dengan komunitas Python: berkembang dengan komunitas Python atau forum online seperti Reddit atau Quora untuk bertukar pengalaman dan mendapatkan bantuan dari para ahli di bidang tersebut.


Dasar phyton 
1. Tipe data 

Baiklah, selanjutnya kita akan membahas mengenai tipe data dalam Python. Tipe data adalah jenis nilai atau informasi yang dapat disimpan di dalam variabel. Ada beberapa tipe data penting dalam Python, di antaranya:

  • Bilangan bulat
  • Mengambang
  • Rangkaian
  • Boolean

Contoh:

x = 5
y = 3.14
nama = "John"
status = True

Pada contoh di atas, variabel xmemiliki nilai bilangan bulat (integer) 5, variabel ymemiliki nilai desimal (float) 3.14, variabel namamemiliki nilai string "John", dan variabel statusmemiliki nilai boolean True.

namun sebenarnya Dalam bahasa pemrograman Python, terdapat beberapa tipe data dasar yang sering digunakan, termasuk yang sudah di jelaskan tadi di antaranya:

  1. Tipe data numerik: Tipe data numerik mencakup bilangan bulat (integer) dan bilangan desimal (float). Contohnya, 5 adalah bilangan bulat, sedangkan 3.14 adalah bilangan desimal.

  2. Tipe data string: Tipe data string adalah kumpulan karakter atau teks. Senar ditulis di antara tanda kutip tunggal atau ganda. Contohnya, 'Halo, Dunia!' atau "Ini adalah string".

  3. Tipe data boolean: Tipe data boolean hanya memiliki dua nilai, yaitu True atau False. Tipe data boolean digunakan dalam logika dan pengambilan keputusan. Contohnya, 5 > 3 akan mengembalikan nilai True.

  4. Daftar data tipe: Daftar data tipe adalah kumpulan nilai atau objek yang dipisahkan oleh koma dan diapit dengan tanda kurung siku. Contohnya, [1, 2, 3] adalah sebuah daftar.

  5. Tipe data tuple: Tipe data tuple mirip dengan daftar data tipe, namun didefinisikan dengan menggunakan tanda kurung biasa. Perbedaannya dengan list adalah tuple bersifat immutable, artinya tidak dapat diubah setelah didefinisikan.

  6. Kamus data tipe: Kamus data tipe adalah kumpulan nilai kunci pasangan yang dipisahkan oleh koma dan diapit dengan tanda kurung kurawal. Contohnya, {'nama': 'John', 'usia': 25} adalah kamus.

Itulah beberapa tipe data dasar dalam bahasa pemrograman Python. Setiap tipe data ini memiliki metode dan fungsi yang tersedia untuk memanipulasi data.


2. variabel operasi ( operasi matematika dalam bahasa phyton )


Dalam bahasa pemrograman Python, variabel digunakan untuk menyimpan nilai atau data yang akan digunakan dalam program. Variabel dideklarasikan dengan menetapkan nama variabel dan nilai yang akan disimpan. Contohnya:

x = 5
nama = "John"

Dalam contoh tersebut, xadalah variabel yang menyimpan nilai 5, dan namaadalah variabel yang menyimpan string "John".

Selain variabel, bahasa pemrograman Python juga memiliki beberapa operator yang digunakan untuk melakukan operasi matematika atau logika. Berikut adalah beberapa contoh operator matematika yang dapat digunakan dalam Python:

+ (tambah): Menambahkan dua nilai atau variabel.
- (kurang): Mengurangkan dua nilai atau variabel.
* (kali): Mengalikan dua nilai atau variabel.
/ (bagi): Membagi dua nilai atau variabel.
% (sisa bagi): Mengembalikan sisa pembagian dua nilai atau variabel.
** (pangkat): Menghitung pangkat dua nilai atau variabel.
// (pembagian bulat): Mengembalikan hasil pembagian bulat dua nilai atau variabel.

Contoh penggunaan operator matematika:

  • Penjumlahan:
a = 5
b = 10
c = a + b
print(c) # Output: 15
  • Pengurangan:
a = 20
b = 5
c = a - b
print(c) # Output: 15
  • Perkalian:
a = 2
b = 10
c = a * b
print(c) # Output: 20
  • Bagian:
a = 10
b = 2
c = a / b
print(c) # Output: 5.0
  • Modulus:
a = 17
b = 5
c = a % b
print(c) # Output: 2
    penjelasan modulus %mengembalikan sisa hasil bagi. Ketika 17 dibagi dengan 5, hasilnya adalah 3 dengan sisa 2. Sehingga ketika dilakukan operasi 17 modulus 5, hasilnya adalah 2 (dari sisa hasil bagi 17 dibagi 5).
Secara matematis, dapat ditulis sebagai berikut:17 = 5 * 3 + 2Jadi, hasil modulus dari 17 dibagi 5 adalah 2

  • pangkat
a = 2
b = 3
c = a ** b
print(c) # Output: 8

Pada contoh di atas, operator **digunakan untuk menghitung pangkat antara variabel adan bDalam hal ini, 2 dipangkatkan dengan 3 menghasilkan 8. Operator **juga dapat digunakan untuk menghitung akar pangkat n dari suatu bilangan dengan cara memasukkan bilangan tersebut sebagai angka pertama dan akar pangkatnya sebagai angka kedua.

Contohnya, untuk menghitung akar pangkat 3 dari bilangan 27 kita dapat menggunakan kode berikut:

a = 27
b = 1/3
c = a ** b
print(c) # Output: 3.0

  • Pembagian bulat
a = 10
b = 3
c = a // b
print(c) # Output: 3

Pada contoh di atas, operator //digunakan untuk melakukan pembagian bulat antara variabel adan bDalam hal ini, 10 dibagi dengan 3 menghasilkan 3 dengan sisa 1. Namun, yang dikembalikan oleh operator //adalah hasil pembagian bulat (tanpa sisa), yaitu 3.

    3. Struktur kendali ( konditional )

Kondisional dalam bahasa pemrograman Python umumnya digunakan untuk mengevaluasi suatu kondisi tertentu dan melakukan tindakan berdasarkan hasil evaluasi tersebut. Ada dua jenis conditional dalam Python, yaitu ifdan if-else.

Pernyataan ifdigunakan untuk mengevaluasi apakah suatu kondisi benar atau salah, kemudian melakukan tindakan jika kondisinya benar. Contohnya seperti ini:

x = 5
if x > 0:
    print("x adalah bilangan positif")

Dalam contoh ini, evaluasi ifapakah xlebih besar dari 0. Jika benar, maka program akan mencetak "x adalah bilangan positif".

Pernyataan if-elsejuga dapat digunakan untuk mengevaluasi kondisi, tetapi jika kondisi tersebut salah, program akan melakukan tindakan lain. Contohnya seperti ini:

x = -2
if x > 0:
    print("x adalah bilangan positif")
else:
    print("x adalah bilangan negatif")

Dalam contoh ini, program mengevaluasi apakah xlebih besar dari 0. Jika benar, program akan mencetak "x adalah bilangan positif". Jika tidak benar, program akan mencetak "x adalah bilangan negatif".

    4. Perulangan

Dasar perulangan atau loop dalam bahasa Python digunakan untuk mengulang sebuah kode blok secara berulang-ulang sampai suatu kondisi terpenuhi. Dalam Python, terdapat dua jenis loop, yaitu for loop dan while loop.

For loop digunakan untuk mengulang sejumlah iterasi yang telah didefinisikan sebelumnya, sedangkan while loop digunakan untuk mengulang instruksi sampai kondisi tertentu terpenuhi. Selama kondisi pada while loop masih bernilai True, maka program akan terus berulang instruksi yang diberikan.

Perulangan berguna untuk mengeksekusi kode yang sama berulang kali dengan cara yang efisien dan mudah dipahami. Contoh penggunaan perulangan adalah saat Anda ingin menampilkan nilai-nilai dari daftar atau melakukan penghitungan matematika dari 1 hingga n.

contoh perulangan while

n = 1

while n <= 5:
    print("Nilai n adalah", n)
    n += 1

Pada contoh di atas, perulangan sementara akan mengeksekusi kode untuk mencetak nilai n selama nilai n kurang dari atau sama dengan 5. Variabel n awalnya diinisialisasi dengan nilai 1, kemudian nilai n peningkatan setiap kali perulangan dilakukan.

Contoh perulangan for:

buah = ["apel", "jeruk", "mangga"]

for b in buah:
    print(b)

Pada contoh di atas, perulangan akan melakukan iterasi pada daftar buah dan mencetak setiap nilai buah.

contoh lainnya

# Program untuk menampilkan bilangan ganjil dari 1 hingga 10

for i in range(1, 11):
    if i % 2 == 1:
        print(i)
Program di atas akan menampilkan semua bilangan ganjil dari 1 hingga 10 dengan menggunakan perintah for dan percabangan if. Dalam perintah untuk, program akan mengulang instruksi pada setiap bilangan antara 1 dan 10. Setiap kali pengulangan dilakukan, program akan memeriksa apakah bilangan tersebut ganjil atau tidak. Jika bilangan itu ganjil, maka program akan mencetak lukisan ke layar.
dalam contoh kode diatas, Kode if i % 2 == 1 digunakan untuk memeriksa apakah sebuah bilangan ganjil atau tidak. Pada kondisi tersebut, saya menggunakan operator modulo %yang digunakan untuk mengembalikan sisa pembagian antara dua bilangan.

Dalam kasus ini, ketika kita membagi sebuah bilangan dengan angka 2, jika hasilnya adalah bilangan genap, maka sisa pembagian akan bernilai 0. Sebaliknya, jika hasilnya bilangan ganjil, maka sisa pembagian akan selalu bernilai 1.

Kode if i % 2 == 1apakah memeriksa sisa pembagian dari bilangan i dengan angka 2 adalah 1, yang artinya bilangan tersebut ganjil. Jika kondisi tersebut terpenuhi, maka program akan mengeksekusi kode yang berada di dalam blok if, yaitu mencetak bilangan ganjil tersebut ke layar.

Dengan cara ini, program dapat menampilkan semua bilangan ganjil dari 1 hingga 10, yang pada kasus ini adalah 1, 3, 5, 7, dan 9.


mungkin di antara kalain ada yang bertanya tanya mengapa perintah range (1,11) hasil yang tercetak hanya angka ganjil 1 - 10 saja , dan angka 11 tidak termasuk?, 


Pada contoh program sederhana yang saya berikan, saya menggunakan range(1, 11)untuk mengulang instruksi pada setiap bilangan dari 1 hingga 10. Rentang angka yang dimasukkan ke fungsi range()dihitung dari 1 hingga 10, karena range()akan menghasilkan angka di antara batas bawah (1) dan batas atas (11) , tetapi tidak mencakup batas atas itu sendiri.


Dalam kasus ini, fungsi range(1, 11)akan menghasilkan angka antara 1 hingga 10, tetapi tidak termasuk angka 11. Oleh karena itu, angka 11 tidak dicetak meskipun itu adalah bilangan ganjil.

Perlu diketahui bahwa batas atas pada fungsi range()selalu dikecualikan dalam kumpulan angka yang dihasilkan. Jadi, jika kita ingin memasukkan angka 11 ke dalam kumpulan angka yang akan diproses dalam program, kita perlu mengganti batas atas pada fungsi range()menjadi 12, seperti ini: range(1, 12).

    5. Fungsi

Baiklah, selanjutnya kita akan membahas tentang fungsi dalam Python. Fungsinya adalah blok kode yang dapat digunakan kembali untuk melakukan tugas tertentu. Fungsi dapat menerima input dan mengembalikan output.

Dalam Python, kita dapat membuat fungsi dengan menggunakan kata kunci defKita juga dapat menentukan parameter untuk fungsi yang akan dibuat.

Contoh:

def tambah(a, b):
    return a + b

x = 3
y = 5
hasil = tambah(x, y)
print(hasil) # Output: 8

Pada contoh di atas, kita membuat fungsi tambah yang menerima dua parameter a dan b, kemudian mengembalikan hasil penjumlahan a dan b. Selanjutnya kita menginisialisasi variabel x dengan nilai 3, variabel y dengan nilai 5, dan memanggil fungsi tambah dengan menggunakan variabel x dan y sebagai argumen

contoh lainnya

def hitung_luas(sisi_persegi):
    return sisi_persegi * sisi_persegi

def hitung_keliling(sisi_persegi):
    return 4 * sisi_persegi
sisi_persegi = float(input("Masukkan panjang sisi persegi: "))

luas_persegi = hitung_luas(sisi_persegi)
keliling_persegi = hitung_keliling(sisi_persegi)

print("Luas persegi adalah:", luas_persegi)
print("Keliling persegi adalah:", keliling_persegi)

Dalam program ini, kita memiliki dua fungsi, yaitu hitung_luas()dan hitung_keliling()Kedua fungsi ini menerima satu parameter, yaitu panjang sisi persegi, dan mengembalikan nilai luas dan keliling persegi sesuai dengan rumus yang digunakan.

Kemudian, kami meminta pengguna untuk memasukkan panjang sisi persegi menggunakan input() dan menyimpannya ke dalam variabel sisi_persegiKita selanjutnya memanggil fungsi hitung_luas()dan hitung_keliling()dengan parameter sisi_persegidan menyimpan hasilnya ke dalam variabel luas_persegidan keliling_persegi.

Terakhir, kita mencetak nilai luas dan keliling persegi dengan menggunakan print().

Saya harap ini membantu Anda memahami fungsi dasar-dasar dalam bahasa Python. 

Penutup Hal 1

Apakah anda sudah mengerti pembahasan diatas bila sudah mari kita perdalam pembahasan di hal 1 ini, dengan cara membuat sebuah program sederhana di notepad lalu seve as dengan format .py setelah itu cobalah jalankan format itu di comand promp (cmd.exe)

sebagai contoh tutorial membuat program sederhana

pertama buka partisi I: misalnya lalu klik kanan di bagian yang kosong lalu pilih  New>>teks dokumen setelah itu klik 2x file yang bernamakan teks dokumen yang baru muncul


jika notepad sudah terbuka tinggal ketikkan kode pemrograman

contoh kode pemrograman :

# Program untuk menghitung rata-rata dari tiga angka

a = float(input("Masukkan angka pertama: "))
b = float(input("Masukkan angka kedua: "))
c = float(input("Masukkan angka ketiga: "))

rata_rata = (a + b + c) / 3

print("Rata-rata dari ketiga angka tersebut adalah:", rata_rata)
setelah selesai mengetik kode klik file >> seve as lalu pada kolom format pilih all file dan untuk nama file nya jangan luma di akhir namanya di beri format .py contoh nama file nya latihan.py setelah itu simpan di direktori I: agar mudah ditemukan lalu klik save

setelah itu masuk ke search pada windows lalu ketik cmd dan ketik 2x pada tulisan comand promp jika sudah muncul ketikan direktori yang akan kita buka karena saya tadi menyimpan file nya di direktori I maka saya mengetikan huruf I: pada bagain akhir lallu tekan enter. ( jangan lupa setelah mengetik huruf I sertakan juga : karena kalau tidak comp tidak akan bisa masuk direktori)

setelah comp masuk direktori I: ketikan nama file python anda tadi karena nama yang saya buat tadi latihan.py maka saya mengetikannya setelah itu tekan enter, jika program yang anda buat berhasil comp akan menampilkan hasilnya jika gagal mungkin anda masih belum memahami teorinya harap pelajari lagi atau mungkin di komputer anda bulum ada drive pythonnya seperti yang saya alami, kalau, semisal begitu anda bisa kunjungi Python.org untuk mendownload drive python terbaru

ada pun contoh kode program lainnya yang sedikit lebih rumit untuk revrensi
# Program kalkulator sederhana menggunakan kondisional if-else

# Fungsi untuk melakukan penjumlahan
def tambah(x, y):
    return x + y

# Fungsi untuk melakukan pengurangan
def kurang(x, y):
    return x - y

# Fungsi untuk melakukan perkalian
def kali(x, y):
    return x * y

# Fungsi untuk melakukan pembagian
def bagi(x, y):
    return x / y

# Menu operasi pada kalkulator
print("Pilih operasi.")
print("1. Penjumlahan")
print("2. Pengurangan")
print("3. Perkalian")
print("4. Pembagian")

# Meminta input dari user
pilihan = input("Masukkan pilihan (1/2/3/4): ")

# Meminta input bilangan pertama dan kedua
bilangan1 = int(input("Masukkan bilangan pertama: "))
bilangan2 = int(input("Masukkan bilangan kedua: "))

# Melakukan operasi berdasarkan pilihan pengguna
if pilihan == '1':
    print(bilangan1, "+", bilangan2, "=", tambah(bilangan1, bilangan2))

elif pilihan == '2':
    print(bilangan1, "-", bilangan2, "=", kurang(bilangan1, bilangan2))

elif pilihan == '3':
    print(bilangan1, "*", bilangan2, "=", kali(bilangan1, bilangan2))

elif pilihan == '4':
    print(bilangan1, "/", bilangan2, "=", bagi(bilangan1, bilangan2))

else:
    print("Input salah. Silakan masukkan pilihan yang benar.")
penjelasan, mengapa saya menggunakan == bukan = pada bagian #melakukan operasi dalam pilihan pengguna itu karena dalam Python, operator ==digunakan untuk membandingkan nilai dari dua objek. Jika nilai dari dua objek sama, maka hasil evaluasinya adalah True, sedangkan jika cirinya berbeda, maka hasil evaluasinya adalah False.

Sementara itu, operator =digunakan untuk memberikan nilai pada suatu variabel. Jadi, jika kita mendefinisikan variabel seperti ini:

x = 5

Artinya kita memberikan nilai 5pada variabel x.

Kembali ke program kalkulator yang tadi, kita menggunakan operator ==karena kita ingin membandingkan nilai dari variabel pilihandengan string '1''2''3', atau '4'Jika nilai dari pilihansama dengan salah satu string tersebut, maka program akan menjalankan operasi yang sesuai dengan pilihan tersebut.

lalu kata elif pilihan masih di bagian yang sama mengapa saya menggunakan kata elif bukan else itu karena elifadalah kependekan dari "else if", yang berarti bahwa kondisi dalam elifakan dievaluasi jika kondisi pada ifsebelumnya tidak terpenuhi. Jadi, ketika kita menggunakan elifdalam program kalkulator ini, artinya kita ingin mengevaluasi kondisi tambahan jika kondisi pada iftidak terpenuhi.

Dalam kasus ini, kami ingin mengevaluasi kondisi jika pilihansama dengan '2'Jika kondisi pada iftidak terpenuhi (karena pilihantidak sama dengan '1'), maka program akan mengevaluasi kondisi pada elifJika syarat elifterpenuhi (karena pilihansama dengan '2'), maka program akan menjalankan kode di dalam blok elif.

Jika kita menggunakan elsedi sini, artinya kode di dalam blok elseakan dijalankan jika kondisi pada iftidak terpenuhi dan kondisi pada eliftidak terpenuhi juga. Dalam kasus ini, kita ingin mengevaluasi suatu kondisi tambahan jika kondisi pada iftidak terpenuhi, namun perlu diketahui bahwa tidak ada kondisi yang harus dievaluasi jika kondisi pada eliftidak terpenuhi.

lalu untuk kata int pada bagian # Meminta input bilangan pertama dan kedua saya menuliskan kata int karena intadalah singkatan dari integer atau bilangan bulat. Dalam bahasa pemrograman Python, intadalah salah satu tipe data numerik yang digunakan untuk merepresentasikan bilangan bulat seperti 1, 2, 3, dan seterusnya.

Pada contoh program kalkulator sederhana yang saya berikan sebelumnya, kita menggunakan intuntuk mengubah masukan pengguna dalam bentuk string (yang diterima oleh fungsi input) menjadi bilangan bulat, sehingga kita dapat melakukan operasi matematika menggunakan bilangan tersebut.

Misalnya, pada bagian ini:

bilangan1 = int(input("Masukkan bilangan pertama: "))

Kita meminta pengguna untuk memasukkan bilangan pertama sebagai input menggunakan fungsi inputNamun, masukan pengguna dalam bentuk string, sehingga kita perlu mengubahnya menjadi bilangan bulat menggunakan fungsi intDengan cara ini, kita dapat menyimpan input pengguna dalam variabel bilangan1sebagai bilangan bulat, sehingga dapat digunakan dalam operasi matematika.

jika kalian bertanya tanya mengapa saya menggunakan kata int dari pada float itu karena Pilihan untuk menggunakan tipe data intatau floatdalam program tergantung pada jenis data yang akan diproses. intdigunakan untuk merepresentasikan bilangan bulat, sedangkan floatdigunakan untuk merepresentasikan pecahan pecahan.

Pada contoh program sederhana yang saya berikan sebelumnya, kita menggunakan intuntuk memproses bilangan bulat. Namun, jika kita ingin memproses pecahan pecahan, kita dapat menggunakan float.

Sebagai contoh, jika kita ingin menambahkan fitur kalkulator yang dapat memproses bilangan desimal, kita dapat menambahkan pilihan untuk memilih jenis bilangan dalam menu operasi, dan menggunakan floatuntuk mengubah masukan pengguna menjadi pecahan pecahan. Berikut adalah contoh program kalkulator sederhana dengan fitur bilangan desimal:

print("Pilih operasi.")
print("1. Penjumlahan")
print("2. Pengurangan")
print("3. Perkalian")
print("4. Pembagian")

# Meminta input dari pengguna
choice = input("Masukkan pilihan (1/2/3/4): ")

num1 = float(input("Masukkan bilangan pertama: "))
num2 = float(input("Masukkan bilangan kedua: "))

if choice == '1':
   print(num1,"+",num2,"=", (num1 + num2))

elif choice == '2':
   print(num1,"-",num2,"=", (num1 - num2))

elif choice == '3':
   print(num1,"*",num2,"=", (num1 * num2))

elif choice == '4':
   print(num1,"/",num2,"=", (num1 / num2))
else:
   print("Input yang Anda masukkan salah.")
Catatan ;
setiap selesai mengetikan terminal kondisional (if , elif dan else) setelah enter di haruskan melakukan space 4x sebelum menulis print jika tidak program tidak akan terbaca
jika membutuhkan soal anda bisa mendownload soal yang saya buat sebagai refrensi disini harap untuk menjalankannya di cmd

You Might Also Like

0 komentar

SUBSCRIBE NEWSLETTER

Get an email of every new post! We'll never share your address.