【本書の特長】
<<遊び感覚でプログラミングとアルゴリズムをおぼえよう!>>
・イチから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 ゲームの組み合わせは何通り?
巻末付録 本書で使用した関数/メソッド/モジュールと関数