Sebagai coder pemula kita memang dituntut untuk mempelajari algoritma untuk mengasah logika berfikir kita bagaimana melakukan pemecahan ataupun solusi terhadap suatu masalah. Rasanya memang tidak akan lengkap mempelajari ilmu programming tanpa algoritma. Karena algoritma merupakan pondasi terpenting untuk mempelajari ilmu programming.
Mempelajari sintaks dasar seperti if, elseif, switch, for, while, do while dan lain-lainnya memang tidak wajib. Tapi hal ini justru sangat bermanfaat ketika kita menemukan sebuah algoritma yang cukup sedikit menguras otak. Sebuah contoh misalnya kita ingin membuat sebuah pondasi segitiga secara dinamis dengan berbagai bentuk perataan baik rata kiri, kanan, atas, bawah ataupun tengah. Bagaimana dengan algoritmanya, mudah bukan ?. Bagi coder pemula atau orang awam mungkin bingung entah dimulai dari mana untuk memecahkan algoritma ini, apalagi di implementasikannya ke dalam program komputer. Dari algoritma tersebut, mari kita buat sebuah program sederhana dengan menggunakan python.
Untuk langkah awal, coder cukup menyediakan python pada perangkat komputernya. Bagi pengguna windows coder dapat mengikuti tutorial instalasinya disini.
1. Untuk awal kita coba membuat sebuah segitiga dengan perataan kiri bawah.
string = ""
bar = 1
x = int(input("Masukkan angka :"))
# Looping Baris
while bar <= x:
kol = bar
# Looping Kolom
while kol > 0:
string = string + " * "
kol = kol - 1
string = string + "\n"
bar = bar + 1
print (string)
Disini kita beri nama segitiga_01.py , untuk menjalankannya masuk ke dalam folder dimana kita meletakan file segitiga_01.py . Kemudian ketik command : python segitiga_01.py . Sehingga outputnya seperti ini.
2. Membuat sebuah segitiga dengan perataan kiri atas.
string = ""
bar = int(input("Masukkan angka :"))
#Looping Baris
while bar >= 0:
kol = bar
# Looping Kolom
while kol > 0:
string = string + " * "
kol = kol - 1
string = string + "\n"
bar = bar - 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_02.py
3. Membuat sebuah segitiga dengan perataan kanan bawah.
string = ""
x = int(input("Masukkan angka :"))
bar = x
# Looping Baris
while bar >= 0:
# Looping Kolom Spasi Kosong
kol = bar
while kol > 0:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang
kanan = 1
while kanan < (x - (bar-1)):
string = string + " * "
kanan = kanan + 1
string = string + "\n"
bar = bar - 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_03.py
4. Membuat sebuah segitiga dengan perataan kanan atas.
string = ""
bar = 1
x = int(input("Masukkan angka :"))
# Looping Baris
while bar <= x:
# Looping Kolom Spasi Kosong
kol = bar
while kol > 1:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang
kanan = 0
while kanan <= (x - bar):
string = string + " * "
kanan = kanan + 1
string = string + "\n"
bar = bar + 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_04.py
5. Membuat sebuah segitiga dengan perataan tengah bawah.
string = ""
x = int(input("Masukkan angka :"))
bar = x
# Looping Baris
while bar >= 0:
# Looping Kolom Spasi Kosong
kol = bar
while kol > 0:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang Sisi Kiri
kiri = 1
while kiri < (x - (bar-1)):
string = string + " * "
kiri = kiri + 1
# Looping Kolom Bintang Sisi Kanan
kanan = 1
while kanan < kiri -1:
string = string + " * "
kanan = kanan + 1
string = string + "\n\n"
bar = bar - 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_05.py
6. Membuat sebuah segitiga dengan perataan tengah atas.
string = ""
bar = 1
x = int(input("Masukkan angka :"))
print ("\n")
# Looping Baris
while bar <= x:
kol = bar
# Looping Kolom Spasi Kosong
while kol > 1:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang Sisi Kiri
kiri = 0
while kiri <= (x - bar):
string = string + " * "
kiri = kiri + 1
# Looping Kolom Bintang Sisi Kanan
kanan = kiri
while kanan > 1:
string = string + " * "
kanan = kanan - 1
string = string + "\n\n"
bar = bar + 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_06.py
7. Membuat sebuah segitiga dengan perataan tengah (belah ketupat).
string = ""
x = int(input("Masukkan angka :"))
bar = x
# Looping Baris
while bar >= 0:
# Looping Kolom Spasi Kosong
kol = bar
while kol > 0:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang Sisi Kiri
kiri = 1
while kiri < (x - (bar-1)):
string = string + " * "
kiri = kiri + 1
# Looping Kolom Bintang Sisi Kanan
kanan = 1
while kanan < kiri -1:
string = string + " * "
kanan = kanan + 1
string = string + "\n\n"
bar = bar - 1
bar = 1
# Looping Baris
while bar <= x:
kol = bar+1
# Looping Kolom Spasi Kosong
while kol > 1:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang Sisi Kiri
kiri = 0
while kiri < (x - bar):
string = string + " * "
kiri = kiri + 1
# Looping Kolom Bintang Sisi Kanan
kanan = kiri
while kanan > 1:
string = string + " * "
kanan = kanan - 1
string = string + "\n\n"
bar = bar + 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_07.py
8. Membuat sebuah segitiga dengan perataan tengah atas bawah.
string = ""
bar = 1
x = int(input("Masukkan angka :"))
print ("\n")
# Looping Baris
while bar < x:
# Looping Kolom Spasi Kosong
kol = bar
while kol > 1:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang Sisi Kiri
kiri = 0
while kiri <= (x - bar):
string = string + " * "
kiri = kiri + 1
# Looping Kolom Bintang Sisi Kanan
kanan = kiri
while kanan > 1:
string = string + " * "
kanan = kanan - 1
if (bar+1) <= x:
string = string + "\n\n"
bar = bar + 1
bar = x-1
# Looping Baris
while bar >= 0:
# Looping Kolom Spasi Kosong
kol = bar
while kol > 0:
string = string + " "
kol = kol - 1
# Looping Kolom Bintang Sisi Kiri
kiri = 1
while kiri < (x - (bar-1)):
string = string + " * "
kiri = kiri + 1
# Looping Kolom Bintang Sisi Kanan
kanan = 1
while kanan < kiri -1:
string = string + " * "
kanan = kanan + 1
string = string + "\n\n"
bar = bar - 1
print (string)
Maka output setelah di jalankan dengan command : python segitiga_08.py
Bagaimana, mudah bukan ? Meskipun ini program segitiga sederhana, namun cukup baik untuk mengasah logika berfikir kita. Sebagai catatan, disini menggunakan Windows dengan python versi 3.6.0. Bagi pengguna sistem operasi lain seperti Linux, Mac OSX dan lainnya tidak perlu khawatir untuk mempelajari contoh sintaks codenya selagi intrepreter yang digunakan berjalan baik. Untuk latihan, coder dapat memodifikasi sintaks codeNya dengan berbagai macam bentuk segitiga lainnya. Semangat... Happy Coding!
Level artikel ini adalah advanced.
Dituliskan oleh
Bramanto (bramanto)
pada 7 Agustus 2016 dan telah dibaca sebanyak 148003 kali.
Tag:
Python,
algoritma
Komentar:
bramanto
300
1157
penulis
·
8 tahun, 3 bulan yang lalu
·
0 jempol
Hai coder @sopanmukti. Suatu pertanyaan yang sama ketika beberapa tahun yang lalu, saya pribadi mengalami hal serupa. Logic dalam membangun atau menuliskan kode, memang tidak akan tampak (berwujud nyata) layakNya kode program. Logic ini merupakan sebuah alur pemikiran untuk menyelesaikan sebuah permasalahan (problem solving) yang nantiNya akan diterjemahkan ke dalam kode program. Secara tidak langsung, ketika kita menuliskan baris² kode maka di saat itu pula kita sedang menyusun alur² logic. Sebagai referensiNya artikel dari Mas @Ganis ini dapat memberikan motivasi kita untuk lebih baik lagi https://codesaya.com/a/bagaimana... . Semangat, Happy Coding!
sopanmukti
147
2
·
8 tahun, 3 bulan yang lalu
·
1 jempol
terimakasih banyak untuk master coder @bramanto.. saya akan terus belajar menulis coding di pelajaran yang sudah di siapkan di CODE SAYA, terimkasih banyak untuk CODE SAYA yang telah menyiapkan tools belajar dengan gratis ini.. semoga saya dan kita bisa menjadi lebih baik lagi. Happy coding!
FahmiIrmansyah
135
2
·
8 tahun, 2 bulan yang lalu
·
1 jempol
Kalau python segitiga_05.py sampai python segitiga_08.py bisa dibuat pakai php gak ?
sugidaffection
300
10
·
8 tahun, 2 bulan yang lalu
·
1 jempol
x = int(input("Masukkan angka :")) for i in range(0,x+1):print(i*"*") ini versi pendeknya
bramanto
300
1157
penulis
·
8 tahun, 2 bulan yang lalu
·
0 jempol
Hai coder @FahmiIrmansyah. Untuk sintaks codeNya tidak bisa, karena python dan php sedikit berbeda. Tapi untuk logikaNya 100% bisa digunakan untuk PHP. Silahkan dicoba, lalu share kembali di CodeSaya.com agar teman² yang lainNya dapat belajar. Halo coder @sugdaffection. Keren, ada yang lebih pendek, Berarti coder sudah dapat mengeksplorasi contoh code² sederhana menjadi lebih sederhana. Semangat ^_^.. terus berkarya.
Kagura
169
1
·
8 tahun, 1 bulan yang lalu
·
0 jempol
Makasih baxk gan utk tutorialnya,saya terbantu sekali.Tp sy masih ngerasa susah buat ngerti logicnya ya?kadang yg ngambat tuh logicnya.Gimana biar bisa tajam d logic ya?maklum sy newbie
Kagura
169
1
·
8 tahun, 1 bulan yang lalu
·
0 jempol
Kalau pake sintaks for itu gimana ya?terus kalau kita mau buatnya banyak * = input yg dimasukkan.Misal inputnya 4 utk segitiga sama kaki (rata tengah atas)maka skema gambarnya * * * * * * * * * *
Kagura
169
1
·
8 tahun, 1 bulan yang lalu
·
0 jempol
Maksudx gini. * * * * * * * * * *
bramanto
300
1157
penulis
·
8 tahun, 1 bulan yang lalu
·
0 jempol
Halo coder @Kagura, untuk logic.. lambat laun akan terasah bilamana kita sering mengeksplornya.. entah dengan studi kasus, belajar dari buku, tutorial dll.. Untuk pemecahan dengan menggunakan for, algoritmanya hampir sama. Namun pada for, kita harus tepat memposisikan increment maupun decrementnya agar string yang kita tuliskan tersusun dengan apa yang kita inginkan.
Kagura
169
1
·
8 tahun, 1 bulan yang lalu
·
0 jempol
Makasih mas @bramanto.udah solved.Berkat penjelasannya jd lebih mudah mengerti....
pythonnewt
109
5
·
6 tahun, 3 bulan yang lalu
·
0 jempol
mas @bramanto, mau nanya arti kode \n\n itu apakah double enter? kalau double enter kenapa outputnya hanya ada beda 1 line? thanks
Artikel Lainnya
Bramanto
7 Agustus 2016Tutorial Membuat Segitiga Dengan Python - Versi Angka
Sebelumnya kita sudah melihat bagaimana mengimplementasikan algoritma dasar berupa program sederhana segitiga dengan python. Pada kesempatan kali ini kita coba berlatih dan mengubah bentuk segitiga bintang ke dalam segitiga angka ...
11 menit bacaan · advanced
Ganis
2 Agustus 2016Mengapa Kita Belajar Python
Python bukanlah bahasa yang terkenal di Indonesia. Itu bisa dengan mudah kita lihat dengan mengintip aktifitas di grup Facebook Python Indonesia yang hanya memiliki 14 ribu anggota saat ini. Jumlah ...
7 menit bacaan · beginner
sopanmukti147
2
·
8 tahun, 3 bulan yang lalu
·
0 jempol