Sulap Matematika – Radar Angka

Siapa yang bilang matematika itu tidak menyenangkan? Banyak memang yang bilang. Hehehe… Tapi jangan khawatir, tulisan ini akan menunjukkan matematika juga bisa mengasyikkan. Sulapnya sederhana, tetapi bisa membuat orang terkesan.

Ilustrasi:

Ada 7 kartu berisi deretan angka-angka. Minta seseorang memikirkan sebuah angka dari 1 hingga 100. Minta ia untuk mencari angka yang ia pikirkan dan beritahu di kartu mana saja angka itu berada. Dengan sekejap Anda bisa menebak angkanya dengan tepat.

Berikut adalah daftar kartu-kartunya.

Kartu Ke-1
Kartu Ke-1
Kartu Ke-2
Kartu Ke-2
Kartu Ke-3
Kartu Ke-3
Kartu Ke-4
Kartu Ke-4
lima
Kartu ke-5
Kartu ke-6
Kartu ke-6
Kartu Ke-7
Kartu Ke-7

Bagaimanakah cara menebaknya? Mudah sekali! Jumlahkan saja angka terkecil dari semua kartu yang berisi angka yang dipikirkan oleh kawanmu.

Contoh:

Jika temanmu mengatakan angka yang ia pikirkan ada di kartu ke-1 dan kartu kartu ke-7, maka angkanya adalah 65. Cara mengetahuinya adalah dengan menjumlahkan angka terkecil di kartu ke-1 yaitu 1 dan angka terkecil di kartu ke-7, yaitu 64. Jumlahnya adalah 1 + 64 = 65.

Ingin mencobanya?

  1.  Cetak ketujuh kartu di atas menjadi 7 kartu yang terpisah
  2. Minta temanmu memikirkan sebuah angka dari 1-100 lalu pikirkan dan cari di masing-masing kartu
  3. Minta temanmu memberikan kartu yang ia bilang ada kepadamu
  4. Jumlahkan angka terkecil di masing-masing kartu, itulah angka yang benar

Ingin lebih mengesankan?

Tutup matamu dengan sapu tangan atau kain tebal. Minta temanmu menyebutkan nomor kartu di mana angka yang ia pikirkan ada.
Angka terkecil dari setiap kartu dapat dicari dengan rumus 2 pangkat (nomor kartu – 1).
Misal ada di kartu 1 dan kartu 7, maka angka yang dipikirkan adalah 2^(1-1) + 2^(7-1) = 2^0 + 2^6 = 1 + 64 = 65.
Jika ada di kartu 2 dan kartu 3, maka angka yang dipikirkan adalah 2^(2-1) + 2^(3-1) = 2^1 + 2^2 = 6.

Ingin lebih mengesankan lagi?

Buang kartu ke-1, ganti pertanyaannya menjadi angkanya ganjil atau genap? Jika ganjil berarti ada di kartu pertama. Genap berarti tidak ada.

Mudah kan?

Tebak-tebakan ini aku temukan waktu kelas 4 SD, ketika ayahku memintaku membelikan koran Kompas. Di toko buku aku melihat permainan Radar Angka ini, lalu tertarik dan membelinya. Aku pelajari dan mencari polanya.

Sebenarnya batasan angka bisa dikembangkan menjadi tak terbatas dan jumlah kartu pun bisa dibuat sebanyak mungkin.

Pola untuk menghasilkan angka tersebut adalah:

  1. Kartu ke-n memiliki angka terkecil 2^(n-1)
  2. Ada n angka berurutan dalam setiap kartu dan jarak satu barisan yang urut ke baris urut berikutnya adalah n + 1

Contoh:

Di kartu ke-1, angka terkecil adalah 2^(1-1) yaitu 2^0 = 1. Ada 1 angka urut, dan jaraknya ke angka urut berikutnya adalah 1 + 1. Sehingga barisannya adalah 1, 3, 5, … (barisan bilangan asli yang ganjil).

Di kartu ke-3, angka terkecil adalah 2^(3-1) yaitu 2^2 = 4. Ada 4 angka urut, dan jarak ke barisan angka urut berikutnya adalah 4 + 1. Sehingga barisannya adalah 4, 5, 6, 7,     12, 13, 14, 15,      20, 21, 22, 23, ….

Ingin menghasilkan angka secara otomatis yang lebih besar? Buat kamu yang mengenal pemrograman Pascal, bisa melihat source code petunjuknya di sini.

Selamat bermain sulap dan mulai mencintai Matematika 🙂

Cocok untuk kegiatan Pramuka, Pesta Ulang Tahun, Belajar Matematika, Jam Pelajaran Kosong, Memikat Wanita Pujaan, dan sebagainya 🙂

Coders let you Coding Using iPad

Dari dulu mencari interpreter atau compiler yang jalan di mobile phone atau gadget. Dulu waktu masih memakai Nokia E51 aku menginstall Python. Tapi codingnya susahnya amit-amit jabang vampire. Ngeselin abis. Apalagi editornya menggunakan semacam notes di E51 yang spacingnya susah dilihat bedanya untuk indentasi (tahu sendiri python kayak apa). Ugh…

Trus kenapa sih coding harus pake gadget? Kenapa gak pake laptop sekalian? Notebook atau gimana gitu? Ya karena mesti keluar duit lagi kan beli laptop mini segala? Nah berhubung sekarang sudah tidak lagi menggunakan Nokia, aku mencari aplikasi yang memungkinkan aku untuk coding. Buat apa? Buat mengasah otak sambil menunggu kereta di stasiun. Adalah situs http://projecteuler.net yang menyediakan soal-soal menantang tentang matematika yang bisa disolve dengan bantuan pemrograman. Akhirnya setelah googling, aku menemukan HandBasic yang free, namun tidak bisa menyimpan code yang dibuat. Setiap kali keluar, hilanglah itu memory. Untuk coding pemula, benar-benar lumayan. Setidaknya anakku Rayyan yang kelas 2 SD sudah bisa coding mencari luas persegipanjang dan  keliling segitiga di atas kereta waktu perjalanan ke Tegal.

Nah, dapat tautan dari jawara Pascal Bee, tentang adanya aplikasi dengan bahasa pemrograman Lua di iPad. Langsung aku beli. Ssebenarnya yang membuatku ingin membelinya adalah bagaimana dengan gadget mobile bisa tetap bikin program biarpun simple, untuk mengatasi rasa haus memecahkan soal di situs macam Euler. Sebagai uji coba, aku pilih problem nomor 53 yang belum pernah aku kerjakan. Soalnya adalah sebagai berikut:

There are exactly ten ways of selecting three from five, 12345:

123, 124, 125, 134, 135, 145, 234, 235, 245, and 345

In combinatorics, we use the notation, 5C3 = 10.

In general,

nCr =
n! /
r!(n−r)!
,where r ≤ n, n! = n×(n−1)××3×2×1, and 0! = 1.

It is not until n = 23, that a value exceeds one-million: 23C10 = 1144066.

How many, not necessarily distinct, values of  nCr, for 1 ≤ n ≤ 100, are greater than one-million?

Nah itulah soal yang harus dipecahkan. Dan dalam sekali hit, alhamdulillah, algoritmanya langsung benar. Memang tidak optimized, misal tidak menggunakan segitiga pascal dsb. Tapi aku justru ingin menguji kemampuan iterasi dan rekursif di iPad dengan aplikasi ini. Jadi aku menggunakan simple brute force dengan sedikit heuristic.

Euler53 solved using Lua
Euler53 solved using Lua

Yang menarik dari aplikasi ini:

  • Untuk soal Euler 53, komputasi sangat cepat
  • Title dan description program dibuat sangat jelas
  • Panduan lumayan membantu, namun untuk beberapa kasus tetap membutuhkan googling untuk mencari informasi tertentu, misal kata kunci local untuk recursive function
  • Bisa coding di mana saja tanpa perlu laptop atau notebook
  • Berguna dan mudah dipakai oleh pemula

Yang kurang atau bisa ditingkatkan:

  • Help yang lebih lengkap
  • Fungsi-fungsi eksternal dengan library yang lebih lengkap, syukur-syukur bisa mengakses API iPad
  • Editor yang lebih canggih (code completion, dsb)
  • Penjelasan dan panduan ketika error

Hasilnya adalah:

Hasil Euler 53
Hasil Euler 53

Jadi buat kamu-kamu yang emang doyan coding di mana saja, Coders merupakan aplikasi di iPad yang sangat layak untuk dimiliki.

Wolfram Mathword

Tahu situs ini dari Umar, dan banyak dapat ilmu tentang indahnya matematika di sini. Ini bukan search engine, tapi situs yang bisa membantu kita menjawab fakta ilmiah, public known, dan semua hal yang berkaitan dengan ilmu pengetahuan. Yang bikin ketawa, dia punya teorema Pizza yang berbunyi, volume pizza dengan jari-jari z dan ketebalan a memiliki rumus:

pi . z . z . a

Weisstein, Eric W. “Pizza Theorem.” From MathWorld–A Wolfram Web Resource. http://mathworld.wolfram.com/PizzaTheorem.html

Wah keren banget deh situsnya. Coba masukkan : x + 3 = 10. Dia akan bilang x yang mungkin = 7. Sampe ke yang kompleks banget!

Kalau ditanya president of indonesia, dia akan bilang Susilo Bambang Yudhoyono. Kapan dia mulai menjabat juga dikasih tahu. Jadi jawaban dia bukan berupa link, tapi memang jawaban dari konowlege yang ada di servernya.

Coba deh sekarang di http://www.wolfram.com

Level 1 di ProjectEuler…

Alhamdulillah, akhirnya bisa mencapai level 1 di Project Euler. 1 Level bisa diraih begitu bisa menyelesaikan setiap 25 soal. Jadi dari 25 soal yang baru kupecahkan dari 241 soal yang ada, baru sekitar 10%. Soal terakhir yang aku pecahkan adalah soal nomor 48.

Akhirnya bisa nongkrong di level 1 hehehe…

Yang sudah selesai adalah soal 1-22, 25, 48, dan 67.
Dari semua soal so far, yang sangat menggairahkan untuk dipecahkan adalah soal nomor 11, 15, 18, dan 67.

Setelah menyelesaikan soal nomor 48, mendapat kalimat:

Congratulations, the answer you gave to problem 48 is correct.

Bravo, wishknew! Now that you have solved 25 problems you have achieved what 79.51% of members have failed to do and have advanced to level 1. Good luck as you continue.

Statistik lengkap bisa dilihat di sini.

Tetap semangat, for trying next challenging questions!

Buat Anda yang Suka Tantangan Matematika (biar gak cepet pikun)

Suka matematika? Programming? Suka iseng, apa yah yang bisa aku buat untuk melatih kemampuan programmingku? Nah situs untuk memuaskan dahaga Anda bisa dilihat di sini.

Ya udah kalau males ngeklik linknya, ini aku copy pastekan:

Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. Although mathematics will help you arrive at elegant and efficient methods, the use of a computer and programming skills will be required to solve most problems.

The motivation for starting Project Euler, and its continuation, is to provide a platform for the inquiring mind to delve into unfamiliar areas and learn new concepts in a fun and recreational context.


Who are the problems aimed at?

The intended audience include students for whom the basic curriculum is not feeding their hunger to learn, adults whose background was not primarily mathematics but had an interest in things mathematical, and professionals who want to keep their problem solving and mathematics on the edge.


Can anyone solve the problems?

The problems range in difficulty and for many the experience is inductive chain learning. That is, by solving one problem it will expose you to a new concept that allows you to undertake a previously inaccessible problem. So the determined participant will slowly but surely work his/her way through every problem.


How do I know where should I start?

That depends on your background. In the Problems table you will be able to see how many people have solved each problem. As a general rule of thumb the more people that have solved it, the easier it is.


I’ve written my program but should it take days to get to the answer?

Absolutely not! Each problem has been designed according to a “one-minute rule”, which means that although it may take several hours to design a successful algorithm with more difficult problems, an efficient implementation will allow a solution to be obtained on a modestly powered computer in less than one minute.


Does it matter if it takes more than one minute to solve?

Of course not, but that should provide the impetus to return to the problem and see how you can improve your approach. But remember that once you’ve solved a particular problem you will be able to access a thread relating to that problem and it is here that you may be able to pick some tips from others that have solved it.


I solved it by using a search engine, does that matter?

Making use of the internet to research a problem is to be encouraged as there could be hidden treasures of mathematics to be discovered beneath the surface of many of these problems. However, there is a fine line between researching ideas and using the answer you found on another website. If you photocopy a crossword solution then what have you achieved?


I’ve checked my program ten times now and I keep getting told my answer is wrong! Have you made a mistake?

With newly released problems it is quite possible that a small error may have slipped through the net, or maybe the wording is slightly ambiguous and the problem has not been explained as well as it could. However, when so many people have hit the target and one marksman misses ten times on the run, he/she can hardly shoot his/her own foot and conclude that because the gun is working properly the fault must lie in the target.


Do you have any hints on solving problems?

Read the details of the problem very carefully and make note of any example cases given. Experiment with pencil and paper to get a feel for the ideas behind the problem. If the ideas are new to you, use the internet or books to get some background; the problem should contain clues as to what to look-up. Try writing a program to generate for simple cases and check that your output agrees with the example cases; this will confirm you’ve understood the problem and are heading in the right direction. Based on this try to extrapolate to estimate the time it will take to get the final answer and if it’s going to take significantly more than a minute rethink your strategy.


How did it all start?

Project Euler was started by Colin Hughes (a.k.a. euler) in October 2001 as a sub-section on mathschallenge.net. Who could have known how popular these types of problems would turn out to be? Since then the membership has continued to grow and Project Euler moved to its own domain in 2006.

=======================================================================================

Contoh soalnya seperti ini:

Add all the natural numbers below one thousand that are multiples of 3 or 5.

Masalahnya, ada buanyak sekali cara untuk mencari jawabannya. Tergantung algoritma, formula, atau bahkan bahasa pemrograman yang dipakai!

Untuk haskel, dari command linenya cuma butuh :
sum [3,6..999] + sum [5,10..999] – sum [15,30..999]

Edan nggak?

Padahal yang standar kan :

var
i, result: integer;
begin
i := 0;
result := 0;
while i < 1000 do
begin
if (i Mod 3 = 0) or (i Mod 5 = 0) then
result := result + i;
Inc(i);
end;
writeln(result);readln;
end.

Hahaha! Seru abis deh! Thx buat Peter yang udah kasih tahu.

Situs lainnya adalah topcoder.com dan acm.uva.es.

Mau? Mau? Mau?

Cinta Phytagoras

Dua belas tahun yang lalu
Kupunya kekasih cantik, namanya B – sebut saja begitu
Kulitnya putih, matanya jeli, parasnya ayu

Kami berdua bagaikan faktor bilangan prima
Hanya aku yang satu dan dirinya menjalin cinta
Tak terbagi oleh yang lain, penuh tawa dan canda

Luasnya lingkaran kasih kami menyentuh pelangi
Berbanding lurus dengan jejari hati – hari demi hari
Bergandengan tangan menyusuri keliling bumi
tak pernah berhenti


Hingga datang seorang pria durjana
Tanpa rasio dan logika
Bagaikan sisi yang miring dalam segitiga
Membuat phytagoras bangkit dari kuburnya
Tertawa girang dan berteriak “Eureka!”
Membuat cinta kami hancur lebur porak-poranda

Kini kami tak lagi garis yang lurus
Patah di tengah – berpenyiku tak terurus
Cinta kami terkotak-kotak dalam sebuah kubus

Inilah tragedi cinta dalam hidupku
Bagai integral lipat tiga mengusir rindu
Selamat tinggal B, kekasihku yang dungu…Didedikasikan untuk dunia matematika yang selalu kucintai dan mantan kekasihku yang pernah kucintai…