コンテンツにスキップ

第1回:プログラムとアルゴリズムの基本

プログラミングの3ステップ

プログラミングは以下の3つのステップで構成される。

flowchart LR
    A[要求\n問題文] -->|ステップ1-2\nアルゴリズム\n思考| B[抽象的な処理\nフローチャート]
    B -->|ステップ2-3\nコーディング\n実装| C[具体的な処理\nPython/Cのコード]
  1. 要求を理解する: 何をしたいのかを明確にする
  2. 説明できるレベルまで整理する: 手順をフローチャートなどで表現する
  3. コンピュータにわかる言語へ翻訳する: 整理した手順をPythonなどで記述する

アルゴリズムの3つの基本構造

すべてのアルゴリズムは、以下の3つの構造の組み合わせで表現できる。

順次:上から順に実行

flowchart TD
    A[処理1] --> B[処理2] --> C[処理3]

分岐:条件によって処理を変える(if)

flowchart TD
    A{条件} -->|True| B[処理A]
    A -->|False| C[処理B]

反復:同じ処理を繰り返す(for / while)

flowchart TD
    A{条件} -->|True| B[処理]
    B --> A
    A -->|False| C[次の処理]

Pythonでの対応

  • 順次:文を上から順番に書く
  • 分岐:if / else
  • 反復:for / while

アルゴリズムの例:合格判定

要求: 学生全員の点数を見て、合格か不合格かを判定する。

フローチャート

flowchart TD
    A([開始]) --> B[点数リストを用意]
    B --> C[リストから点数を1つ取り出す]
    C --> D{60点以上?}
    D -->|Yes| E[合格]
    D -->|No| F[不合格]
    E --> G{次はある?}
    F --> G
    G -->|Yes| C
    G -->|No| H([終了])

Pythonコード

students = [75, 42, 88, 55, 90]
for student in students:
    if student >= 60:
        print("合格")
    else:
        print("不合格")

実行結果:

合格
不合格
合格
不合格
合格

フローチャートとコードの対応

  • 反復(「次はある?」→「リストから点数を1つ取り出す」に戻るループ)→ for student in students
  • 条件分岐(「60点以上?」)→ if student >= 60 / else
  • 順次(「合格」「不合格」の出力)→ print() が上から順に実行される

なぜPythonで学ぶのか

  • 読みやすく記法がシンプル: 初学者でも理解しやすい
  • 汎用性が高い: Web開発、データ分析、AIなど幅広い分野で使われる
  • 初学者に人気: 世界的にプログラミング教育で広く採用されている

Python vs C言語の比較

# Python
a = 1
b = 3
print(a + b)
// C言語
int a = 1;
int b = 3;
printf("%d", (a+b));

Pythonは型宣言が不要で、セミコロンも不要であり、記述量が少ない。

Spyderの利用

演習室のPython環境はSpyderを用いる。

主なPythonの開発環境

環境 説明
Python直接利用 コマンドラインからPythonを直接実行する
Spyder 科学計算向けのIDE。Anacondaに同梱
Jupyter Lab ノートブック形式の対話的な開発環境
PyCharm 高機能なPython専用IDE

Anacondaのインストール(自宅用)

自宅で環境を構築する場合は、Anacondaをインストールする。演習室では不要である。

  1. anaconda.com/download からダウンロードする
  2. インストーラの指示に従いインストールする
  3. インストール完了時に「Clear the package cache upon completion」をチェックすることを推奨

Spyderの起動

  • Windowsスタートメニュー → すべてのアプリ → Spyder を選択する
  • または、検索バーで「Spyder」と入力して起動する

Spyderの日本語設定

Spyderを日本語表示にするには、以下の手順で設定する。

  1. メニューから ToolsPreferences を開く
  2. ApplicationAdvanced settings を選択する
  3. Language日本語 に変更する

Pythonの対話モードでの利用

Spyderのコンソール右下に表示される In [1]:プロンプトである。これはPythonが命令を待っている状態を示す記号である。

プロンプトに式や命令を入力してEnterを押すと、すぐに結果が表示される。

In [1]: 1 + 2
Out[1]: 3

In [2]: print("Hello")
Hello

Spyderの使い方

メニューの ヘルプツアーを表示 で、Spyderの基本操作を確認できる。

Spyderの基本操作

  • 左側のエディタにプログラムを記述し、F5キーまたは実行ボタンで実行する
  • 右下のコンソールに実行結果が表示される
  • 右上にはヘルプや変数エクスプローラが表示される