2022-10

C/C++/C#

C++のswitch文に使うbreakの重要性

通常、switch文は下の例のようにcase内にbreakを記述する。 case 2: std::cout << "case 2" << std::endl; break; このbreakは重要な役割を持っていて、例えばcase1のbrea...
C/C++/C#

C++でswitch文を使う

大量の条件分岐を行うときはif文よりもswitch文のほうがいい場合がある。 switch文の簡単な例は次のとおりである。 #include <iostream> int main() { int num = 4; switch (num)...
C/C++/C#

C++でgoto文を使う

C++にはgoto文は同一関数内の指定した場所に飛ぶことができて便利だが、予期せぬバグの原因になりやすいので使ってはいけない。 使い方は以下の通り。 #include <iostream> int main() { int count = ...
機械

原子力発電で消費されるウランの質量

原子力発電ではU235を用いて核分裂を起こしその時発生する熱を用いて発電する。 U235にひとつの低速中性子を打ち込んだ場合、U235はいくつかの物質と高速中性子、質量欠損に伴うエネルギーが200MeV生じる。 まず200MeVをJに変換す...
機械

汽力発電機における蒸気の流量

汽力発電機における蒸気の流量は蒸気圧力と蒸気加減弁の開閉度に比例する。即ち \begin{align}蒸気の流量=蒸気圧力 \times \mathrm{蒸気加減弁の開閉度}\end{align} が成り立つ。
C/C++/C#

C++でdouble型からint型へのキャスト

C++でdouble型からint型へのキャストを考える。 double型は実数型でint型は整数型であり、double型をint型に変換した場合小数部分が無視される。 実行結果 num1 ->1.5 num2 ->1 以下コード。 #inc...
C/C++/C#

C++ですべりを求める

誘導電動機は同期速度に遅れてモーターが回転する。これをすべりといい \begin{align}s=\frac{N_s -N}{N_s}\end{align} で表す。 結果が\(-1\)になった場合は入力がおかしい。 include <io...
C/C++/C#

C++でフィボナッチ数列を計算する

詳しくは→【C言語】フィボナッチ数列を計算する C++でフィボナッチ数列を計算する。今回は配列で計算した。 以下コード。 #include <iostream> #include <stdlib.h> int main(void){ int...
C/C++/C#

C++でdo-while文を使う

do-while文はdo-while間に書かれた処理が条件式で評価される前に実行されるので必ず1度は実行される文になる。 do { 処理 } while (条件式); 以下サンプルコード。 #include <iostream> int m...
C/C++/C#

C++で自作クラスを作る

C++でクラスを作る。細かいことを抜きにして以下のようにすればいい。 public等の意味は今後。 実行すれば hoge.echo(10); の引数がエコーで返される。入力は数値のみ。 以下コード。 #include <iostream> ...
C/C++/C#

C++でfor文

C++のfor文はCと同じ。 #include <iostream> int main() { int i; for (i = 0; i <= 5; i++) { std::cout << "Hello Would" << i << std...
C/C++/C#

名前空間と宣言

前回、名前空間stdを使うために using namespace std; と宣言し使用した。しかしこのstdは標準で利用可能でusingで宣言しなくてもよい。 今回はこれを試す。 以下コード。 #include <iostream> in...
MATLAB/simulink

MATLABでモジュロ演算の結果を比較する

モジュロ演算の結果を比較する。比較する関数にmyismodを作成した。 以下コード。 a=18; b=23; m=12; b1= mymod(a,m); b2=myismod(a,b,m); function b=mymod(a,m) wh...
MATLAB/simulink

MATLABでモジュロ演算をする

MATLABでモジュロ演算を定義する。モジュロ演算は割り算の余りを求める演算で、\(q\)を余りとすると通常の割り算は次のようになる。 \begin{align}a \div m = p \cdots q\end{align} これを次のよ...
機械

変圧器への印加電圧と生じる磁束

変圧器の一時側について、印加電圧を\(\dot{V}_1\)、起電力を\(\dot{E}\)とすると \begin{align}\dot{V}_1+\dot{E}_1=0\end{align} また、誘導起電力は一時側の巻き数\(N_1\)...
C/C++/C#

C++でのコメントの使い方

//とすれば//より右側の同一行がコメントになる。 //これはコメント /* */とすれば/*と*/で囲まれた複数行をコメントにできる。 /* 複数行のコメント1 複数行のコメント2 複数行のコメント3 複数行のコメント4 */
C/C++/C#

C++でHello Would

C++でHello Would。以下のようにすればいい。 #include <iostream> using namespace std; int main() { cout << "Hello Would" << endl; return...
MATLAB/simulink

MATLABの関数を使ってゼータ関数の零点を計算する その4

MATLABの関数を使ってゼータ関数の零点を計算する。今回は\(s=-6+yi\)上の計算結果を複素平面上にプロットした。 以下コード。 Nmin=0; Nmax=35; d=0.1; count=1; result=zeros(1,Nma...
MATLAB/simulink

MATLABの関数を使ってゼータ関数の零点を計算する その3

MATLABの関数を使ってゼータ関数の零点を計算する。今回はクリティカルライン上の計算結果を複素平面上にプロットした。 当然、原点との交点が \begin{align}\zeta(s)= \sum_{i=1}^{\infty} \frac{...
MATLAB/simulink

MATLABで3次元プロット

MATLABで3次元グラフを描いた。コード自体はplot3のページで公開されているものとほぼ同じ。 以下コード。 d=0.01; t=0:d:10*pi; st = 2.*sin(t); ct = 2.*cos(t); figure; pl...