未分類

アルゴリズム

投稿日:

ビンゴカードのプログラムが完成できたのでそのアウトプットをしていきます。

リーチとビンゴの数を出力

ビンゴボールクラスとカウントビンゴクラス、ビンゴカードクラスで分けて作成し、ビンゴカードクラスにビンゴボールクラスとカウントビンゴクラスを継承させ、それらのメソッドをビンゴカードクラス内でも扱えるようにしました。ビンゴカウントクラスでリーチ数とビンゴ数をカウントするのですが、このクラス内でビンゴ列の縦に穴が開いている数、横に穴が空いている数、斜めに空いている数をカウントするクラス変数を定義しビンゴカードクラス内でビンゴボールで穴が空いた数にテェックを入れる処理のところで場合わけをして先のクラス変数の値を変化させました。最後にカウントビンゴクラス内でcount_reachメソッドとcount_bingoメソッドで先のクラス変数の値が4の時にリーチ数を+1、5の時にビンゴ数を+1をカウントしてそれを出力する記述をすれば完成です。

アルゴリズムとは

アルゴリズムとは問題を解く際の方法や手順のことです。まず線形探索法と二分探索法を学びました。例えばある人がいてこの人の年齢は20歳以上36歳未満でyesかnoを答えることができて、四回の質問で答えを出すという問題があるとします。この時に20歳ですか?21歳ですか?とかたっぱしから質問をして確実に解を導こうとするものが線形探索法で、今回の場合では最高16回質問をしないといけないのでアルゴリズムとして適正ではありません。そこで20~35の半分の値のところ、28歳未満ですか?と質問をしてその次の質問でも同じように半分のところで質問を繰り返しどの年齢の場合でも4回で解を導き出すことができます。このようにアルゴリズムは問題によって変更し、より効率的に解を求めるように改善するのです。

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

日本の経済

 「資本主義って悪者なの?」を読み終えました。資本主義は格差を広げていく仕組みになっています。いや正しくは資本主義の仕組みによって人間が格差を広げているという状況になります。これをなくすために新しい仕 …

no image

面接落ちまくり

 受けていた企業の結果が帰ってきているんですけれども、落ちまくりです。でももう慣れっこでこれが当たり前という感覚になっています。プログラミングスクールの方と面接をしたのですが、そこでこの落ちている状況 …

no image

React

もう気がついたら1月の半ばで働くまで二週間となっていました。哲学の本を読んでいる場合ではないので明日返しに行ってきます。これからは基本的に勉強した内容をアウトプットすることにします。 Reactとは …

no image

仕事について

 今日もビジネスについて書こうと思います。ビジネスというのは資金を調達して、その資金で価値を生み出し、お金を儲ける。ということなのですが、このビジネスを利用して何ができるのか、何をするべきなのかを考え …

no image

html

htmlはマークアップ言語でウェブページに動画・画像・音声などのデータファイルをリンクで埋め込むことができます。その文字列をブラウザが人間が理解できるように表示してくれるのです。 問題解決 最近は頭の …