Anda di halaman 1dari 28

Python 3 RLE BAB 1: Seni Dalam Program

Aditya Suranata - 09 Desember 2015 17:09:36 0

Tujuan dari buku ini adalah untuk mengajarkan bagimana berpikir


seperti seorang ilmuan komputer. Cara berpikir seorang ilmuan
komputer itu mengkombinasikan beberapa fitur terbaik dari
matematika, perekayasaan, dan ilmu pengentahuan alam. Seperti
halnya ahli matematika, para ilmuan komputer menggunakan bahasa
formal untuk menyatakan ide-ide (khususnya yang meyangkut
komputasi). Seperti seorang insinyur, para ilmuan komputer juga
mendesain sesuatu, merakit komponen menjadi sistem dan menilai
timbal balik diantara alternatif yang ada. Dan juga bagaikan seorang
ilmuan pengetahuan alam, mereka para ilmuan komputer juga
mengamati prilaku dari sistem yang kompleks, membentuk hipotesis,
dan menguji prediksi.

Satu kemampuan yang paling penting untuk seorang ilmuan komputer


adalah problem solving. Problem solving berarti kemampuan untuk
merumuskan masalah, berpikir kreatif tentang solusi, dan
mengungkapkan solusi secara jelas dan akurat. Ternyata, proses dari
belajar memprogram merupakan sebuah kesempatan yang sangat
bagus untuk mempraktekan kemampuan problem solving. Itulah
kenapa Bab ini dinamakan, Seni dalam program.

1.1. Bahasa Pemrograman Python


Bahasa pemrograman yang akan kamu pelajari adalah Python.
Python adalah contoh dari bahasa tingkat tinggi; bahasa tingkat tinggi
lainnya yang mungkin kamu pernah dengar adalah C++, PHP, Pascal,
C#, dan Java.
Seperti yang mungkin kamu simpulkan dari bahasa tingkat tinggi,
terdapat juga bahasa tingkat rendah, kadang disebut juga sebagai
bahasa mesin atau bahasa assembly (rakitan). Secara gamblang,
komputer hanya bisa menjalankan program yang ditulis dalam bahasa
tingkat rendah. Sehingga, program yang ditulis dalam bahasa tingkat
tinggi harus diterjemahkan dahulu dalam bentuk yang sesuai sebelum
bisa dijalankan.
Hampir semua program ditulis dalam bahasa tingkat tinggi karena
keunggulannya. Jauh lebih mudah untuk memprogram dalam bahasa
tingkat tinggi, program menjadi mudah dibuat dan memerlukan sedikit
waktu untuk menyelesaikannya, kodenya menjadi lebih pendek dan
lebih mudah untuk dibaca, dan tentu lebih terhindar dari kesalahan.
Kedua, bahasa tingkat tinggi bersifat portabel, yang artinya dapat
dijalankan pada komputer jenis lain dengan beberapa atau bahkan
sama sekali tanpa memerlukan modifikasi.
Mesin yang menterjemahkan dan menjalankan Python
dinamakan Python Interpreter: Terdapat dua cara untuk
menggunakannya: immediate mode dan script mode. Pada immediate
mode, kamu mengetik ekspresi Python kedalam jendela interpreter
Python, dan secara langsung interpreter menampilkan hasilnya:
python interpreter immediate mode.png

Tanda >>> dinamakan Python prompt. Interpreter menggunakan


prompt untuk menandakan ia siap untuk menerima perintah. Kita
mengetikan 2 + 2, dan interpreter menilai ekspresi yang kita masukan,
dan menjawab dengan 4, dan setelah selesai pada baris berikutnya
interpreter memberikan kita prompt baru, menandakan dia siap
menerima input baru.
Atau, kamu bisa menulis sebuah program pada file dan menggunakan
interpreter untuk mengeksekusi isi dari file. File tersebut
dinamakan script. Script memiliki keunggulan seperti bisa disimpan di
disk, dicetak, dan banyak lagi yang lainnya.
Pada Rhodes Local Edition teks book ini, kita menggunakan
lingkungan pengembangan program yang bernama PyScripter.
(Tersedia untuk diunduh di http://sourceforge.net/projects/pyscripter/.)
Ada banyak lagi lingkungan pengembangan lainnya. Jika kamu
menggunakan salah satu dari yang lainnya, kamu mungkin lebih baik
menggunakan versi asli dari buku yang dibuat penulis dari pada versi
RLE ini.
Sebagai contoh, kita sudah membuat file dengan
nama firstprogram.pymenggunakan PyScripter. Demi kenyamanan,
file yang berisi program Python memiliki nama (ekstensi) yang diakhiri
dengan .py
Untuk menjalankan program, kita bisa mengklik tombol Run pada
PyScripter:
Python PyScripter Run Button.png

Program pada umumnya tentu jauh lebih menarik ketimbang yang


satu ini.

Bekerja secara langsung pada interpreter terasa nyaman untuk testing


beberapa baris kode karena kamu akan mendapatkan hasilnya
langsung. Bayangkan seperti kita menggunakan kertas corat coret
untuk membantu merumuskan masalah. Jika kodenya panjang dan
berbaris-baris maka wajib untuk menggunakan script.

1.2. Apa Itu Program ?


Sebuah program merupakan urutan instruksi yang
menentukan bagaimana cara melakukan suatu perhitungan. Perhitungan
tersebut bisa saja sesuatu yang bersifat matematis,
seperti memecahkan sistem persamaan atau mencari akarpolinomial, tapi itu
bisa juga perhitungan simbolis, seperti mencari dan mengganti teks pada
dokumen atau (yang cukup aneh) mengkompilasi sebuah program.
Detailnya terlihat berbeda pada bahasa yang berbeda, tapi beberapa instruksi
dasar terlihat ada di setiap bahasa:
input : Mendapatkan data dari keyboard, file, atau perangkat lainnya.
output : Menampilkan data di layar atau mengirim data ke file atau
perangkat lainnya.
math : Melakukan operasi matematika dasar seperti penjumlahan dan
perkalian.
conditional execution : Cek untuk kondisi tertentu dan eksekusi rentetan
pernyataan yang sesuai.
repetition : Lakukan beberapa aksi secara berulang, biasanya dengan
beberapa variasi.
Percaya atau tidak, semua yang ada hanya untuk itu. Setiap program yang
mungkin pernah kamu gunakan, tidak penting seberapa rumitnya, adalah
dibuat dari instruksi yang terlihat lebih atau kurang dari yang tersebut diatas.
Jadi, kita bisa menjelaskan kalau pemrograman itu adalah proses dari
pemecahan tugas besar dan kompleks, menjadi tugas-tugas yang lebih kecil
hingga tugas kecil tersebut cukup sederhana untuk bisa diselesaikan dengan
rentetan dari instruksi dasar tersebut.
Itu mungkin jadi sedikit samar, tapi kita akan balik lagi ke topik ini
nanti ketika kita bicara tentang algoritma.

1.3. Apa Itu Debugging ?


Pemrograman merupakan proses yang kompleks, dan karena itu
dilakukan oleh manusia, maka sering terjadi error. Error pada
pemrograman dinamakan bug dan proses untuk mencari error
tersebut dan pemecahannya dinamakan debugging. Penggunaan dari
istilah bug untuk menjelaskan kesulitan kecil perekayasaan merujuk
kembali pada tahun 1889, ketika Thomas Edison menemukan
serangga (bug) pada phonografnya.
Tiga jenis error bisa terjadi pada sebuah program: syntax error, runtime
error, dan semantic error. Membedakan ketiga jenis error tersebut akan
sangat berguna untuk mencari masalahnya dengan cepat.

1.4. Syntax Error


Python hanya akan bisa menjalankan program apabila sintaksis/sintax
programnya ditulis dengan benar; jika tidak, prosesnya akan gagal
dan muncul pesan error. Syntax merujuk pada struktur dari sebuah
program dan aturan mengenai struktur tersebut. Sebagai contoh,
dalam bahasa Indonesia, sebuah kalimat mesti diawali dengan huruf
besar dan diakhiri dengan tanda titik. kalimat ini memiliki syntax error.
Kalimat ini baru benar.
Bagi kebanyakan pembaca, beberapa syntax error bukanlah masalah
penting, itulah mengapa kita bisa membaca puisi dari E. E. Cummings
dan Chairil Anwar tanpa masalah. Namun Python tidak begitu pemaaf.
Jika terdapat satu saja syntax error pada program mu, Python akan
menampilkan pesan error dan langsung berhenti dan keluar, dan
kamu tidak akan bisa menjalankan program mu. Selama beberapa
minggu awal dari karir pemgrograman, kamu mungkin akan
menghabiskan banyak waktu untuk mencari syntax error. Seiring
bertambahnya pengalaman, tentunya kamu akan membuat lebih
sedikit kesalahan dan bisa menemukan kesalahan dengan cepat.

1.5. Runtime Error


Jenis error kedua adalah runtime error, dinamakan begitu karena
errornya tidak akan muncul sebelum kamu menjalankan programnya.
Error jenis ini juga dinamakan exceptions karena mereka biasanya
mengindikasikan bahwa sesuatu yang sifatnya diluar kendali dan
buruk (exceptional and bad) telah terjadi.
Runtime error jarang terjadi pada program sederhana yang akan
kamu lihat pada beberapa Bab awal dari buku ini, jadi mungkin akan
butuh beberapa waktu hingga kamu akan mengalaminya.

1.6. Semantic Error


Jenis ketiga dari error adalah semantic error. Jika terdapat semantic
error pada program mu, ia akan berjalan dengan lancar, dalam artian
komputer tidak akan menampilkan pesan error apapun, tapi
programnya tidak akan melakukan apa yang seharusnya. Programnya
akan melakukan hal lain. Khususnya, ia akan melakukan apa yang
kamu suruh.
Masalahnya adalah program yang kamu tulis itu bukanlah program
yang ingin kamu buat. Maksud dari programnya (semantic-nya) tidak
tepat. Mengidentifikasi semantic error bisa menjadi cukup sulit karena
memerlukan kerja keras dengan mencari kebelakang melalui output
programnya dan mencoba untuk menemukan apa yang programnya
lakukan.
1.7. Experimental debugging
Satu dari skill penting yang akan kamu kuasai adalah debugging.
Meskipun sering membuat frustrasi, debugging adalah satu dari
bagian pemrograman yang kaya ilmu, menantang, dan menarik.

Dalam beberapa cara, debugging sama halnya dengan pekerjaan


seorang detektif. Kamu akan dihadapkan dengan clue / petunjuk, dan
kamu harus menyimpulkan proses dan peristiwa yang menyebabkan
hasil yang kamu lihat tersebut.

Debugging juga sama seperti ilmu pengetahuan eksperimental. Saat


kamu memiliki ide tentang apa yang salah, kamu langsung memodif
programnya dan mencobanya lagi. Jika hipotesis yang kamu buat
benar, maka kamu akan bisa menebak hasil dari modifikasi tersebut,
dan tentunya akan maju selangkah ke titik dinama programnya bisa
bekerja. Namun jika hipotesisnya salah, kamu harus mencoba lagi
dengan yang baru. Seperti yang dikatakan Sherlock Holmes, Ketika
kamu telah menyingkirkan ketidakmungkinan, maka apapun yang
masih tersisa, dan seberapa pun mustahilnya itu, haruslah menjadi
kebenaran. (A. Conan Doyle,The Sigh of Four).
Bagi sebagian orang, pemrograman dan debugging adalah hal yang
sama. Itulah, pemrograman adalah proses dari debugging secara
bertahap sebuah program hingga ia melakukan apa yang kamu
inginkan. Pemahamannya adalah kamu harus memulai dengan
sebuah program yang melakukan sesuatu dan kemudian melakukan
modifikasi kecil, debugging seiring waktu, jadi kamu selalu punya
program yang bisa bekerja.
Sebagai contoh, Linux adalah sebuah kernel sistem operasi yang
terdiri dari jutaan baris kode, tapi ia juga dimulai dari program
sederhana yang digunakan Linus Torvalds untuk mengeksplorasi chip
Intel 80386. Menurut Larry Greenfield, satu dari proyek Linus
sebelumnya adalah sebuah program yang hanya bisa berubah dari
menampilkan AAAA menjadi BBBB. Ini kemudian dikembangkan ke
Linux (The Linux Users' Guide Beta Version 1).
Pada Bab berikutnya kita akan membuat beberapa saran tentang
debugging dan praktek pemrograman lainnya.

1.8. Bahasa Formal dan Bahasa Natural


Bahasa Natural adalah bahasa yang diucapakan orang-orang, seperi
misalnya Bahasa Indonesia, English, Spanish, dan French. Mereka
tidak didesain oleh orang (meskipun orang-orang mencoba untuk
menekankan aturan padanya), mereka (bahasa natural) terbentuk
secara alami.

Bahasa Formal adalah bahasa yang didesain oleh orang untuk


penggunaan tertentu. Sebagai contoh, notasi yang digunakan
matematika adalah bahasa formal yang khususnya bagus untuk
menyatakan hubungan antara angka-angka dan simbol-simbol. Ahli
kimia menggunakan bahasa formal untuk merepresentasikan struktur
kimia dari molekul-molekul. Dan yang paling penting:

Bahasa pemrograman adalah bahasa formal yang telah didesain


untuk mengekspresikan perhitungan.
Bahasa formal cenderung memiliki aturan ketat tentang syntax.
Contohnya 3 + 3 = 6 secara syntax matematika merupakan
pernyataan yang benar, tapi 3=+6$ adalah tidak. H2O secara syntax
adalah memang benar nama kimia, tapi 2Zz adalah tidak.
Aturan syntax ada dalam dua rasa, dalam kaitannya
dengan token dan struktur. Token adalah elemen dasar dari bahasa,
seperti misalnya kata-kata, angka-angka, tanda kurung, koma, dan
yang lainnya. Di Python, sebuah pernyataan seperti print("Selamat
Tahun Baru ",2016) memiliki 6 token: nama fungsi, sebuah kurung
buka, sebuah string, koma, angka, dan sebuah kurung tutup.
Kita mungkin membuat kesalahan ketika menyusun token. Satu dari
kesalahan pada 3=+6$ adalah bahwa tanda $ tidak legal dalam token
matematika (setidaknya sejauh yang kita tahu sekarang). Begitupun
dengan 2Zz tidak legal dalam notasi kimia karena tidak ada elemen
dengan singkatan Zz.
Jenis rasa kedua dari syntax adalah struktur dari sebuah pernyataan
-- yaitu, cara bagaimana token-token diatur. Pernyataan 3=+6$ secara
struktur adalah ilegal karena kamu tidak bisa menempatkan tanda
tambah langsung setelah sebuah tanda sama dengan. Begitu juga
dengan formula molekuler yang memiliki subscript (huruf kecil bawah)
setelah nama, bukan sebelumnya. Dan dalam contoh Python kita, jika
kita menghilangkan komanya, atau jika kita mengganti dua kurung
menjadi print)"Selamat Tahun Baru ",2016( maka pernyataan kita
masih tetap memiliki enam token yang valid dan legal, akan tetapi
strukturnya adalah ilegal.
Ketika kamu membaca sebuah kalimat dalam bahasa Indonesia atau
sebuah pernyataan dalam bahasa formal, kamu mesti mencari tahu
apa struktur dari kalimat tersebut (meskipun dalam bahasa natural
kamu juga melakukan ini secara tidak sadar). Inilah proses yang
dinamakan dengan parsing.
Contohnya, ketika kamu mendengar kalimat, "Sepatu lainnya jatuh",
kamu memahami bahwa sepatu lainnya sebagai subyek dan jatuh
sebagai kata kerja. Setelah kamu mem-parse sebuah kalimat, kamu
bisa mengetahui apa yang dimaksud, atau semantic dari kalimat
tersebut. Kita asumsikan bahwa kamu mengetahui apa itu sepatu dan
apa maksudnya ia jatuh, maka kamu akan mengerti implikasi umum
dari kalimat tersebut.
Meskipun bahasa formal dan natural memiliki banyak fitur yang sama
-- token, struktur, syntax, dan semantics -- tapi masih terdapat banyak
perbedaan:

Ambiguity
Bahasa natural penuh dengan ambiguitas, yang mana orang-orang
berhubungan dengan menggunakan petunjuk kontekstual dan
informasi lainnya. Bahasa formal didesain untuk mendekati atau
benar-benar tidak ambigu, yang artinya bahwa setiap pernyataan
memiliki hanya satu makna, tanpa adanya konteks.
Redundancy
Untuk dapat menembus ambiguitas dan mengurangi salah paham,
bahasa natural menggunakan banyak redundancy (kelebihan /
pengulangan). Sebagai hasilnya, bahasa natural cenderung menjadi
panjang. Bahasa formal memiliki lebih sedikit redundant dan tentunya
menjadi lebih padat.
Literalness
Bahasa formal berarti tepat seperti apa yang dikatakan. Disisi lainnya,
bahasa natural dipenuhi dengan idiom / ungkapan / logat khas dan
metafora. Jika seseorang berkata, "Sepatu lainnya jatuh", maka
sesungguhnya tidak ada sepatu dan tak ada yang jatuh. Kamu jadinya
perlu mencari arti guyonan aslinya untuk memahami arti idiomatik dari
sepatu lainnya jatuh. Yahoo! Answers mengatakan kalau dia tahu.
Orang tumbuh besar mengucapkan bahasa natural -- semua orang --
sering mengalami waktu yang sulit untuk menyesuaikan dengan
bahasa formal. Dalam beberapa cara, perbedaan antara bahasa
formal dan natural adalah seperti perbedaan antara puisi dan prosa,
untuk lebih lengkapnya:

Pusisi
Kata-kata digunakan untuk suaranya begitu juga dengan artinya, dan
seluruh sajaknya bersama-sama membuat sebuah efek atau respon
emosional. Abiguitasnya tidak hanya umum tapi juga memang
disengaja.
Prosa
Maksud literal dari kata-katanya lebih penting, dan strukturnya
berkontribusi lebih ke arti. Prosa lebih dapat dipertanggungjawabkan
ketimbang puisi tapi kadang masih juga ambigu.
Program
Maksud dari program komputer harus literal dan tidak ambigu, dan
bisa dipahami seluruhnya melalui analisis dari token dan struktur.
Berikut adalah beberapa saran untuk membaca program (dan bahasa
formal lainnya). Pertama, harus diingat bahwa bahasa formal
bentuknya lebih padat ketimbang bahasa natural, jadi akan
memerlukan lebih banyak waktu untuk membacanya. Juga,
strukturnya juga penting, jadi bukan ide yang bagus untuk membaca
dari atas ke bawah, kiri ke kanan. Namun, coba untuk mem-parse
programnya di kepala, kenali token-tokennya dan interpretasikan
strukturnya. Terakhir, perhatikan rincian masalahnya. Hal kecil seperti
salah eja dan tanda baca yang buruk, yang mana tidak terlalu berarti
dalam bahasa natural, bisa menjadi hal yang benar-benar berbeda
dan serius pada bahasa formal.

1.9. Program Pertama


Tradisionalnya, program pertama yang ditulis menggunakan bahasa
baru dinamakan Hello World! karena semua yang dilakukan hanyalah
menampilkan kata tersebut, Hello, World! di Python, skripnya terlihat
seperti ini: (Untuk skrip, kita akan menampilkan nomer baris pada
bagian kiri dari pernyataan Python.)
?
1 print("Hello, World!")
Ini merupakan contoh dari penggunaan fungsi print, yang sebenarnya
tidak mencetak apapun ke atas kertas. Tapi fungsi ini menampilkan
sebuah nilai di layar. Dalam hal ini, hasil yang diperlihatkan adalah

Hello, World!

Tanda petik dua pada program menandai awal dan akhir dari nilai;
dan tanda tersebut tidak ikut ditampilkan pada hasil.

Beberapa orang menilai kualitas dari sebuah bahasa pemrograman


hanya dari tingkat kesederhanaan Hello, World! nya. Dengan standar
ini, Python melakukan sebaik mungkin.

1.10. Penggunaan Komentar


Seiring dengan ukuran program yang semakin besar dan rumit, maka
makin sulit juga untuk dibaca. Bahasa formal bentuknya padat, dan
biasanya sulit untuk melihat pada potongan kode dan memahami apa
yang dilakukannya, atau mengapa.

Untuk alasan ini, merupakan ide bagus untuk menambahkan catatan-


catatan ke program mu untuk menjelaskan dalam bahasa natural apa
yang dilakukan program tersebut.
Sebuah komentar dalam program komputer merupakan teks yang
ditujukan hanya untuk pembaca manusia -- dan secara keseluruhan
dihiraukan oleh interpreter.
Di Python, token # akan memulai sebuah komentar. Seluruh baris
tersebut akan dihiraukan. Ini adalah versi baru dari Hello, World!.
?
1 #---------------------------------------------------
2 # This demo program shows off how elegant Python is!
3 # Written by Wayan Tomblos, December 2015.
4 # Anyone may freely copy or modify this program.
5 #---------------------------------------------------
6
print("Hello, World!") # Isn't this easy!
7
Kamu juga akan menyadari bahwa kita menyisakan baris kosong
pada program diatas. Baris kosong juga dihiraukan oleh interpreter,
tapi komentar-komentar dan baris kosong bisa membuat program mu
jauh lebih mudah untuk di-parse oleh manusia. Maka gunakan mereka
dengan bebas!

1.11. Glosarium
algoritma
Sekumpulan langkah-langkah khusus untuk memecahkan sebuah
kategori dari masalah.
bug
Sebuah kesalahan (error) pada program.
komentar
Informasi pada sebuah program yang dimaksudkan untuk programer
lain (atau siapa saja yang membaca kode sumber) dan tidak memiliki
efek apapun pada proses eksekusi program.
debugging
Proses dari pencarian dan penghapusan tiga jenis error pada
program.
exception
Nama lain dari runtime error
bahasa formal
Setiap bahasa yang didesain oleh orang-orang untuk tujuan khusus,
seperti merepresentasikan ide matematis atau program komputer;
semua bahasa pemrograman adalah bahasa formal.
bahasa tingkat tinggi
Sebuah bahasa pemrograman seperti Python yang didesain untuk
mudah digunakan oleh manusia untuk membaca dan menulis.
immediate mode
Gaya dalam penggunaan Python dimana kita mengetikan ekspresi
langsung pada command prompt, dan hasilnya juga langsung
ditampilkan. Berlawanan dengan skrip, dan lihat catatannya pada
Python Shell.
interpreter
Mesin yang mengeksekusi skrip Python atau ekspresi yang kamu
buat.
bahasa tingkat rendah
Bahasa pemrograman yang didesain untuk mudah dijalankan oleh
sebuah komputer; juga dinamakan bahasa mesin atau bahasa
assembly (rakitan).
bahasa natural
Salah satu type bahasa yang digunakan orang untuk berbicara yang
berkembang secara alami.
kode objek
Output dari penyusun (compiler) setelah ia menterjemahkan
programnya.
parse
Untuk menilai sebuah program dan menganalisis struktur
syntaksisnya.
portabilitas
Properti dari sebuah program yang bisa berjalan pada lebih dari satu
jenis komputer.
fungsi print
Sebuah fungsi yang digunakan pada sebuah program yang
menyebabkan Python interpreter menampilkan sebuah nilai pada
perangkat keluaran (layar monitor).
problem solving
Proses dari merumuskan masalah, mencari solusi, dan
mengekspresikan solusinya.
program
serentetan instruksi yang menentukan aksi komputer dan perhitungan
yang dilakukan.
Python shell
Sebuah antarmuka pengguna yang interaktif dengan Python
interpreter. Pengguna dari Python shell mengetikan perintah pada
prompt (>>>), dan menekan tombol enter untuk mengirim perintah
dengan segera ke interpreter untuk diproses. Kata shell datang dari
Unix. Pada PyScripter yang digunakan pada versi RLE buku ini,
Jendela Interpreter adalah dimana kita bisa melakukan interaksi
dalam mode langsung (immediate mode).
runtime error
Sebuah error yang tidak terjadi hingga program telah dijalankan tapi
akan menghalangi program untuk melanjutkan.
script / skrip
Sebuah program yang disimpan pada sebuah file (biasanya yang
akan diterjemahkan / interpreted).
semantic error
Sebuah error pada program yang membuatnya melakukan hal lain
ketimbang apa yang diinginkan oleh programer.
semantic
maksud / arti dari program
source code / kode sumber
Bentuk program dalam bahasa tingkat tinggi sebelum dikompilasi ke
bahasa mesin.
syntax / syntaksis
Struktur dari program
syntax error
Sebuah error pada program yang membuatnya tidak bisa di-parse -
dan maka dari itu tidak bisa diterjemahkan ke bahasa mesin.
token
Satu dari elemen dasar dari struktur semantik dari sebuah program,
bisa dianalogikan seperti kata pada bahasa natural.

1.12. Latihan
1. Tulis sebuah kalimat Bahasa Indonesia yang secara semantic bisa
dimengerti tapi secara syntax salah. Tulis kalimat Bahasa Indonesia
lainnya yang syntaxnya benar tapi semanticnya salah.

2. Menggunakan Python interpreter, ketik 1 + 2 dan tekan enter.


Python menilai ekspresi ini, menampilkan hasilnya, dan kemudian
menampilkan prompt lainnya. *adalah operator perkalian,
dan ** adalah operator perpangkatan. Lakukan percobaan dengan
memasukan ekspresi lainnya dan catat apa yang di tampilkan oleh
Python interpreter.
3. Ketik 1 2 lalu tekan enter. Python mencoba untuk menilai
ekspresinya, tapi tidak bisa karena ekspresinya tidak legal secara
syntax. Kemudian, pesan error ini akan muncul:
?
1 File "<interactive input>", line 1
2 12
3 ^
4 SyntaxError: invalid syntax

Dalam banyak kasus, Python menandai dimana syntax error terjadi,


tapi tidak selalu tepat, dan itu tidak memberikan mu cukup informasi
mengenai apanya yang salah.

Jadi, untuk bagian besarnya, beban akan dilimpahkan kepada mu


untuk mempelajari aturan dari syntax.

Dalam kasus ini, Python mengeluh karena tidak terdapat operator


antara angka-angka tersebut.

Lihat jika kamu bisa menemukan beberapa contoh lain dari hal yang
bisa menghasilkan pesan error ketika kamu memasukannya ke
Python prompt. Tuliskan apa yang kamu masukan pada prompt dan
baris terakhir dari pesan error yang dilaporkan balik oleh python.

4. Ketik print("hello"). Python mengeksekusi ini, yang efeknya akan


mencetak huruf h-e-l-l-o. Perhatikan bawa tanda petik dua yang kamu
gunakan untuk mengapit stringnya tidak ikut tercetak ke output.
Sekarang ketik "hello" dan jelaskan hasilnya. Buat catatan saat
kapan kamu melihat tanda petik dua dan kapan tidak.
5. Ketik cheese tanpa tanda petik dua. Outputnya akan menjadi seperti
berikut:
?
1 Traceback (most recent call last):
2 File "<interactive input>", line 1, in ?
3 NameError: name 'cheese' is not defined

Ini adalah runtime error; khususnya, merupakan NameError, dan


bahkan lebih spesifik lagi, ini adalah error karena nama cheese tidak
didefinisikan. Jika kamu belum tahu apa artinya ini, dengan segera
kamu akan tahu.
6. Ketik 6 + 4 * 9 pada Python prompt dan tekan enter. Rekam apa
yang terjadi.
Sekarang buat skrip Python dengan isi berikut:
?
1 6+4*9
Apa yang terjadi ketika kamu menjalankan skrip ini ? Sekarang ganti
isi skripnya menjadi

?
1 print(6 + 4 * 9)
dan jalankan lagi.

Apa yang terjadi kemudian ?

Ketika sebuah ekspresi diketikan pada Python prompt, ia akan dinilai


dan hasilnya akan dengan otomatis diperlihatkan pada baris
dibawahnya. (Seperti kamu menggunakan kalkulator, jika kamu
mengetik ekspresi ini kamu akan mendapatkan hasil 42.)
Namun, lain dengan skrip. Penilaian dari ekspresi tidak ditampilkan
secara otomatis, jadi perlu menggunakan fungsi print untuk membuat
jabawabanya muncul.
Tapi pada immediate mode, penggunakan fungsi print sama sekali
tidak diperlukan.

Cara Hack Admin Grup Whatsapp


34 Comments / Awam, Informasi / By mrhanafi

21
Entah la.Saya teragak-agak untuk berkongsi cara hack admin
grup Whatsapp.Dua sebab.

Antaranya:

1.Saya bukan pakar teknologi

2.Saya orang jujur [harap saya tak perasan]

Namun sebagai seorang blogger maupun pembaca sendiri tidak


akan menghadapi kesukaran untuk dapatkan info tersebut.

‘Google’ kan ada.

Taip “Cara hack grup admin Whatsapp”


Selepas itu akan keluar la beberapa blog yang memang menulis
tips dan tutorial tentang perkara tersebut.Memandangkan saya
tak nak kecewakan pembaca saya kongsikan video dari Youtube
dan panduan secara manual.

Ikut la langkah demi langkah.

Pesan saya kalau nak sangat jadi admin group Whatsapp


memohon sahaja dari admin yang sedia ada.Buat apa la nak hack
jadi admin grup Whatsapp.

Kalau dia tak bagi kita buat sahaja grup Whatsapp sendiri.

Betul tak.

Saya nak bagi perumpamaan.

Biar pembaca pilih yang mana satu pintu yang seronok untuk
dimasuki.

1.Pintu kejujuran

2.Pintu kecurangan

Sudah pasti ramai yang memilih pintu kejujuran kerana ia adalah


sifat alami untuk manusia.

Pintu kejujuran >>Orang suka.Hati tenang.

Pintu kecurangan>>Orang lain tak suka..Hati tak tenang.

Dah.

Saya tak mahu membuang masa pembaca.


Kita teruskan sahaja cara nak hack admin grup Whatsapp.Kalau
tak jadi jangan pula Whatsapp saya atau cuba-cuba nak hack jadi
group admin Pembaca Blog mrhanafi dot com.
Jika berminat nak jadi admin boleh “PM” saya .

Kita boleh berbincang.Percuma dan dijamin privasi.

Sekarang tibalah masa yang ditunggu tunggu.

Jeng..jeng..jeng..

Berikut adalah langkahnya :


1.Salin nombor telefon admin grup whastsapp dan tukar kepada
digit binary.

Ambil contoh dibawah.

0 -[0 0 0 0]

1 – [0-0-0-1]

2 -[0-0-1-0]

3 – [0-0-1-1]

4 – [0-1-0-0]

5 – [0-1-0-1]

6 – [0-1-1-0]

7 – [0-1-1-1]

8 – [1-0-0-0]
9 – [1-0-0-1]

Contohnya nombor telefon admin 012-3456789 akan menjadi


000000010010100010111

2.Cipta satu mesej yang mengandungi

“cng=true?=[admin’s number in binary]! [Your


Number]&findchache.mnc.id=[802]ste5%Set.conte
nt?/ rfd=gv”
contohnya : “cng=true?=[000000010010100010111]!
[013-
456789]&findchache.mnc.id=[802]ste5%Set.content?/
rfd=gv”
3.Hantar mesej kepada group yang ingin kita jadi admin

4.Uninstall Whatsapp

5.Reinstall Whatsapp

6.On balik Whatsapp

7.Sekarang dah admin.

Sekiranya tak jadi cuba lagi dan cuba kombinasi yang lain pula
atau teruskan mencuba.Yang penting jangan berputus asa.

Menelusuri Alamat IP Menggunakan Command Prompt


Tahukah kamu, menggunakan fitur command prompt di komputer benar-benar dapat
menelusuri alamat IP dari orang yang kamu ajak chatting di WhatsApp. Caranya cukup ikuti
langkah-langkah berikut ini.
 Pertama, kamu buka WhatsApp web, setelah itu mulai ajak chatting target untuk mendapatkan

alamat IP.
 Pastikan semua aplikasi yang sedang berjalan di latar belakang telah dihentikan, caranya tekan
kombinasi Ctrl+Alt+Delete untuk membuka fungsi task manager. Kecuali browser yang sedang
kamu gunakan untuk melakukan chatting.

 Sekarang tekan Win + R dari keyboard komputer kamu.

 Ketik cmd dan tekan enter.


 Pada command prompt yang muncul ketik netstat-an dan tekan enter.

 Catat alamat IP yang tercantum.


 Tracking untuk mengetahui lokasi sebenarnya melalui website http://www.ip-
adress.com/ip_tracer/.
Cara ini juga berlaku untuk mengetahui lokasi seseorang lewat chatting Facebook. Tertarik
mencoba cara mengetahui lokasi lewat WhatsApp? Jangan disalahgunakan ya.

CARA HACKING PASSWORD WIFI


DENGAN WIRESHARK
Yoan Nikaros Suwardi 04.26 Software, Tips and Trick Tutorial
Dalam Dunia jaringan dan internet kita tidak bisa mengatakan bahwa privasi itu benar-benar aman
100%..bagaimanapun keamanannya pasti terdapat celah untuk membobol..

biasanya seorang hacker memang harus berbuat jahat dulu sebelum menjadi baik hehe...supaya kita bisa tahu
bagaimana sih cara kerja kejahatan tersebut, tp bukan berarti saya yg jahat lho...kita disini sama2 belajar...^_^
Kali ini kita akan coba membahas tentang Cara Sniffing Password Menggunakan WireShark dengan
syarat si korban harus berada pada satu jaringan komputer.
Yang pertama ingin ditanyakan Apa Sih Itu Sniffing ??
Definisi singkatnya yaitu suatu penyadapan terhadap lalu lintas data pada suatu jaringan komputer
Gimana Caranya??
Pertama install dulu program WireShark, kalo belum punya silahkan
DOWNLOAD

karena ini hanya latihan kita coba pada local host dulu.

Jadi pertama-tama buka lah halaman web yang nantinya akan menjadi target sniffing kita. Sebagai
contoh halaman admin blog UAD. http://blog.uad.ac.id/latif_ilkom/wp-admin . Isikan dahulu username
dan password kita. Jangan di tekan LOGIN dulu
Buka program wireshark.

Pertama masuk pada Capture – Option atau menekan tombol Capture Interfaces

Kemudian akan muncul tampilan window Capture Interfaces. Pilih Option pada Ethernet yang terpakai /
yang tersambung dengan jaringan dalam kasus ini, Option pada 802.11 b+g Wireless LAN

Pilih interface (network card) yang akan digunakan untuk mengcapture packet. Pilih salah satu yang
benar. Dalam kasus ini saya menggunakan USB Wifi sebagai sambungan ke internet maka yang saya pilih
adalah 802.11 b+g.
Dan pastikan Capture packet in promecious dalam status ON.
Untuk menyimpan record yang tercapture, bisa mengaktifkan kolom File, pada bagian Capture File(s).
Pilih tombol Start untuk memulai merecord packet data yang masuk

Pertama-tama mungkin blom ada record yang masuk. Kembali ke halaman admin blog uad, dan tekan lah
tombol LOGIN nya. Maka akan ada packet yang terecord
Klik tombol stop ( Alt+E ) setelah anda merasa yakin bahwa ada password yang masuk selama anda
menekan tombol start. Pasti akan ada banyak sekali packet data yang merecord. Dari sini kita mulai
menganalisa packet tersebut. Karena yang kita butuhkan adalah men-sniffing password, maka pada
kolom Filter kita ketikkan http untuk lebih memudahkan pengelompokan packet data.

Biasanya login packet terdapat kata login atau sejenisnya. Dalam kasus ini kita menemukan packet
dengan informasi POST /latif_ilkom/wp-login.php HTTP/1.1 …. Klik kanan pada packet tersebut, pilih
Follow TCP Stream
Maka akan muncul informasi tentang packet data yang kita pilih. Disini lah kita bisa menemukan
username dan password dari halaman administrator blog uad. Biasanya ditanda dengan tulisan berwarna
merah.

Jika kita bisa menganalisa packet tersebut satu per satu maka kita akan tau data yang kita cari. Dalam
kasus ini terlihat bahwa username=latif_ilkom dengan password rahasia sudah kita temukan
Sebenarnya masih banyak tools selain WireShark..namun WireShark sudah umum digunakan.
Sekian Tips dari saya..Selamat mencoba....!!!
semoga dapat bermanfaat......
Sumber: rizkynovi99.blogspot.co.id dengan pengubahan

Anda mungkin juga menyukai