【本書の特長】
<<遊び感覚でプログラミングとアルゴリズムをおぼえよう!>>
・イチからPythonのプログラミングとアルゴリズムがわかる
・ゲームをつくりながら基本を理解できる
・パズル問題で実践的なコードの書き方が身につく
・環境構築不要のGoogle Colaboratoryですぐ始められる
・パズル問題の解答はPythonに加え、JavaScriptとRubyのコードも提供
【内容紹介】
楽しくなきゃ、プログラミングじゃない!
プログラミングを学ぶとき、
言語の文法などを勉強するのは退屈なものです。
何かつくりたいものがあり、
それを自分の手でつくることが
達成感となり、楽しさにつながります。
本書でも一般的なプログラミングで
必要な要素がひと通り登場しますが、
簡単なゲームをつくりながら基本をおぼえます。
そして、だんだん難しくなるパズル問題を通じて、
アルゴリズムを考慮した「使えるコード」が
身につくようになっています。
プログラミングの楽しさを見つけるきっかけになる、
そんな本を目指しました。
アタマをやわらかくして、ぜひ挑戦してみてください。
★付属データ★
・本書に登場するソースコード例
・パズル問題の解答ソースコード(Python)
・○×ゲームでコンピュータ対戦をできるようにする追加解説
★読者特典★
・パズル問題の解答ソースコード(Ruby/JavaScript)
【目次】
Part 1 ○×ゲームでおぼえるプログラミングの基本
Part 2 迷路ゲームでおぼえるアルゴリズムの基本
Part 3 パズルを解きながらコードの書き方を工夫してみよう
【パズル問題(一部)】
・ボウリングの点数を計算しよう
・素因数分解してみよう
・円テーブルで席替え
・同じ数字でサンドイッチ
・カウントゲームで先手が勝つのは何通り?
・崩れないように箱を積み上げよう
・カエル跳びゲームの移動回数は?
・効率のよいファミリーレストラン
・エラトステネスのふるいで素数を求めてみよう
本書は全ページがフルカラー。ソースコード内も色分けされているので、読み解きやすくなっています。
「Part 1の追加解説(○×ゲームでコンピュータ対戦する方法)」、「Part 2のソースコード例」、「Part 3のパズル問題の解答ソースコード」をダウンロードできます。会員登録すればJavaScriptとRubyのソースコードもプレゼント。詳しくは本書をお読みください。
Part 1 ○×ゲームでおぼえるプログラミングの基本
・プログラミングで何をつくる?
・○×ゲームの盤面をつくろう
・対戦できるようにしよう
・[練習問題]星座を判定しよう(出題編)
Part 2 迷路ゲームでおぼえるアルゴリズムの基本
・「木構造」とアルゴリズム
・迷路を探索してみよう
・探索を高速化しよう
・[練習問題]星座を判定しよう(解答編)
Part 3 パズルを解きながらコードの書き方を工夫してみよう
■レベル1 簡単な問題を解いてみよう
Q01 ボウリングの点数を計算しよう
Q02 野球の得点パターンは何通り?
Q03 同じ数を表示し続ける7セグメントディスプレイ
Q04 素因数分解してみよう
Q05 円テーブルで席替え
Q06 同じ数字でサンドイッチ
■レベル2 処理時間を短くするために工夫してみよう
Q07 カウントゲームで先手が勝つのは何通り?
Q08 棒の長さを最小にするモビール
Q09 崩れないように箱を積み上げよう
Q10 カエル跳びゲームの移動回数は?
Q11 効率のよいファミリーレストラン
Q12 エラトステネスのふるいで素数を求めてみよう
Q13 素因数分解した和が同じ?
Q14 工事中の交差点はどこだ?
Q15 右端の照明だけ急いで点けろ
■レベル3 目線を変えてアプローチしてみよう
Q16 掛け算でつくるカックロ
Q17 異なる整数で逆三角形をつくろう
Q18 まわり将棋に挑戦!
Q19 連続する正の整数の和
Q20 2048 ゲームの組み合わせは何通り?
巻末付録 本書で使用した関数/メソッド/モジュールと関数