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

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

著

形式:
書籍
発売日:
ISBN:
9784798163826
定価:
1,980円(本体1,800円+税10%)
仕様:
A5変・196ページ
カテゴリ:
プログラミング・開発
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発
紙の書籍

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

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

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

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

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

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

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

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

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

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

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

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

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

楽しくなきゃ、プログラミングじゃない!
最初から最後まで、遊びっぱなし。
まずはプログラミングの基本から、シンプルで高速なコードを書くには?
パズルに挑戦!目指せ全問制覇!
フルカラーでソースコードが読みやすい

フルカラーでソースコードが読みやすい

本書は全ページがフルカラー。ソースコード内も色分けされているので、読み解きやすくなっています。

ダウンロード特典3点セット+α

ダウンロード特典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 ゲームの組み合わせは何通り?

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

付属データはこちら

会員特典はこちら

書籍の購入や、商用利用・教育利用を検討されている法人のお客様はこちら

図書館での貸し出しに関するお問い合わせはよくあるお問い合わせをご確認ください。


利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。


お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

追加情報はありません。
この商品の「よくある質問」はありません。

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

書籍の種類:紙書籍

書籍の刷数:全刷


※重版をした際に、内容が修正されている場合があります。「刷数の確認方法(例)」の図を参考に、お手元の書籍の刷数をご確認ください。下の「書籍の刷数」の欄で刷数を選択すると、お持ちの書籍の刷数に合わせて、正誤情報を絞り込むことができます。

書籍によっては表記が異なる場合がございます


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

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

 書籍の刷数で正誤情報を絞り込みたい場合は選択してください。

 書籍の種類:

最終更新日:2021年03月10日
ページ数 内容 書籍修正刷 電子書籍訂正 発生刷 登録日
097
「q01.py」のソースコードおよび答え
誤 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点
備
考
6行目と7行目の間に「next1, next2, _ = frame」を追加し、答えは127点→137点になります。

※リフローEPUBの場合、Part 3の「Q01 ボウリングの点数を計算しよう」のSTEP2に掲載されている「q01.py」および、その枠の下にある「答え」が該当箇所になります。
2刷 済 1刷 2020.12.27
102
下から2行目(ソースコード「q02.py(続き)」の下から2行目)
誤 for i in range(senkou):
正 for i in range(senkou + 1):
未 未 1刷 2021.02.02
103
答え
誤 60,733,530通り
正 82,818,450通り
備
考
※リフローEPUBの場合、Part 3の「Q02 野球の得点パターンは何通り?」の末尾にある「答え」が該当箇所になります。
未 未 1刷 2021.02.02
112
イラストの下にある「問題」の1行目
誤 生徒が10人の場合
正 先生1人と生徒9人の場合
備
考
Q05 円テーブルで席替えの問題文を修正します。

※リフローEPUBの場合、Part 3の「Q05 円テーブルで席替え」のイラスト下の問題文が該当箇所になります。
2刷 済 1刷 2021.01.04
151
「問題」の2行目
誤 道順が8通りのとき
正 道順が4通りのとき
備
考
※リフローEPUBの場合、Part 3の「Q14 工事中の交差点はどこだ?」の2つめのイラスト下の問題文が該当箇所になります。
未 未 1刷 2021.03.10
151
「考え方」の4行目
誤 道順が8通りになる
正 道順が4通りになる
備
考
※リフローEPUBの場合、Part 3の「Q14 工事中の交差点はどこだ?」の2つめのイラストの下にある「考え方」が該当箇所になります。
未 未 1刷 2021.03.10