プログラミング言語比較



IchigoJam BASIC Python easy JavaScript JavaScript Java C
はじめのいっぽ LED1 print("Hello World!") alert("Hello World!") alert("Hello World!"); class A { public static void main(String[] args) { System.out.println("Hello World!"); } } #include <stdio.h> int main() { printf("Hello World\n"); return 0; }
キー押下数
(はじめのいっぽ)
5 21 22 23 95 72
表示 ?"ABC" print("ABC") console.log("ABC") console.log("ABC"); System.out.println("ABC"); printf("ABC\n");
変数代入 A=10 a = 10 a = 10 let a = 10; int a = 10; int a = 10;
計算 S=A*10/B s = a * 10 / b s = a * 10 / b let s = a * 10 / b; int s = a * 10 / b; int s = a * 10 / b;
条件分岐 IF A=10 ?"T" if a == 10: print("T") if (a == 10) console.log("T") if (a == 10) console.log("T"); if (a == 10) System.out.println("T"); if (a == 10) printf("T\n");
繰り返し
(ループ)
10 FOR I=0 TO 9 20 ?I:NEXT for i in range(10): print(i) for (i = 0; i < 10; i++) console.log(i) for (let i = 0; i < 10; i++) console.log(i); for (int i = 0; i < 10; i++) System.out.println(i); for (int i = 0; i < 10; i++) printf("%d\n", i);
論理式 A=1 AND B=2 (A==1 && B==2 でもOK) a == 1 and b == 2 a == 1 && b == 2 a == 1 && b == 2 a == 1 && b == 2 a == 1 && b == 2
ビット演算 A>>4&7 (a >> 4) & 7 (a >> 4) & 7 (a >> 4) & 7 (a >> 4) & 7 (a >> 4) & 7
16進数 #FFF 0xFFF 0xFFF 0xFFF 0xFFF 0xFFF
2進数 `11010001 0b1101001 0b1101001 0b1101001 0b1101001 0b1101001
サブルーチン
(関数)
(メソッド)
10 ?"SUB":RETURN GOSUB 10 (@SUBなどのラベル対応) def sub(): print("SUB") sub() function sub() { console.log("SUB") } sub(); const sub = () => { console.log("SUB"); }; sub(); // 何かclass内で static void sub() { System.out.println("SUB"); } // 何かメソッド内で sub(); void sub() { printf("SUB\n"); } // 何か関数内で sub();
コメント ' COMMENT REM COMMENT # COMMENT """ COMMENT複数行 """ // COMMENT /* COMMENT複数行 */ // COMMENT /* COMMENT複数行 */ // COMMENT /* COMMENT複数行 */ /* COMMENT複数行 */
文字列処理
(左3文字)
(右3文字)
10 S="ABCDE" 20 ?STR$(S,3) 30 ?STR$(S+LEN(S)-3) s = "ABCDE" print(s[0:2]) print(s[-3:]) const s = "ABCDE" console.log(s.substring(0, 3)) console.log(s.substring(s.length - 3)) const s = "ABCDE"; console.log(s.substring(0, 3)); console.log(s.substring(s.length - 3)); String s = "ABCDE"; System.out.println(s.substring(0, 3)); System.out.println(s.substring(s.length() - 3)); const char s[] = "ABCDE"; for (int i = 0; i < 3; i++) putchar(s[i]); putchar('\n'); printf("%s\n", s + strlen(s) - 3);
配列 10 LET[0],5,3,1 20 N=0 30 FOR I=0 TO 2 40 N=N+[I]:NEXT 50 ?N a = [5, 3, 1] n = 0 for m in a: n += m print(n) a = [5, 3, 1] n = 0 for (m in a) { n += a[m] } alert(n) const a = [5, 3, 1]; let n = 0; for (const m in a) { n += a[m]; } alert(n); int a[] = [5, 3, 1]; int n = 0; for (int m : a) { n += a[m]; } System.out.println(n); int a[] = { 5, 3, 1 }; int n = 0; for (int i = 0; i < 3; i++) { n += a[i]; } printf("%d\n", n);
特徴 格安、省エネ、低速
大規模開発に向かない
打つ文字少ない
インデント大事
ライブラリ豊富
打つ文字少ない
ブラウザだけで作れる
PCもスマホもOK!
打つ文字少ない
ブラウザだけで作れる
PCもスマホもOK!
大規模開発もOK!
なかなか高速
Androidアプリの標準言語
サーバー上でもよく使われる
基本的に最速
マシン語に近い
IchigoJam BASICの開発言語

src on GitHub