サイト内にPRを含みます

【め~ろぐ】夏休みの自由研究 中野キャンパスのタイルはバーコードになっている…!?

みなさんお久しぶりです!今週のめ~ろぐ担当、9期生のうべしょーです。

今回の時は遡り2か月前、メイキョクのインスタにこんなDMが…

明治大学中野キャンパスに通う学生です。1つ七不思議みたいなことが本当かどうか聞きたいです。明治大学中野キャンパスの高層棟の2.3階の廊下はバーコードのような作りになっていて、読み取ったら明治大学ホームページが出てくるみたいに聞いたのですが、本当かどうか知っていますか?

なにそれ気になる!!!

試験期間に来ていた質問だったのですが、せっかく夏ですし調査して自分と質問者だけの中で完結してもなぁ…と思っていたので、この際自由研究にしてより多くの人に見てもらおうと思った次第です。

さあ行きましょう!

データ集め

さぁ中野キャンパスにやってきました!早速二階に上っていきます。

こちら二階です!中野キャンパスはこんな感じに屋内のタイルがすべて縞状になっています。
このパターンが明治大学のバーコードに…?人が少ない朝の早いうちに手作業で数えました!

2・3階だけ調べる予定でしたが1階~5階の全部がタイルパターンになってました

地道にパターンをメモし、次にやるのは…

そう!バーコード作成のための

プログラミングですねッ!!!

バーコードを作ろう

現代にはChat GPTという素晴らしいツールがあります。これを使えばどんなにめんどくさいプログラムも一瞬で完成!

でもでも私一応総合数理学部ですし?理系の端くれではありますし?これくらいのプログラムなら春に授業で習った範囲で作れるので自分自身の力d

文明の利器には勝てませんでした…

流石に楽すぎるよ、要望送れば大体求めてるもの来ちゃうんだもん(責任転嫁)

プログラミングわかる皆さんもまだ何もわからない皆さんも、こういうプログラムが必要だけど自分では書けなかったりめんどくさかったりの時にAIをつかうの、お勧めです。無料版だけでなんとかしたい!という人にはGeminiのPro拡張モードが一番安定した解答を送ってくれるのでお勧めですよ。

出してくれたプログラムをちょちょいっと変更して今回の検証のために十分なものが出来上がりました。さあ実験だ!

実験!!!

今回、検証用のバーコードリーダーとしてTea Cappsのスマホ用アプリ「QRコード&バーコードリーダー」を使用しています。

それではこちらが先ほどプログラムから出力したタイルパターンです。

総数生ならおなじみ、processing4です

…おぉ、かなりバーコードっぽい!

バーコードリーダーをかざしてみると…?

うーん…反応なし…

3階や他のフロアのタイルパターンでもためしたのですが、同様にダメでした…

説立証ならず…?

今回の検証で、中野キャンパスのタイルパターンを明治大学のホームページのバーコードとして再構成することができませんでした…

しかし!

まだあきらめきれません!もしかしたら数え間違えているかもしれない!(そうだったら本当にゴメンなさい!)どこかで自分の大きな見落としがあったかもしれない!

そこで…

以下にタイルパターンの部分のみを空にしたコードを貼りました!皆さん!暇なときにタイルを数えてみませんか!

私の夏休みの研究は以上です。みなさんも日常で気になったけど時間を削ってまで確かめるほどじゃないな…ってこと、ありますか?そのギモン、わたくしうべしょーが検証しますよ。

最近のめ~ろぐはこちらから↓↓

【め~ろぐ】くら寿司×ちいかわコラボ行ってきた!レポート🍣💖
【め~ろぐ】ホームシック留学記 Part1
【め~ろぐ】箱根ドライブ!!!!!!!
【め~ろぐ】AIに(ほぼ)1日の行動を全て委ねてみた🪂

使用したコード

int unit = 5;  // 1マスの横幅

int[][] data =
{
 //ここにデータを挿入
};

void setup()
{
  size(750, 150); //ウィンドウサイズを指定

  background(255); //背景を白に指定
  noStroke(); //枠線を消去

  int x = 0;

  for (int i = 0; i < data.length; i++) //iを1ずつ増やす
  {
    int black = data[i][0];
    int white = data[i][1];

    // 黒
    fill(0);
    rect(x, 0, black * unit, unit * 30 );

    x += black * unit;

    // 白
    fill(255);
    rect(x, 0, white * unit, unit * 30);

    x += white * unit;
    
  }
  
  // 最後に1マスだけ黒に指定
  fill(0);
  rect(x, 0, unit, unit * 30);
  x += unit;
  
  // 残りは白に指定
  fill(255);
  rect(x, 0, width - x, unit * 30);
}

コメント

タイトルとURLをコピーしました