next up previous contents index
次へ: 終りに、そしてこれから 戻る: スマートにいこう--条件分岐   目次   索引

バイリンガル?--その他のプログラミング言語の例

各種のプログラミング言語では、各々の特長を活かしてアルゴリズムを表現する ことができます。しかし、通常のプログラミング言語で書かれたものは、そのま まコンピュータで実行できるわけではありません。コンピュータが直接理解して 実行できるのは機械語という種類のプログラムだけです。通常のプログラ ミング言語で書かれたものを実行するには、それを機械語に翻訳する必要がある のです。

これまでの節で説明してきた Perl でも、実行する時には機械語に翻訳していま す。Perl のようにプログラムを実行する時に翻訳が行われるものをインタ プリタ方式と言います。これに対して、あらかじめ機械語への翻訳を行ってお き、その結果を実行ファイルとして別に保存しておくものをコンパイラ方 式と言います。

せっかくですからコンパイラ方式も試してみましょう。以下は、前節で作ったプ ログラムを、UNIX でよく利用される C言語で書いたものです。

01:  #include <stdio.h>
02:  
03:  main(){
04:    int num,s,i;
05:  
06:    printf("Hello!\n");
07:    printf("Input any number:");
08:    scanf("%d", &num);
09:    printf("Your number is %d\n", num);
10:    
11:    if(num<0){
12:      printf("Negative!\n");
13:      return 0;
14:    }
15:    
16:    s=0;
17:    i=1;
18:    do{
19:      s=s+i;
20:      i=i+1;
21:    }while(i<=num);
22:    
23:    printf("1+2+..+%d = %d\n",num,s);
24:  
25:  }

これを実行するには、上記をmgeditで書いてsample.c と言う名前で 保存します。そして、kterm で以下のようにします。各行の終りでエンターキー を押してください。

$ gcc -o sample sample.c
$ ./sample

C 言語はコンパイル方式の言語ですから、上記 gcc の行でしているよう に機械語に翻訳する手順が必要となります。翻訳の結果 sample という 名前のファイル(コマンドファイル)ができますので、それを ./sample として実行するわけです。

この章はこれでおしまいです。自分で書いたプログラムを実際に動作させてみる と言うのはいかがだったでしょうか。ここで例としてあげたようなものは実用的 なものとは到底言えないものです。しかし、みなさんが普段使っているプログラ ムも、こう言った単純な記述の膨大な蓄積ででき上がっているのです。

ウィンドウやアイコンを使用するGraphical User Interface (GUI) のプログラ ムも、専用のライブラリを利用すれば比較的簡単に作成することができます。興 味のある人は是非挑戦してみて下さい。




NAGATO Yasushi 平成16年4月6日