C/C++/C#

C/C++/C#

C++でテキストファイルを読み込む

テキストファイルを読み込むには std::ifstream memo("./memo.txt"); とすればいい。fopenよりも便利。あとはstring型で定義した変数に読み込んだ文字列を放り込めばいい。 実行結果 hello world...
C/C++/C#

C++で二次方程式の判別式を計算する

二次方程式の解の公式は \begin{align}D=b^2-4ac\end{align} あとは値の範囲で条件分岐すればいい 実行結果 d -> 33 異なる2つの実数解 ソースコード #include <iostream> typede...
C/C++/C#

C++でrepを使う

repを使うと繰り返しを定義できる。 実行結果 i ->0 i ->1 i ->2 ソースコード #include <iostream> #define rep(i, n) for (int i = 0; i < (int)(n); i++...
C/C++/C#

C++で3つの数を入力して最大値と最小値を出力する

stdの機能を使ってもできるが、ここは愚直に書く。2度の大小判定をすればいい。 実行結果 数値を入力 a -> 7 b -> 2 c -> 8 結果 最大値 ->8 最小値 ->2 ソースコード #include <iostream> in...
C/C++/C#

C++で数値を入力して偶数か奇数を判定する

割り算して余りを見ればいい 実行結果 45 奇数 ソースコード #include <iostream> int main() { int x; std::cin >> x; if (x % 2 == 0) { std::cout << "偶...
C/C++/C#

C++で2点間の距離を計算する

三次元平面上に置かれた二点 \(P_{1}(x_{1},y_{1},z_{1}),P_{2}(x_{2},y_{2},z_{2})\) 間の距離\(d(P_{1},P_{2})\)は \begin{align}d(P_{1},P_{2})=...
C/C++/C#

C++でx年の秒数を求める

1年の秒数は \begin{align}365 \times 24 \times 60 \times 60\end{align} であるのでこれをx倍して表示すればいい。 実行結果 整数を入力 ->1 1年は31536000秒 ソースコード...
C/C++/C#

C++でポインタを使って文字列を扱う

C++でポインタを使って文字列を扱う。ポインタを定義して放り込めば使える。 実行結果 a1 b2 c3 d4 e5 f6 g7 h8 i9 ソースコード。 #include<iostream> int func(void); int mai...
C/C++/C#

C++で再帰呼び出しを使って階乗を計算する

詳しくはここ。C++で書き換えた。 ソースコード。 #include<iostream> int factorial(int); int main(void) { int x; std::cout << "数値を入力 -> "; std::...
C/C++/C#

C++のsortを使ってみた

vに値を入力してソートする。 std::sort(v.begin(), v.end()); 実行結果 元のデータ 3 1 4 2 5 ソート後のデータ 1 2 3 4 5 ソースコード #include <iostream> #includ...
C/C++/C#

C++で文字列の入力を受け付けて一致しているか調べる

C++で文字列の入力を受け付けて一致しているか調べる。一致しているかは str1 == str2 で求めることができる。 実行結果 文字列を入力 ->A 文字列を入力 ->a 文字列が違っています ソースコード #include <iost...
C/C++/C#

C++のlgammaを使う

lgammaは引数のガンマ関数の絶対値の自然対数を返す。 \begin{align}f(x) = \ln |\Gamma(x)|\end{align} 実行結果 inf ソースコード #include<iostream> int main(...
C/C++/C#

C++でラマヌジャンの公式を使った円周率計算をする

詳しくはここ C++で書く。Pythonとは違い大きな数を扱えないので注意。 #include<iostream> #include<math.h> int factorial(int); int main() { int N = 1; d...
C/C++/C#

C++でじゃんけんゲームをつくる

グーチョキパーに数値を割り当てて比較するだけ。 実行結果 じゃんけん! 0:グー 1:チョキ 2:パー 数値を入力 -> 3 もう一度数を入力 ->2 player ->パー CPU ->パー 引き分け ソースコード #include <i...
C/C++/C#

Qiitaに投稿されていたC++の質問への回答

元記事はここ クラスの書き方を大幅に変えてみた。大幅に変更している関係でQiitaでの回答はしていない。 実行結果 aa reaa ソースコード。 #include <iostream> class test_class { public:...
C/C++/C#

C++でスタックを使う

C++でスタックを定義して出力してみる。ヘッダー #include <stack> を読み込めば作れる。スタックの定義は std::stack<double> data; でできる。この場合、double型で定義される。あとは while ...
C/C++/C#

C++で1線地絡時の起誘導電圧の大きさを求める

1線地絡時の起誘導電圧は \begin{align}\dot{V}_{m}=j \omega \left ( M D \right ) \dot{I}_{0}=j 2 \pi f \left ( M D \right ) \dot{I}_{...
C/C++/C#

C++で1線地絡時の起誘導電流を複素数で与えられるように改造する

1線地絡時の起誘導電流についてはここ。 この記事で作ったクラスを改造して電流を複素数で入力できるようにする。 complexを読み込んでsetInducingCurrentdotを作った。引数は実部と虚部。型はdouble。 Inducti...
C/C++/C#

C++で複素数を扱う

C++で複素数を扱う。ヘッダー #include <complex> を読み込んで std::complex<double> z1(1.0, 1.0); とすれば \begin{align}z_{1}=1+j\end{align} が定義で...
C/C++/C#

C++でprevを使ってみる

nextを使えばイテレータitをn個だけ戻すことができる。 it = std::prev(it, n); 実行結果 5 2 4 1 3 ソースコード。 #include <iostream> #include <iterator> #inc...