Quiz Social Media Sederhana Python dengan Modul Random

Hai hai, kebetulan lagi colak colek planpin “Planet Python di Indonesia” lewat twitternya buat ngeadd feed blog ini ke planpinnya, karena mimin kasih info buat updat tulisan yasudah daripada lama kita iseng saja, lalu apa ya dengan python yang akan kita lakukan? hmmm saya kalau pakai python itu modulnya buanyaak banget jadi bingung milih yang mana, tapi ada satu favorit saya yaitu module random, ya senang juga sih kan pakai modul ini bisa buat menyatakan cinta “eh” maksudnya mengasah logika “nah loh”

Modul random ini di python punya banyak fungsi (red:function) seperti randint, shuffle, randrange, random. Lalu apa? hmm kita buat quiz sederhana yuk! sebut saja namanya Quiz Social Media, kita cukup menggunaan randint saja yah, first cobain randint dulu dong pakai console

>>> import random
>>> print random.randint(0,9)
5

It works! oke soal belajar randint belajar sendiri saja ya dirumah :P ini modul paling gampang koq di python, langsung saja ke quiz social media kita, di header seperti biasa kita import modul python kita,

import sys
from random import randint

lalu kita buat lists untuk soal jawaban dan referensi link kita menggunakan lists (ituloh yang kayak array gitu), lists itu bisa mengandung beberapa variabel yah :D

Soal = ["Social Media buatan Mark zuck...? ",
     "Social Media yang eksis dengan awake sleep? ",
     "Microblogging yang gambar burung apa hayo? ",
     "Social Media yang populer dengan photo?",
     "Social Media yang logonya hampir sama dengan Path  ",
     "Social Media buat pekerja itu namanya: ",
     "Planet Python di Indonesia itu hanya: "]
Jawab = ["facebook",
     "path",
     "twitter",
     "instagram",
     "pinterest",
     "linkedin",
     "planpin"]

link = ["http://www.facebook.com",
            "http://Path.com",
            "http://twitter.com",
            "http://Instagram.com",
            "http://Pinterest.com",
            "http://linkedin.com",
            "http://planet.python.or.id/"]

Ok kita sudah buat listnya, kalau orang-orang expert untuk quiz seperti ini biasanya database yang besar gitu kayak mongodb atau pakai json juga bisa, tapi ini masih simple ya, selanjutnya kita akan menggunakan loops statement buat menentukan jawaban benar atau salah, kita add code count = 0 dibawah header tadi jadi seperti ini

import sys
from random import randint

count = 0

Setelah itu tentuka jawaban benar dan salah, dalam hal ini jawabannya sesuai dengan taa urutan pada list kita, dari “Soal”, “Jawab”, “link” ok codenya seperti ini

i = randint(0, 7)
answer = raw_input("Pertanyaan 1 : " + Soal[i])
if answer.lower() == Jawab[i]: #jawaban dengan huruf kecil
    print "Benar" 
    count = count + 1
else: #jawaban salah
    print "Salah \nJawaban Benar : " + Jawab[i]
    print "Pengen Coba? Kunjungi : " + link[i]

lihat code

i = randint(0, 7)

ini adalah jumlah pertanyaan yang sudah kita siapkan tadi, jik pertanyaan anda ada 9 ganti menjadi (0, 9) begitu juga selanjutanya,

Lalu untuk menentukan presentasi nilai, kita akan membuat nilai keseluruhan adalah 100, jika dibagi menjadi 7 pertanyaan itu berjadi 14,…. persen nilai untuk satu pertanyaan, jadi codenya

print "\n %d jawaban benar" % (count)
print "\nNilai : %d persen" % (count / float(7) * 100)

Oke sudah selesai, kita coba jalankan codenya, ini screenshot di laptop saya

Screenshot from 2014-09-21 15:03:00

OK, just it, untuk full source codenya digist ya : https://gist.github.com/ariestiyansyah/4d4152c3e9b447bac74e

See ya Planet Python :P