ホワイトボードプログラミング

お釣りの金種を最小にする支払い方

元の記事とは関係ないけどおまけ 金種 紙幣や硬貨の種類のことを金種といいます 金種計算 紙幣や硬貨の種類を考慮した金額の計算のことを金種計算と呼ぶようです 所持金と金額 物の値段はただの数値です 紙幣や硬貨の種類は関係ありません 100円のものを100…

数値Xを2,8,10,16進数で表示する

元の記事とは関係ないけどおまけ ループその1 それぞれの記数法で各桁を分解することができるでしょうか わからないときはまずは簡単なところからやりましょう 表示の前にまず桁数を数えるだけやってみましょう int log2_i( int n ){ int cdigits = 0; do{ …

数値Xの約数を数える

元の記事とは関係ないけどおまけ ループその1 何にもわからなかったら、まずは素朴に int divisors_count( int a ){ debug_printf( "{ " ); int result = 0; int n = 1; while( n <= a ){ if( !( a % n )){ if( n > 1 ){ debug_printf( ", " ); } debug_pri…

2つの数の最大公約数を求める

元の記事とは関係ないけどおまけ ループその1 何にもわからなかったら、まずは素朴に書いてみるといいでしょう int gcd( int a, int b ){ int result = 1; int halfof_min_ab = (( a < b ) ? a : b ) / 2; int m = 2; while( m <= halfof_min_ab ){ if( !( …

FizzBuzz

FizzBuzz のルール 3 の倍数のときには fizz と表示する 5 の倍数のときには buzz と表示する 3 と 5 の倍数(15の倍数)のときには fizz buzz と表示する それ以外はその数を表示する ループ すぐにいろいろ思いつかない場合はまずシンプルなものから考える…

ループを使わずに配列の順序を逆にする

ループ ループを使わずにと言われてもすぐに思いつかない場合はまずはそのループを使った実装を考えてみましょう ループを使わないように変形するのはその後で構いません template<typename _value_type,int _size> _value_type (&reverse_array( _value_type (&a)[_size] ))[_size]{ _value_</typename>…

指定された数値Xが素数であるかどうかを判定する

素数判定法 簡単な公式は無いので地道に頑張る というか公式を見つけたら大発見ある数の素数性を得るためのフェルマー法とかミラー法とかミラー・ラビン法とかを使えば相当の高速化が期待できるから十分に知っているなら使ってもいいとは思うけど、あくまで…

数値Xのフィボナッチ数を計算する

フォボナッチ数とは フォボナッチ数列は各項が直前の二項の和になっているような数列 フィボナッチ数はその各項漸化式は一般に Fibonacci(n) = Fibonacci(n-1) + Fibonacci(n-2)ただし n は 2 以上、0 と 1 のときは 0 と 1 Fibonacci(0) = 0 Fibonacci(1) =…

ホワイトボードプログラミング

プログラマーの力量を見極める--面接官になったら尋ねるべき質問実例集にある「ホワイトボードプログラミング」の解答例 → 翻訳記事 http://japan.zdnet.com/sp/feature/07tenthings/story/0%2c3800082984%2c20409456%2c00.htm → 原文 http://blogs.techrepu…