さまざまなプログラミング言語
1
金子邦彦
(プログラミング基礎・用語集・体験)
URL: https://www.kkaneko.jp/pro/man/index.html
さまざまなプログラミング言語
Python
C
Java
JavaScript
R
Octave
Scheme
など
2
ここで行う作業
1.20 より大きければ「big」、
さもなければ「small」と表示
2.0 + 1 + 2 + 3 + 4 + 5 を求める
なぜプログラミング言語は
たくさんあるのでしょうか?
3
それぞれ
特徴があ
Java
どのコン
ピュータ
でも同じ
プログラ
ムが動く.
普及度は
トップレ
ベル.
Python
初心者向
け.その
おかげで,
多数の拡
張機能も.
C / C++
コン
ピュータ
の性能を
最大限引
き出す
R
「データ
処理」に
特化した
コマンド
言語
SQL
「データ
ベース」
に特化し
たコマン
ド言語
MATLAB /
Octave
「数値計
算」,
「信号処
理」など
に特化し
たコマン
ド言語
Python プログラム見本
x = 100
if (x > 20):
print("big")
else:
print("small")
s = 0
for i in [1, 2, 3, 4, 5]:
s = s + i
print(s)
4
すぐに実行できる
さまざまな「パッケージ」で
機能を拡張できる
Windows でも Linux でも,ほ
ほ同じプログラムで動く
Java プログラム見本
public class Main {
public static void main(String[] args) throws Exception {
int x = 100;
if (x > 20) {
System.out.printf("big¥n");
} else {
System.out.printf("small¥n");
}
int s = 0;
for(int i = 1; i <= 5; i++) {
s = s + i;
}
System.out.printf("%d¥n", s);
}
}
5
Windows でも Linux でも
Android アプリでも,同じプロ
グラムで動く
C プログラム見本
#include <stdio.h>
int main(void){
int x, s, i;
x = 100;
if (x > 20) {
printf("big¥n");
} else {
printf("small¥n");
}
s = 0;
for(i = 1; i <= 5; i++) {
s = s + i;
}
printf("%d¥n", s);
return;
}
6
・コンピュータの決め細かなコ
ントロール
・高速実行できるチューニング
JavaScript プログラム見本
process.stdin.resume();
process.stdin.setEncoding('utf8');
var util = require('util');
var x = 100;
if (x > 20) {
process.stdout.write('big¥n');
} else {
process.stdout.write('small¥n')
}
var s = 0;
for(var i = 1; i <= 5; i++) {
s = s + i;
}
process.stdout.write(util.format('%d¥n', s));
7
Webアプリに向く
R プログラム見本
x <- 100
if (x > 20) {
print("big")
} else {
print("small")
}
s <- 0
for (i in c(1,2,3,4,5)) {
s <- s + i
}
print(s)
8
データ専門家向け
Octave プログラム見本
x = 100
if (x > 20)
printf("big¥n")
else
printf("small¥n")
endif
s = 0
for i = [1 2 3 4 5]
s = s + I
endfor
printf("%d", s)
9
行列計算,信号処理など
に向く
Scheme プログラム見本
(define (decide x)
(cond
((> x 20) "big")
(else "small")))
(define (sum n)
(cond
((= n 0) 0)
(else (+ (sum (- n 1)) n))))
(begin
(print (decide 100))
(print (sum 5)))
10
関数型言語