Python Tutor を活用したプログラミング体験学習

Python Tutor の概要

Python Tutor は,Python,Java,C,C++,JavaScript に対応したオンラインツールである.オブジェクトの可視化(変数やデータ構造を図で表示)とステップ実行(1行ずつ実行して動作を追跡)の機能を備える.

Python Tutor の利点:各実行ステップで変数の値やオブジェクトの状態が図示されるため,プログラムの動作を視覚的に理解できる.Webブラウザのみで動作するため,開発環境のインストールは不要である.プログラミング初学者の学習や,教員による実行過程の説明に有用である.

利用上の注意:大規模なコードや長時間の実行には対応していない.外部ライブラリの使用やファイル入出力にも制限がある.

URL: http://www.pythontutor.com/

Python Tutor の基本操作

以下では Python を例に操作手順を説明する.Java や C を使用する場合も,基本的な操作は同様である.

  1. Web ページにアクセスする

    http://www.pythontutor.com/

  2. 使用するプログラミング言語を選択する
  3. プログラミング言語の設定を確認する
  4. エディタでプログラムコードを入力し,「Visualize」ボタンをクリックする
  5. 実行画面で,プログラムの最終結果を確認するには「Last」をクリックする
  6. プログラムの実行結果を確認する
  7. プログラム編集画面に戻るには,「Edit this code」をクリックする

各言語での実行例

以下に Python,Java,C での実行例を示す.

Python

リストの各要素に対して演算し,結果を出力する.

x = [5, 4, 1, 3, 2]
for i in x:
    print(i * 120)

Java

配列の各要素を順に出力する.

public class Main {
    public static void main(String[] args) throws Exception {
        int x[] = {5, 4, 1, 3, 2};
        for (int i = 0; i < x.length; i++ ) {
            System.out.println(x[i]);
        }
    }
}

C

配列の各要素に対して演算し,結果を出力する.

#include<stdio.h>
int main(void){
    int i;
    int x[] = {5, 4, 1, 3, 2};
    for(i = 0; i < (sizeof(x)/sizeof(int)); i++) {
        printf("%d\n", x[i] * 120);
    }
}