乙Py先生のプログラミング教室
初学者のためのプログラミング学習サイト

プログラミング

7.演算

プログラミングの基本は「演算」です。
演算とは様々な計算を行うことです。

プログラムの基本は
1.入力
2.演算
3.出力
この3つ

プログラムというのは基本的には文字と数値を組み合わせて入力し
何かしらの計算を行い、その結果を出す、という仕組みになっています。
演算は大きく分けると「文字」と「数値」の計算を取り扱います。

四則計算
加算(足し算)) + 
減算(引き算) - 
乗算(掛け算) * 
除算(割り算) / 
剰余(余り) % 
べき乗 ** 


In [1]:
# 足し算(加算)
1+2
Out[1]:
3
In [2]:
# 引き算(減算)
1-3
Out[2]:
-2
In [3]:
# かけ算(乗算)
2*3
Out[3]:
6
In [4]:
# x は使えないのでエラーになる
2 x 3
  File "<ipython-input-4-8f1eaf61a7c2>", line 2
    2 x 3
      ^
SyntaxError: invalid syntax

SyntaxError は文法間違いの際に発生するエラー

In [5]:
# 割り算(除算)
10/3
Out[5]:
3.3333333333333335
In [6]:
# 割り算(余りなし、切り捨て除算)
10//3
Out[6]:
3
In [7]:
# べき乗
2**3
Out[7]:
8
In [8]:
# ルート
2**0.5
Out[8]:
1.4142135623730951
In [9]:
# 剰余(割った際の余り)
5%3
Out[9]:
2
In [10]:
# 掛け算や引き算の優先順位は算数と一緒
2 * 3 + 4
Out[10]:
10

足す、引くを優先したい場合は () カッコを用いる

In [11]:
2 * (3 + 4)
Out[11]:
14

計算する際に使う数値や文字のことを「リテラル」
プラス


計算する際に使う数値や文字のことを「リテラル」
プラスなどの記号( + - など)は「演算子」と呼んでいます。

そのなかでも四則計算に使われるのは
「算術演算子」(または代数演算子)と読んでいます。

そのほか
・ビット演算子
・代入演算子
・比較演算子
・ブール演算子
・条件演算子
など、演算子にはたくさん種類があります。

5.目標設定について

まずは自分の目標を決めよう

目標を定めてから学習を行った方が
自己評価を行いやすく効率が良い。

目標の例:
・簡単なアプリケーションを作る
・データベースを使ってwebサイトの情報をデータベースに貯めるロボットを作る
・Djangoフレームワークを使ってECサイトを構築する
・競馬予測のためのディープラーニングを用いた学習器を作成する
など・・・

特に目標が思いつかないなら:

まずは基礎を学習してマスターする

その次に応用として実務や研究に取り入れていけるようにするといった
ちょっとした目標を作ってみる。


まずはこの講座で基礎をすべて覚えてから
次の目標を立てて学習を進めていきましょう。


この講座では基礎だけですが後に応用編も行う予定です。
n時間で覚えるシリーズは他の言語などもやる予定です。

学習後は様々なプログラミングが行えるようになります。
pythonを覚えた方は、ぜひ他の講座の方もチェックしてみてください。

4.プログラミングの学習環境について

この講座ではPythonというプログラム言語を用いて
プログラミングを学習しますが、その実行環境としては
Jupyter Notebookというツールを用います。

このツールはプログラミングのコードを打ち込んで実行したり
その結果を保存して資料を作成したり
他の人のコードを参考にしたりするのにも役立ち
他の方々に共有をしたりすることができ、
学習の効率を非常に高めることができるものです。

他にもPythonの実行環境は存在します。
有名なツールだと
・Eclipse
・Visual Studio
・PyCharm
・Atomエディター
などがあります。

実際のプログラム開発現場では様々な流儀があり
そこで使用されるツールも様々ですが
Jupyter Notebookはプログラミング学習では
汎用的に世界中で用いられており非常に便利です。
他のエディターが好みだという方は、そちらの環境をお使いください。

インストールはPython言語とツールをまとめてインストールする事のできる
「Anaconda」というものを用いて行います。
WindowsでもMacでもやり方はとても簡単です。
この講座ではpythonはバージョン3系を用いて行いますので
講座に出てくるプログラムコードは全て3系のものになります。

インストール方法は下記に記載しておきますので
そちらを参考にしてインストールみてください。

JupyterNotebookおよび
Anacondaのインストール方法
anacondaのサイトへ行きインストーラーをダウンロードする
windows: https://www.anaconda.com/download/#windows
macos: https://www.anaconda.com/download/#macos
anaconda 3.xx 系の64-Bit Graphical Installer をダウンロードする。
ここの場合は左側の3.7系(Python 3.7 version)となる。 

download


インストーラーをダブルクリックなどで起動し、
説明に沿ってインストールを進める。

install-macos


上記はmacosでの画面ですがwindowsでもほぼほぼ同じです。
「続ける」をクリックして、先に進みます。

次に使用許諾契約が表示されたら一通り確認し、「続ける」をクリックします。
次にインストール先を再度確認する画面が表示されたら
インストール先などを選択して「インストール」をクリックします。

install-macos2


インストールが終了するとこのような画面になります。
閉じるをクリックしてインストール終了です。

install-macos3


JupyterNotebookはAnacondaに同封されているので、Anacondaのインストールが完了すると
JupyterNotebookも使えるようになります。

インストール後の確認
きちんとインストールされているかを確認するには以下を試します。

windows:
プログラムの中からAnaconda Promptを探して起動する。

win


macos:
アプリケーションの中からターミナルを探して起動する

macterm


起動後に以下のコマンドを実行してみる
python --version

コマンド入力後に エンターキー を押して実行
以下のような python のバージョン表示が出ればOK
$ python --version 
Python 3.xxx :: Anaconda xxx 

※ インストールしたバージョンにより、各意の表示は異なります。

JupyterNotebookの起動の仕方
windows:
プログラムの中からAnaconda Promptを探して起動する。

macos:
アプリケーションの中からターミナルを探して起動する
以下のコマンドを打ち込んでエンターキーを押す

jupyter notebook
以下のような画面がブラウザーで立ち上がればOK

jupyter


※ 表示されるフォルダなどは各自の構成により異なります。

jupyter notebook を起動した後は

http://localhost:8888/tree

でjupyter notebookの基本画面にアクセスできる。

3.プログラミング言語の学習方法について

どうすれば効率良く学習をすることができるでしょうか?

answer :
ひたすらプログラムコードを打ち込む

まずは書き写しから

習字などの場合は「写経」と言いますが
プログラミングの場合は他の人が作ったプログラムコードを
ただひたすら打ち込んで覚えます。

まずはこれで文法、プログラムの書き方を覚えましょう。
そうすると、この時はこう打ち込む、というのを指が覚えるようになります。


ある程度文法を覚えたら次はどうすれば良いのか?

answer:
ロジック、どうプログラムを動かすのかを学ぶ
何をどう書いたらいいんだっけ?という
プログラムを書く力、考える力を養います。

ロジックは、まずは自分の扱える母国語で考えます。
例えば簡単なプログラムの例として
ジャンケンの手を出力してくれるプログラムを作ることとします。
このときに必要な要素は何だろうか?
これを考えてまずは母国語で書き出します。

じゃんけんプログラムの例
1.ジャンケンの手を用意する。
2.ジャンケンの手を決める
3.ジャンケンの手を出力する。
あとはこれをプログラムに直す。

# じゃんけんプログラムの例

# 1.ジャンケンの手を用意する。
j = ['パー','ぐー','チョキ']
# 2.ジャンケンの手を決める
import random
my_hand = random.choice(j)
# 3.ジャンケンの手を出力する。
print('自分の手は : ' + my_hand)



このように日本語でまずは考えて、それをプログラムに置き換える。
ということを様々なケースで実践する。
そうすることで何を書けばいいか分からない、というところが
次第に解消されていくと思います。

プログラミングにおいて大事なこと

answer :
問題を解決する力を養う事

プログラム言語自体はそこまで難しいもので無い、と考えています。
プログラミングの学習工程では、様々な問題が発生します。

プログラムでは、コードの打ち込み間違いを始め、エラーというものが発生し
はじめは知らないことが多く、このエラーをどうすれば回避することができるか、
先に進むことができるのかが分からない状態です。

それを、乗り越える力、どうすれば良いのかを考える力を養うのが
プログラミングでは最も重要な事となります。

プログラムの基本原則
1.入力
2.計算
3.出力
この3つの事しかプログラムでは行われないので、これをきっちり抑えましょう。

 

2.プログラミング言語について

この講座ではプログラミングを学習するのに
「Python」
というプログラム言語を用います。

この言語は教育現場だけではなく、数多くの現場で用いられていますので
単なる学習や研究だけでなく実務をこなすのにも大いに役立つため
初めて学ぶ言語には最適です。

プログラム言語の特性としては
・非常に簡単で分かりやすい文法であること
・ライブラリという、再利用可能なプログラムが豊富
・プログラム実装の事例が豊富
ということです。

プログラム言語の人気度では上位3位以内に入り(他はjavascript など)
今最も注目を集めている言語になります。
特に統計解析や機械学習、AI関連の研究者は必ずと言って良いほど
Pythonを習得していますし国内でもその需要が増えてきています。

また一度Pythonを学習し終えたら、他の言語もすぐに覚えることができるようになります。
それくらいに初めて学ぶ言語には適していると思います。
おそらくこの講座を終える頃には、他の言語へも興味が湧き、
もっともっと学んでみたいという意欲が高まってくるんではないかと、期待しています。
ぜひPythonを主軸にプログラミングを習得していきましょう。

なお、このn時間で覚える講座シリーズは、他の言語なども予定しておりますので
この講座を終えたらそちらもよろしくお願い致します。

このページのトップヘ