
プログラミング演習でColaboratoryを使う方法
こんにちは、junkawaです。
Colaboratoryを使って、Python以外のプログラミング言語(C言語など)を簡単に実行する方法を紹介します。
この方法をプログラミング演習で使えば、下記のメリットがあります。
・オンライン環境さえあれば無料で実行環境を手に入れられる
・開発環境の準備が不要
・課題の採点が楽にできる
・遠隔でリアルタイムに指導することができる
Colaboratoryで使える計算機資源
CPU: Intel(R) Xeon(R) CPU @ 2.20GHz (!cat /proc/cpuinfoで確認)
Memory: 13GB (!free -mで確認)
Storage: 46GB (!df -hで確認)
Colaboratoryの使用制限
- Colaboratoryのインスタンス立ち上げ毎に、storageデータは初期化される
(出力データはGoogleドライブなどに保存する必要がある)
- セッションが切れてから90分でインスタンスが停止する
- 連続使用12時間でインスタンスが停止する
参考
ソースコードの作成方法
%%file hello.c
#include <stdio.h>
int main(void) {
printf("Hello, World!\n");
return 0;
}
コードセルに上記を書きます。
ポイントは先頭の "%%file hello.c"です。
このコードセルを実行すると、カレントディレクトリに hello.c が生成されます。
コードのコンパイル、実行方法
!gcc hello.c -o hello && ./hello
ここではgccでhello.cをコンパイルし、実行ファイルhelloを実行しています。(!xxx と書くと、シェルでxxxを実行できます)
ここを変えれば、任意のプログラミング言語の実行環境のできあがりです。
(必要なプログラミング言語の実行環境が入っていない場合、apt-get installでインストール可能です)
標準入力について
標準入力には対応していないようなので、下記のようにパイプを使う必要がありそうです。
echo hoge | ./fuga
まとめ
Colaboratoryを使って、ソースコードを生成、コンパイル、実行する方法を紹介しました。
実際のプログラミング演習では、コメント機能やGoogleドライブの共有機能を使って指導できます。
いいなと思ったら応援しよう!
