C++, VB, Javascript の対応

      1. どの関数から実行されるか
      2. 関数定義
      3. for文
      4. 変数宣言と代入
      5. 演算子
      6. クラスc1のメソッドm1を使う
      7. if ステートメント
      8. 文字列処理と色の指定

どの関数から実行されるか。

C++ コマンドライン実行の場合、mainが実行される。
Javascript webページのjavascriptの場合、onload という予約された変数に代入された関数がまず実行される。
VB Windowsデスクトップアプリの場合、ボタン、フォームロードなどが、実行の起点となる。

 

関数定義

C++
	double func1(double x,int n){
		return(x * n);
	}
Javascript
	function func1(x,n){
		return x * n;
	}      	
VB
	Public Function func1( _
				ByVal x As Character, _
				ByVal n As Integer) _
			As Double
		Return x * n;
	End Function      	

 

for文

C++

for(i=1; i<10; i++ ) {

...

}

Javascript

for(i=1; i<10; i++) {

...

}

VB

for i=1 to 10 step 1

...

next

 

変数宣言と代入

C++

double x;

int i=1;

x=i;

Javascript

var x;

var i=1;

x=i;

VB

Dim x,i

i=1

x=i

 

演算子

 

x + y 加算
x - y 減算
x * y 乗算
x / y 除算
x % y 剰余、x をy で割った余り
x ** y

累乗、x の y 乗

 

Math.ceil(x) xの小数点以下を切り上げ
Math.floor(x) xの小数点以下を切り捨て
Math.round(x) xの四捨五入
Math.random() 範囲 {r}={r| 0≦r<1} の乱数
Math.abs(x) 絶対値
Math.max(x, y) 最大値
Math.min(x, y) 最小値
Math.sin(x) sin(x)
Math.cos(x) cos(x)
Math.tan(x) tan(x)
Math.log(x) 自然対数 log(x)
Math.exp(x) 指数関数 exp(x)
Math.E() 自然対数の底
Math.pow(x,y) xのy乗
   

 

クラスc1のメソッドm1を使う

引数がx1,x2,x3の場合

前提 c1がクラスで、m1がそのメソッドの場合
C++ y=c1.m1(x1,x2,x3);
Javascript y=c1.m1(x1,x2,x3);
VB y=c1.m1(x1,x2,x3)

 

if ステートメント

C++

if (x==1) {

...

}

Javascript

if (x==1) {

...

}

VB

if x=1 then

...

end if

 

文字列処理と色の指定

塗りつぶし色は

c1.fillStyle

で指定するが、c1.fillStyle の色の指定は "rgb(12,34,56)" というような文字列で指定する必要がある。そのため、以下のような2行で色を文字列に変換して指定している。

red = (i * 30).toString(10);

c1.fillStyle = 'rgb(' + red+ ',0,0)';

これらの命令では、iiの値を文字列に変換して色を作成しているが、その過程を以下に表で示す。

表の右の欄には左の欄の式を計算した値、または、代入文で右辺を計算した値を示す。

式または命令
i = 2; 2
(この後 iの値は2である)  
i*30 60
(i * 30).toString(10) "60"
red = (i * 30).toString(10); "60"
(この後 red の値は文字列の "60" である)  
'rgb(' + red "rgb(60"
'rgb(' + red + ',0,0)' "rgb(60,0,0)"
c1.fillStyle = 'rgb(' + red+ ',0,0)'; "rgb(60,0,0)"