
無限ループをご存じでしょうか?
無限ループとは、プログラムが同じ処理を繰り返し、終了できない状態になることを言います。
ただし、この無限ループというのは、実際にITエンジニアが開発するシステムで使われることはほとんどないと言っても良いでしょう。
なぜなら、無限ループのプログラムによってコンピュータが永続的に終わることのない処理を行ってしまった場合、電力の無駄遣いになることだけでなく、CPUやメモリがオーバーヒートして最終的には壊れてしまうようなことにもなりかねないからです。
そのため、プログラムの中でループ処理があった場合でも、ある条件で抜けるようになっていたり、一定時間で抜けるようになっていたりと、必ず処理が終了するようになっています。
もし、無限ループになってしまう処理があったならば、それはプログラムの欠陥と言われることが多いと言っても良いでしょう。
この記事では、様々なプログラミング言語で再現できる無限プールのプログラミングコードをショートネタとして8選紹介します。
ちなみに、紹介する言語のほとんどがwhile文のループでの無限ループの例になりますが、for文など様々な方法で再現することができます。この記事では、各言語の一つの言語に対して一例としてのみ記載しておりますので、この記事以外での無限ループを再現したい人は調べてみて下さい。
プログラミング言語の無限ループをショートネタ8選


C言語
while (1) {
printf("明日会社に行きたくない");
}C言語では、while(1)で無限ループを再現することができます。
私は、日曜のサザエさんが終わる頃になると、例のコードのように毎週「明日会社に行きたくない」と心の中で叫んでいます。
本当は仕事なんてしたくないし、会社なんて本当に行きたくないですから…。
でも、どんなに明日会社行きたくないと思っても、月曜の朝は来てしまうんですよね。
なので、日曜日にどんなに明日会社行きたくないと祈っても、この無限ループはbreakで抜けて月曜の朝はやってきてしまうことになります…。
Java
while(true){
System.out.println(“土曜”);
System.out.println(“日曜”);
}
System.out.println(“月曜”);
System.out.println(“火曜”);
System.out.println(“水曜”);
System.out.println(“木曜”);
System.out.println(“金曜”);Javaではwhile(true)を使って無限ループさせます。
例のコードをよく見て下さい。
このコードは土曜と日曜を無限ループして、土曜、日曜の次は、また土曜、日曜、その次も土曜、日曜と永遠に土曜と日曜が繰り返しされるプログラミングコードを作成してみました。
そして、無限ループの外にある月曜から金曜は絶対に来ることはありません。
土曜と日曜しか来ない、そんな1週間ならいいですよね。永久に毎日遊んでいられるでしょう。
JavaScript
while(true) {
console.log(“無能なエンジニア”);
}console.log(“有能なエンジニア”);
JavaScriptでは、while(true)で無限ループさせています。
例のコードでは、無能なエンジニアのまま無限ループが起きているので、永遠に有能なエンジニアになることはできません。
私は無能なエンジニアだからわかることなのですが、勉強もしないでスキルも磨くこともしないと、ずっと無能なエンジニアで有能なつよつよエンジニアになることはできないといっても過言ではありません。
現実問題として、私は40歳まで無能を放置し続けた結果、以下の記事のようなエンジニア人生が積んでしまっている最悪な無能なエンジニアの状況に陥ってしまっておりますので。


Ruby
while true do
p “〇ね”
endRubyではwhile trueで無限ループさせています。原理としては、JavaScriptと同じ方法になります。
例のコードの「〇ね」の〇に隠れている部分が分かりますか?
これは過去に私がブラック企業にいたときに、パワーハラスメントを受けていた時に上司から毎日のように言われていた言葉になります。
毎日言われていたので、まさに私にとっては毎日が地獄で無限ループのような日々でした。


もし、過去の私と同じパワハラを受けている人がいたら、迷わず逃げて転職など検討することをおすすめします。
〇ねと言われる人生が楽しいはずがありません。
パワハラ上司から逃げないと、一生無限ループが続いてしまうかもしれません。いや、その前にメンタルを壊すなどしてループを抜けた先は、病院か闘病生活の始まりになってしまうかもしれません。
そうなる前に、無限ループを抜けるようにしましょう。
Python
while True:
print(“1円拾いました”)PythonでもTrueで無限ループを再現しています。
例のコードでは1円を拾う無限ループになっています。
最初のループでは1円ですが、2円になり、3円になり、………無限ループに最終的という概念はないので、100万円、1億円、1兆円、1京円………とお金はドンドンと増えていきます。
このプログラムが現実世界になったら絶対に欲しいですね。銀行などにこういったバグがあったら大変なことになるでしょうね…。
Go
for {
fmt.Println("一歩進む")
fmt.Println("二歩下がる")
}Goではfor文の条件を指定しないと、無限ループになってしまいますので、実装するときは注意が必要になりますね。
例のコードでは、水前寺清子さんの「三百六十五歩のマーチ」の歌詞(古いか!)である通り、一歩進んで二歩下がっていますね。
つまり、無限ループで一生、一歩も進まず、進まないどころか下がってしまっていますね。でも人生ってそういうものなのかもしれません…。
PHP
while(1){
echo '面接を受ける';
echo '落ちる';
}私が転職活動をしていたときや、SESエンジニアの面談を受けたときに、受けても落ちることを繰り返していた時期がありましたので、まさに無限ループに陥ったような日々でした。
ちなみに、私は無能なエンジニアなので、以下のような無能を炙り出すような面接を採用試験やSESメンバーの派遣受け入れ試験でやられたら一発で落とされること間違いなしなので、例のコードの無限ループに本当に陥って抜け出せなくなってしまうかもしれません…。


R言語
repeat {
print("好き❤")
}R言語ではrepeatを使って無限ループを再現することができます。ちなみにR言語でもwhileで無限ループされることは可能です。
例のコードでは、好きを無限に出力するコードになっていますが、自分が好きな人だったら無限に好きと言われたら嬉しいですよね?
でも、逆に嫌いな人やストーカーから無限に好きと言われたら嫌というか、怖いですよね…。
人間の感情って本当に不思議なものですね?
まとめ
この記事では、いろんなプログラミング言語の無限ループをショートネタでまとめてみました。
ほとんどのプログラミングではwhileでループさせて1やtrueで無限ループを再現することができることがお分かりいただけたと思います。
しかし、冒頭でも説明しましたが、無限ループはオーバーヒートを起こしてしまうのでプログラミングで実装することはありません。無限ループを引き起こさないように、十分に気を付けてプログラミングするようにしましょう。
また、この記事では、無限ループをショートネタとして様々なコードで例を書いてみましたが、こういった無限ループのショートネタで面白かった場合にはX等のSNSでバズる可能性があるので、ぜひ、無限ループショートネタにも挑戦してみて下さい。





