<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>FizzBuzz on kenji.blog</title><link>http://kenji.blog/id/tags/fizzbuzz/</link><description>Recent content in FizzBuzz on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>id</language><copyright>kenjinote</copyright><lastBuildDate>Fri, 18 Apr 2025 00:58:11 +0900</lastBuildDate><atom:link href="http://kenji.blog/id/tags/fizzbuzz/index.xml" rel="self" type="application/rss+xml"/><item><title>FizzBuzz</title><link>http://kenji.blog/id/p/fizzbuzz/</link><pubDate>Fri, 18 Apr 2025 00:58:11 +0900</pubDate><guid>http://kenji.blog/id/p/fizzbuzz/</guid><description>&lt;img src="http://kenji.blog/p/fizzbuzz/img.png" alt="Featured image of post FizzBuzz" />&lt;h2 id="sebenarnya-apa-itu-fizzbuzz">Sebenarnya, apa itu FizzBuzz?
&lt;/h2>&lt;p>Halo semuanya!&lt;/p>
&lt;p>Hari ini, saya ingin menulis tentang &amp;ldquo;FizzBuzz&amp;rdquo;.&lt;/p>
&lt;p>Baik Anda seseorang yang berkata, &amp;ldquo;Ah, saya tahu itu!&amp;rdquo;, atau seseorang yang berkata, &amp;ldquo;Saya pernah mendengarnya, tapi tidak terlalu mengerti,&amp;rdquo; tolong luangkan waktu sebentar bersama saya. Anda dapat membacanya hanya dalam beberapa menit, dan mungkin Anda akan berpikir, &amp;ldquo;Oh, begitu rupanya.&amp;rdquo;&lt;/p>
&lt;hr>
&lt;h3 id="benarkah-anda-bukan-programmer-jika-tidak-bisa-menulis-fizzbuzz">Benarkah &amp;ldquo;Anda bukan programmer jika tidak bisa menulis FizzBuzz&amp;rdquo;?
&lt;/h3>&lt;p>Secara garis besar, FizzBuzz itu seperti ini.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="nb">range&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">101&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">15&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;FizzBuzz&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">elif&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">3&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;Fizz&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">elif&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">5&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;Buzz&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Ya, ini adalah &amp;ldquo;masalah FizzBuzz&amp;rdquo; yang terkenal itu.&lt;/p>
&lt;p>Anda melihat angka dari 1 hingga 100 secara berurutan,&lt;br>
jika kelipatan 3 maka cetak &amp;ldquo;Fizz&amp;rdquo;, jika kelipatan 5 maka cetak &amp;ldquo;Buzz&amp;rdquo;,&lt;br>
dan jika kelipatan keduanya, cetak &amp;ldquo;FizzBuzz&amp;rdquo;. Sangat sederhana.&lt;/p>
&lt;p>Namun, entah mengapa, ini sering kali dianggap sebagai &amp;ldquo;ujian standar minimum untuk programmer.&amp;rdquo; Ini sering muncul dalam wawancara, dan terkadang ada komentar merendahkan di media sosial seperti, &amp;ldquo;Orang yang bahkan tidak bisa menulis FizzBuzz&amp;hellip;&amp;rdquo;&lt;/p>
&lt;p>Tapi tunggu sebentar.&lt;/p>
&lt;p>Bisakah kita benar-benar mengatakan bahwa &amp;ldquo;tidak bisa menulis FizzBuzz = tidak bisa memprogram&amp;rdquo;?&lt;/p>
&lt;hr>
&lt;h3 id="ini-bukan-tentang-apakah-anda-bisa-melakukannya-tetapi-apakah-anda-memiliki-kondisi-untuk-melakukannya">Ini bukan tentang apakah Anda bisa melakukannya, tetapi apakah Anda memiliki &amp;ldquo;kondisi&amp;rdquo; untuk melakukannya
&lt;/h3>&lt;p>Tentu saja, FizzBuzz membutuhkan pemahaman tentang sintaksis dan pemikiran logis dasar. Jadi, masuk akal untuk menggunakannya untuk &amp;ldquo;memeriksa dasar-dasar.&amp;rdquo;&lt;/p>
&lt;p>Tapi dengarkan.&lt;/p>
&lt;p>Jika lingkungannya berbeda, hasilnya juga akan berbeda.&lt;/p>
&lt;p>Misalnya,&lt;/p>
&lt;ul>
&lt;li>Ketika Anda merasa gugup di depan pewawancara yang baru pertama kali Anda temui&lt;/li>
&lt;li>Ketika Anda tiba-tiba diberi papan tulis dan tidak ada editor kode di tangan&lt;/li>
&lt;li>Ketika Anda tiba-tiba tidak bisa mengingat, &amp;ldquo;Tunggu, apa itu modulo lagi?&amp;rdquo;&lt;/li>
&lt;/ul>
&lt;p>&amp;hellip; Bukankah hal-hal seperti itu terjadi? Bagaimanapun, kita adalah manusia. Saya rasa itu wajar terjadi.&lt;/p>
&lt;p>Jadi, daripada &amp;ldquo;apakah Anda bisa menulis FizzBuzz,&amp;rdquo; saya pikir yang lebih penting adalah &amp;ldquo;apakah Anda bisa membawa diri Anda ke dalam kondisi di mana Anda bisa menulis FizzBuzz.&amp;rdquo;&lt;/p>
&lt;hr>
&lt;h3 id="jebakan-dari-saran-umum-teruslah-berlatih-dan-anda-akan-baik-baik-saja">Jebakan dari saran umum &amp;ldquo;Teruslah berlatih dan Anda akan baik-baik saja&amp;rdquo;
&lt;/h3>&lt;p>Ketika berbicara tentang topik ini, saran &amp;ldquo;Makanya berlatihlah setiap hari!&amp;rdquo; sering kali muncul.&lt;/p>
&lt;p>Tentu saja, benar bahwa latihan berulang kali akan memungkinkan Anda menulis dengan lancar, dan itu sendiri adalah hal yang baik. Namun, jika Anda mulai dengan asumsi bahwa &amp;ldquo;Anda gagal jika tidak bisa menulis FizzBuzz,&amp;rdquo; itu hanya akan berubah menjadi ketakutan.&lt;/p>
&lt;p>Dengan kata lain, mudah untuk jatuh ke dalam pola pikir di mana Anda merasa, &amp;ldquo;Saya melakukan kesalahan = saya tidak berguna.&amp;rdquo;&lt;/p>
&lt;p>Misalnya, pada hari-hari ketika Anda bangun kesiangan, bukankah Anda cenderung berpikir, &amp;ldquo;Saya malas sekali&amp;hellip;&amp;rdquo;? Tapi mungkin tubuh Anda kebetulan sedang sangat lelah.&lt;/p>
&lt;p>Hal yang sama berlaku untuk FizzBuzz.&lt;/p>
&lt;hr>
&lt;h3 id="meski-begitu-fizzbuzz-tetaplah-pertanyaan-yang-sangat-bagus">Meski begitu, FizzBuzz tetaplah pertanyaan yang sangat bagus
&lt;/h3>&lt;p>Meskipun demikian, FizzBuzz bukanlah hal yang buruk.&lt;/p>
&lt;p>Sebaliknya, saya pikir ini adalah pertanyaan yang disusun dengan sangat baik. Aturannya sederhana, dan mudah untuk dikembangkan. Misalnya, jika Anda mengubahnya seperti ini, pemikiran Anda akan menjadi lebih dalam.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="nb">range&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">101&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">output&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">3&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">output&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="s2">&amp;#34;Fizz&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">5&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">output&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="s2">&amp;#34;Buzz&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">output&lt;/span> &lt;span class="ow">or&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Ini adalah contoh yang menunjukkan bahwa &amp;ldquo;Anda bisa menulisnya tanpa if-elif-else.&amp;rdquo; Cukup cerdik, bukan?&lt;/p>
&lt;p>Dengan kata lain, FizzBuzz bukan hanya tentang &amp;ldquo;apakah Anda bisa melakukannya,&amp;rdquo; tetapi juga bisa menjadi titik masuk untuk melihat &amp;ldquo;bagaimana Anda menulisnya&amp;rdquo; dan &amp;ldquo;seberapa jauh Anda memahaminya.&amp;rdquo;&lt;/p>
&lt;hr>
&lt;h3 id="kesimpulan">Kesimpulan
&lt;/h3>&lt;p>Saya rasa kita tidak perlu memberi makna berlebihan pada apakah seseorang bisa menyelesaikan FizzBuzz atau tidak.&lt;/p>
&lt;p>Bahkan jika Anda tidak bisa menulisnya, itu mungkin hanya berarti bahwa &amp;ldquo;saat itu kondisi Anda sedang kurang baik,&amp;rdquo; dan Anda sering kali bisa melakukannya jika memikirkannya baik-baik nanti.&lt;/p>
&lt;p>Jangan terburu-buru, mari kita jalani pelan-pelan.&lt;/p>
&lt;p>Kode ditulis oleh manusia. Karena kita manusia, terkadang kita melupakan sesuatu, dan terkadang kita merasa gugup. Saya pikir cukup untuk menerima hal itu dan bergerak maju sedikit demi sedikit.&lt;/p>
&lt;p>Baiklah, mari bersantai dan menulis beberapa kode hari ini.&lt;/p></description></item></channel></rss>