プログラマを育てる脳トレパズル 遊んでおぼえるPythonプログラミング&アルゴリズム(増井 敏克)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. プログラマを育てる脳トレパズル 遊んでおぼえるPythonプログラミング&アルゴリズム

プログラマを育てる脳トレパズル 遊んでおぼえるPythonプログラミング&アルゴリズム


形式:
書籍
発売日:
ISBN:
9784798163826
定価:
本体1,800円+税
仕様:
A5変・196ページ
分類:
プログラミング・開発

本書籍の他の形式を確認する

  • このエントリーをはてなブックマークに追加

最初から最後まで、遊びっぱなし。
でも、「使えるコード」が書けるようになります。

【本書の特長】
<<遊び感覚でプログラミングとアルゴリズムをおぼえよう!>>
・イチからPythonのプログラミングとアルゴリズムがわかる
・ゲームをつくりながら基本を理解できる
・パズル問題で実践的なコードの書き方が身につく
・環境構築不要のGoogle Colaboratoryですぐ始められる
・パズル問題の解答はPythonに加え、JavaScriptとRubyのコードも提供

【内容紹介】
楽しくなきゃ、プログラミングじゃない!

プログラミングを学ぶとき、
言語の文法などを勉強するのは退屈なものです。

何かつくりたいものがあり、
それを自分の手でつくることが
達成感となり、楽しさにつながります。

本書でも一般的なプログラミングで
必要な要素がひと通り登場しますが、
簡単なゲームをつくりながら基本をおぼえます。

そして、だんだん難しくなるパズル問題を通じて、
アルゴリズムを考慮した「使えるコード」が
身につくようになっています。

プログラミングの楽しさを見つけるきっかけになる、
そんな本を目指しました。

アタマをやわらかくして、ぜひ挑戦してみてください。

★付属データ★
・本書に登場するソースコード例
・パズル問題の解答ソースコード(Python)
・○×ゲームでコンピュータ対戦をできるようにする追加解説

★読者特典★
・パズル問題の解答ソースコード(Ruby/JavaScript)

【目次】
Part 1 ○×ゲームでおぼえるプログラミングの基本
Part 2 迷路ゲームでおぼえるアルゴリズムの基本
Part 3 パズルを解きながらコードの書き方を工夫してみよう

【パズル問題(一部)】
・ボウリングの点数を計算しよう
・素因数分解してみよう
・円テーブルで席替え
・同じ数字でサンドイッチ
・カウントゲームで先手が勝つのは何通り?
・崩れないように箱を積み上げよう
・カエル跳びゲームの移動回数は?
・効率のよいファミリーレストラン
・エラトステネスのふるいで素数を求めてみよう


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 ゲームの組み合わせは何通り?

巻末付録 本書で使用した関数/メソッド/モジュールと関数

付属データはこちら

会員特典はこちら

書籍への問い合わせ

正誤表、追加情報をご確認の上、こちらよりお問い合わせください

書影の利用許諾について

本書籍に関する利用許諾申請はこちらになります

追加情報はありません。

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2021年02月02日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 097
「q01.py」のソースコードおよび答え
2刷
result, next1, next2 = 0, 0, 0 while len(score) > 0: frame = score.pop(-1) # 最後のフレームを取り出し total = sum(frame) if len(frame) == 3: # 10フレーム目でスペアやストライク result += total elif len(frame) == 1: # ストライクのとき result += 10 + next1 + next2 next1, next2 = 10, next1 elif total == 10: # スペアのとき result += 10 + next1 next1, next2 = frame else: result += total next1, next2 = frame return result print(calc([ [9, 1], [8, 2], [10], [5, 0], [3, 6], [4, 2], [7, 3], [6, 3], [10], [9, 1, 9] ])) 答え→127点
result, next1, next2 = 0, 0, 0 while len(score) > 0: frame = score.pop(-1) # 最後のフレームを取り出し total = sum(frame) if len(frame) == 3: # 10フレーム目でスペアやストライク result += total next1, next2, _ = frame elif len(frame) == 1: # ストライクのとき result += 10 + next1 + next2 next1, next2 = 10, next1 elif total == 10: # スペアのとき result += 10 + next1 next1, next2 = frame else: result += total next1, next2 = frame return result print(calc([ [9, 1], [8, 2], [10], [5, 0], [3, 6], [4, 2], [7, 3], [6, 3], [10], [9, 1, 9] ])) 答え→137点
2020.12.27
1刷 102
下から2行目(ソースコード「q02.py(続き)」の下から7行目)
for i in range(senkou):
for i in range(senkou + 1):
2021.02.02
1刷 103
答え
60,733,530通り
82,818,450通り
2021.02.02
1刷 112
「問題」の1行目
2刷
生徒が10人の場合
先生1人と生徒9人の場合

Q05 円テーブルで席替えの問題文
2021.01.04