もり ひろゆきの日々是勉強

日々思ったことやIT関連のメモなどをのほほんと綴っていきたいと・・・。(^^;

ホーム 連絡をする 同期する ( RSS 2.0 ) Login
投稿数  1920  : 記事  12  : コメント  16323  : トラックバック  163

ニュース

Microsoft Innovation Center

MICでは各種無償セミナーを実施しています。
こちら
そして、スピーカーは僭越ながら私がお話させていただいております。
一生懸命努めさせていただきますので、よろしければご参加くださいm(__)m

平行運用はじめました。

  • 現在、こちらのほうで平行運用を行っております。

自己紹介

  • もり ひろゆき(森 博之)と申します。

    極東IT Engineersというコミュニティの代表です。

    本業は東京でソフトウェア開発のお仕事をしております。いわゆるDeveloperですね(^^;

    仕事ではVB,C#といろいろと渡り歩いてはおりますが、主に.NET系の業務アプリの開発が多いです。

    というか仕事となったら必死で何でも勉強しますが(^^;;;;

    最近ではMicrosoft Innovation Centerで講師もさせていただいておりますが、撃たれ弱いのでお手柔らかにお願いしますm(__)m

    まったく関係ありませんが、たこ焼き機も持っています。 関西人です。

    エントリの内容は私が個人的に収集した情報を元に書いていますが、あくまで個人的なメモ用途ですので内容の正確性を保証するものでありません。あらかじめご了承くださいm(__)m

Microsoft MVP

MCP


  • 70-316 Developing and Implementing Windows-based Applications with Microsoft Visual C# .NET and Microsoft Visual Studio .NET

    70-536 Microsoft .NET Framework 2.0 - Application Development Foundation


  • MCTS: :.NET Framework 2.0 Web アプリケーション
    70-528 Microsoft .NET Framework 2.0 - Web-based Client Development


  • MCTS: Microsoft SQL Server 2005
    70-431 Microsoft SQL Server 2005 - Implementation and Maintenance

Wankuma MVP


  • Wankuma MVP for OOO(= Original Object-Oriented)

iKnow!

etc.

  • 人気ブログランキング - もり ひろゆきの日々是勉強

    スカウター : もり ひろゆきの日々是勉強

    あわせて読みたい

書庫

日記カテゴリ

リンク

ネタ元1:こんなんでモチベーション上がんのかよ

ネタ元2:体調と講演とFizzBuzz問題と初音ミクと自作曲「Happy! Lucky! Scripting!!」

【問題】
1から100までの数を表示するプログラムを書け。
ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、
3と5両方の倍数の場合には「FizzBuzz」とプリントすること。

【問題】
1から100までの数を表示するプログラムを書け。
ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、
3と5両方の倍数の場合には「Dozz」とプリントすること。

   1:  using System;
   2:   
   3:  namespace FizzBuzz
   4:  {
   5:      class Program
   6:      {
   7:          public static string SayFizzBuzz(int n)
   8:          {
   9:              if (n % 3 == 0 && n % 5 == 0)   return "FizzBuzz";
  10:              if (n % 3 == 0)                 return "Fizz";
  11:              if (n % 5 == 0)                 return "Buzz";
  12:   
  13:              return n.ToString();
  14:          }
  15:   
  16:          public static string SayFizzBuzzDozz(int n)
  17:          {
  18:              if (n % 3 == 0 && n % 5 == 0)   return "Dozz";
  19:              if (n % 3 == 0)                 return "Fizz";
  20:              if (n % 5 == 0)                 return "Buzz";
  21:   
  22:              return n.ToString();
  23:          }
  24:   
  25:          public static void Main(string[] args)
  26:          {
  27:              for (int n = 1; n <= 100; n++)
  28:              {
  29:                  Console.WriteLine("{0} FizzBuzz Said [{1}] FizzBuzzDozz Said [{2}]", 
  30:                      n, SayFizzBuzz(n), SayFizzBuzzDozz(n));
  31:              }
  32:          }
  33:      }
  34:  }

ほんま、素直に書いています(^^;

私はそんなに頭がよくないのでかっちょいい書き方ができないのが申し訳ないですが、それでもやはり素直に書くのが一番シンプルな気もしています(^^;

あきませんでしょうか?(^^;

投稿日時 : 2007年11月5日 5:29

コメント

# re: FizzBuzz問題。 2007/11/05 8:16 ながせ
Programは一見で見て理解できるように作るのが一番ですから^^

# re: FizzBuzz問題。 2007/11/05 8:34 ゆーち
あちきだと、if のコードはコメントとして残すくらいで、やはりεπιστημηさんが示したような書き方をします。
(同じわり算を2度計算しないようにします。)
CPUわり算のコストは相変わらず高いんじゃないかなぁと・・・
どーしても昔からのクセでね(w

# re: FizzBuzz問題。 2007/11/05 9:36 まさる
わたしはひろえむさんとほぼ同じコードになりますね。
ほんのちょっと変えるなら、"FizzBuzz"のifの中身を「n % (3 * 5) == 0」にするくらいでしょうか。
でも、そうすると意味が分からなくなる人々も大勢いるのが悲しいところ。

# re: FizzBuzz問題。 2007/11/05 11:02 ひろえむ
#ながせさん

ですよねー♪

#ゆーちさん

んー、まぁ、唯一の正解というのはないと思うのでケースバイケースでそういうのが必要になる場面もあると思います。

ただ、私はメインが業務アプリ開発なので、そんなにCPUコストを要求される場面というのが少ないので、CPUコストよりも誰でもがメンテナンスできる可読性の高さを優先させてしまいます。

なので、業務アプリ開発では不必要なトリッキーさはどうしてもCPUコストなどの都合により必要になった場合を除いてよほどのことがない限りは利用しないよう心がけていますねー(^^;

#まさるさん
んー。 

気持ちはわかるんですが、やはりそこはトリッキーさをできるだけ排除するためにも今のコードかなぁ(^^;

誰が見ても間違っていないことが確認できるのが一番かなと(^^;

# re: FizzBuzz問題。 2007/11/05 15:54 tatsugoro
依然聞いたことがあったような気もしますが、ちゃんと考えたことはありませんでした。

この問題文をどうとらえるかによって、いろいろなコードがありえますね。
面白い問題ですね。


# re: FizzBuzz問題。 2007/11/05 17:08 ひろえむ
#tatsugoroさん

そうなんですよねー。

こういう問題は結構Codeseekの面々はうずうずするのでは?w
私も含めてw

# re: FizzBuzz問題。 2007/11/05 17:59 tatsugoro
> こういう問題は結構Codeseekの面々はうずうずするのでは?w
> 私も含めてw

かなりきてます。
衝撃的なコードをいくつか思いつきました。
勉強会で披露会しましょうよ。

これの議論を進めると、オブジェクト指向ネタにもつながるね。
オブ熱のディスカッションネタになるかも。


# re: FizzBuzz問題。 2007/12/17 17:26 PATIO
お初にお目にかかります。
PATIOと言います。
わんくまさんは時々見に来てます。
むたぐちさんのところから来たんですが、
私もひろえむさんと同じスタンスです。
基本的にメンテナンス性と可読性が第一で、
トリッキーなコードは存在意義をきちんと説明できないと駄目って感じですね。
かといって無駄すぎるコードは許せませんけどね。(^^;

ただ、昔の貧乏性が顔を出すと何とかコードを削れないかと
頭をひねり出す事もあったり。
ああ、貧乏性。(^^;


# re: FizzBuzz問題。 2007/12/18 9:35 ひろえむ
#PATIOさん

はじめましてー。よろしくですー。

んー、最近ではコードを削りたいとは思わなくなりましたが、極力ひとめで理解しやすい人にやさしいコードを書きたいなぁーと思っています(^^;

Post Feedback

タイトル
名前
Url:
コメント