TRASH-NEWS 3の倍数と3の付く数字だけアホになるJavaScript関数

順路
  1. ホーム
  2. 2008年
  3. 06月
  4. 07日
  5. この記事 [現在地]
Search?
お知らせ
ここ数日更新が滞っていますが…… (2008/04/13 13:31)
4月より社会人となったため、時間の作り方がいまいちつかめないため、不定期の更新となります。まぁ……ニコニコメーカーでもお楽しみください!
1 2 3

3の倍数と3の付く数字だけアホになるJavaScript関数

関連ページ
  1. JavaScript
TRASH-NEWSは
いろいろと紙一重なニュースサイトです
初出時刻
2008年06月07日 19時03分 投稿
最終更新時刻
2008年06月07日 20時18分 改訂
  • この記事をはてブする
  • Yahoo!ブックマークに登録

超今さらながら3の倍数と3の付く数字だけアホになるネタに興味がそそられたので(プログラミング的な意味で)、JavaScriptで再現してみます[via : 世界のナベアツ]。

3の倍数と3の付く数字だけアホになるJavaScript関数
var Count = 1; CountChar = new String(Count); var Is_Shout = 0; if(Count % 3 == 0){ Is_Shout = 1; }else{ for(i = CountChar.length; i != -1; i--){ if(CountChar.charAt(i) == 3){ Is_Shout = 1; break; } } }

※解説のために処理の流れを書いただけなので↑だけでは何も反応しません。実際にブラウザなどで動作を見たい場合はIs_Shout(フラグ)が1の場合に強調表示させるなどしてください。このページの末尾で実際に"3の倍数と3の付く数字だけアホになる"ようすをデモ公開しています。

上記のプログラムではまず数値が3の倍数の場合Is_Shoutを1にします(Is_Shoutをフラグと見立てる)。もしそうでない場合はcharAt関数で一文字ずつ抜き出して(1,000の位、100の位、10の位、といったように)、3という文字が現れ次第Is_Shoutフラグをたたせます。

ここでもうひとパターン。『3の付く数字』の判別方法を変えてみました。

3の倍数と3の付く数字だけアホになるJavaScript関数 (別パターン)
var Count = 1; CountChar = new String(Count); var Is_Shout = 0; if(Count % 3 == 0){ Is_Shout = 1; }else{ i = Count; while(i > 0){ if(i % 10 == 3){ Is_Shout = 1; break; } i /= 10; } }

文字を抜き出していくのではなく、10で割ったときの余りが3であるかをすべてのケタについて試していきます。さきほどのパターンが数値を文字列として扱っているのに対し、あくまでこちらは数学的に試みました。

どちらのパターンがプログラムとして優れているのかは文系日曜プログラム野郎なのでさっぱりわかりません。ベンチマークをとってみて結果がわかった方、実際に試さなくてもプログラムを見ただけでどっちが早いかがわかる方、そもそももっと良い方法があるじゃねーかwという方はどうぞご指摘ください~。

さて以下にこの処理の流れを組み込んだデモンストレーションを設けました。毎秒カウントが進み、3の倍数と3の付く数字だけアホになります。実際にアホにさせる(サアッーン、とか読み上げる)わけではありませんが、まぁ視覚的に世界のナベアツを再現することは出来たと思います。

世界のナベアツをデモンストレーション

  • 1

以下ソースコード。EchoCount関数の部分で先述の2つのコードを使っています。ちなみに放置すると危険かもしれないので最悪でも1,000万秒後に自動に止まるようにしています。やはり1万でストップさせることにしました。

世界のナベアツデモンストレーションのコード(サンプル)
var Count = 1; var ModeSwitch = 1; MyDate = new Date(); var StartUT = MyDate.getTime(); function EchoCount(){ Count++; var ListLayer = document.getElementById('JS_TriTryList'); CountChar = new String(Count); var Is_Shout = 0; if(Count % 3 == 0){ Is_Shout = 1; }else{ if(ModeSwitch){ for(i = CountChar.length; i != -1; i--){ if(CountChar.charAt(i) == 3){ Is_Shout = 1; break; } } }else{ i = Count; while(i > 0){ if(i % 10 == 3){ Is_Shout = 1; break; } i /= 10; } } } if(Is_Shout == 1){ CountChar = '<strong style="color:#cc0000;font-size:1.6em;">' + CountChar + '</strong>'; } var li = document.createElement('li'); li.innerHTML = CountChar; ListLayer.appendChild(li); if(Count < 10000){ setTimeout("EchoCount()",1000); } }

これで時計とか作ったら面白いかもしれんね。

サイト内検索
検索する
このサイトについて
  • サイト名 : TRASH-NEWS
  • 分類 : ニュースとネタのサイト
  • ジャンル : 井戸端からアレゲまで
  • もっと詳しく見る
最近の記事
08月31日の記事
  1. Quad+GeForce 9600GTの新PCでタイムリープぶーとべんちしてみた
08月28日の記事
  1. 初音ミクの星間飛行や振り付けランカちゃんなど最近見たニコニコ動画
08月25日の記事
  1. 初音ミクと小林オニキスさんの新曲『ORCA』がまたも素晴らしい
08月19日の記事
  1. こもんちゃん(ニコニ・コモンズ)で解説する『PhotoshopCS3でアニメgifを編集する方法』
08月18日の記事
  1. ブルースクリーン・ブルース
08月17日の記事
  1. 夏コミのために有給を取ったにもかかわらず
07月16日の記事
  1. マルタと釘宮のために買ったWii、Priceless.
07月12日の記事
  1. 2008年7月に発売されるマンガのスケジュール表
07月06日の記事
  1. I'veコンピアルバム 『master groove circle』など気になったニュース
07月05日の記事
  1. テイルズオブ釘宮やSound Blaster Play!など購入検討物リスト
日刊人気記事ランキング
2008年09月05日のぶん
1
Windows XP SP3インストールで不具合が起きることが発覚
213
2
XP SP3における不具合報告と32bitOSでのメモリのRAMDisk化の話
54
3
画像解析系ジェネレータ・BannerCodeBattler2(仮)着手開始
45
4
Windows XPのSP3は思いのほかスゴいらしい
39
5
テイルズオブ新作『テイルズ オブ ヴェスペリア』のまとめと推察
30
6
「テイルズ オブ」シリーズが全世界で売り上げ1,000万本突破
20
7
I'veコンピアルバム 『master groove circle』など気になったニュース
16
8
マリオっぽい自作のゲーム改めしょぼんのアクション公開開始
16
9
アリゾナ在住のアニメ大好きGrumpyJiisanなど最近見たニコニコ動画
16
10
ハニカム1巻や花やしきの住人たち1巻など最近読んだマンガの感想
16

2008年09月06日 0時更新

人気記事ランキング

カテゴリ(折畳表示)
ニュース・ネタ
サブカテゴリを開く
俺研究舎
サブカテゴリを開く
お知らせ
サブカテゴリを開く
特集・企画
サブカテゴリを開く
管理人近況
サブカテゴリを開く
カスタムアーキテクチャ
1回めのようこそ!
ゲストさん
  • 文字の大きさ : 12px
  • フォント : MS Pゴシック
  • レイアウト : 3段組
  • カスタムする
カレンダー
2008年6月
«  05月 - 07月  »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
管理人について
管理人 : 八満かシアン
文系なのにエンジニア、なんてこったい(八満のほう)
今頃たぶん聴いている曲
夏草の線路 -Album Mix- by KOTOKO to 詩月カオリ
月別アーカイブ
2008年
2007年
最近記事に掲載した画像
タイムリープぶーとべんち本編開始前の寸劇でKO
タイムリープぶーとべんち本編開始前の寸劇でKO
タイムリープぶーとべんちでも比較的驚きの結果
タイムリープぶーとべんちでも比較的驚きの結果
Vista標準搭載のエクスペリエンスインデックススコアで性能評価
Vista標準搭載のエクスペリエンスインデックススコアで性能評価
ラタトスクとWiiはマルタと釘宮のために存在している
ラタトスクとWiiはマルタと釘宮のために存在している
夏海ケイ作画『うみねこのなく頃にEP1』が面白い
夏海ケイ作画『うみねこのなく頃にEP1』が面白い
画像に関するリンク
ユーティリティ
RSSフィード
ソーシャルブックマーク
  • iGoogle
  • はてなアンテナにTRASH-NEWSを追加する TRASH-NEWSのはてなブックマーク数 この記事を含むはてなブックマーク
サイトプロフィール
Powered by
  • Movable Type 4.1 + [XHTML + CSS + JavaScript] + PHP
  • TRASH-NEWS / Hachiman_Cian 2007-
このページについて
題名
3の倍数と3の付く数字だけアホになるJavaScript関数
内容
  • 超今さらながら3の倍数と3の付く数字だけアホになるネタに興味がそそられたので(
TRASH-NEWS ロゴ
TRASH-NEWS ロゴ
TRASH-NEWS : http://www.trash-news.net/