ニャル子関数

(」・ω・)」うー!(/・ω・)/にゃー!

なまら名状しがたい冒涜的なニャル子関数を四本立てでお送りします。

第1期 〜 太陽曰く燃えよカオス 〜

最初からクライマックスです。

#include <stdio.h>
#include <unistd.h>

void Nyaruko(int san) {
  
  unsigned int CQC = 839160;
  const char *hotep = 1 & --san ? "\n(」・ω・)」うー!"
                                : "\n(/・ω・)/にゃー!";
  switch (san % 10) {
    case 0: CQC *= 0.6; hotep = "にゃー!"; break;
    case 1: CQC *= 0.2; hotep = "\n\(・ω・)/Let's "; break;
    case 2: CQC *= 0.2; hotep = ""; break;
    case 3: hotep = "\n(」・ω・)」"; break;
  }
  
  printf("%s", hotep);
  fflush(stdout);
  usleep(CQC);
  
  if (0 < san) Nyaruko(san);
}

int main() {
  Nyaruko(30);
}
Nyarlathotep:work nyaruko$ clang nyaruko.c; ./a.out

(」・ω・)」うー!
(/・ω・)/にゃー!
(」・ω・)」うー!
(/・ω・)/にゃー!
(」・ω・)」うー!
(/・ω・)/にゃー!
(」・ω・)」
\(・ω・)/Let's にゃー!

...(以下省略)

元ネタ

アニメ『這いよれ!ニャル子さん』のオープニングテーマが元ネタです。

(」・ω・)」うー!(/・ω・)/にゃー! (うーにゃー)とは【ピクシブ百科事典】

第2期 〜 恋は渾沌の隷也 〜

SAN値が下がりますよ。

#include <stdio.h>
#include <unistd.h>

void Sanch(int SAN) {
  printf("%s", 1 & SAN ? "\(・ω・\)SAN値!"
                       : "(/・ω・)/ピンチ!\n");
  fflush(stdout);
  usleep(379746);
  
  if (--SAN) Sanch(SAN);
  else       puts("\(゜д゜)/ハッ〜!");
}

int main() { Sanch(7); }
Nyarlathotep:work nyaruko$ clang sanch.c; ./a.out
\(・ω・\)SAN値!(/・ω・)/ピンチ!
\(・ω・\)SAN値!(/・ω・)/ピンチ!
\(・ω・\)SAN値!(/・ω・)/ピンチ!
\(・ω・\)SAN値!\(゜д゜)/ハッ〜!

元ネタ

ぬるぬる動く方のニャル子さん二期OPが元ネタです。

\(・ω・\)SAN値!(/・ω・)/ピンチ! (さんちぴんち)とは【ピクシブ百科事典】

\(・ω・\)30インチ!(/・ω・)/30インチ!

這いよる混沌(エスケープシーケンス)

いつもニコニコあなたの隣に這いよる混沌、エスケープシーケンス、です。

#include <stdio.h>
#include <unistd.h>

void Nyaruko(int san) {
  static const char* nyarlat[] = {
    "\r(/・ω・)/にゃー!", "\r(」・ω・)」うー!", "\r(」・ω・)」", "",
    "\r\(・ω・)/Let's", "\b\b\b\b\b\b\b\b\b\bにゃー!"
  };
  if (1 > san--) return;
  int hotep = 3 < san % 10 ? san & 1 : 5 - san % 10 % 4;
  printf("%-33s", nyarlat[hotep]), fflush(stdout);
  usleep(839160 * (3 > hotep ?: 5 > hotep ? 0.2 : 0.6));
  Nyaruko(san);
}
   
int main(int argc, char *argv[]) {
  Nyaruko(30);
}

こいつ、微動だにしねぇですよ。

Nyarlathotep:work nyaruko$ clang nyaruko.c; ./a.out
(」・ω・)」うー!

名伏しがたい変態コードのようなもの

名伏しがたい変態コードのようなものです。大事なことなので二回言いました。

#include <stdio.h>
#include <unistd.h>

void Nyaruko_F(int san) {
  static const char* nya[] = {
    "\n(」・ω・)」うー!", "\n(/・ω・)/にゃー!",
    "\n(/・ω・ )/", "", "\nLet's", "\(・ω・)/にゃー!"
  };
  if (0 < --san) Nyaruko_F(san);
  printf("%s", nya[5 < san % 10 ?  san % 10 - 4 : san % 2]), fflush(stdout);
  usleep(839160 * (7 > san % 10 ?: san % 10 % 3 ? 0.2 : 0.6));
}

int main() { Nyaruko_F(30); }

冒涜的なニャル子関数、メガミックス版です。

Nyarlathotep:work nyaruko$ clang nyaruko.c; ./a.out

(」・ω・)」うー!
(/・ω・)/にゃー!
(」・ω・)」うー!
(/・ω・)/にゃー!
(」・ω・)」うー!
(/・ω・)/にゃー!
(/・ω・ )/
Let's\(・ω・)/にゃー!

...(以下省略)
広告
広告