C++ド初心者がC++をやってみる奴

C++について気づいたことや学んだことをつらつらと

一週間で身に付くC言語の基本問題(2)prob3-4をやってみた

以下のサイトの基本問題(2)prob3-4をやってみました。
c-lang.sevendays-study.com

#include<stdio.h>

void main() {
	int a;//変数を宣言
	scanf_s("%d", &a);//キーボードからaに値を代入
	//aが10以下、あるいは90以上かを判定
	if (a < 10 || a>90) {
		printf("10以上か、90以上です。¥n");//True(10以下か、90以上)だった場合、文字を表示。
	}
}


変数aを宣言。

#include<stdio.h>

void main() {
	int a;//変数を宣言


キーボードから、aに値を代入できるようにする。

scanf_s("%d", &a);//キーボードからaに値を代入


Ifで条件分岐を行う。
a<10||a>90は、翻訳すると
「aの値が、10以下か、90以上か」になる。

//aが10以下、あるいは90以上かを判定
	if (a < 10 || a>90) {
		printf("10以上か、90以上です。¥n");//True(10以下か、90以上)だった場合、文字を表示。
	}
}

aの値が10以下、あるいは、90以上だった場合、True。
それ以外はFalse。


aの値が、10以下だった場合
f:id:Free_Gamer:20210303095319p:plain
90以上だった場合
f:id:Free_Gamer:20210303095357p:plain
どちらでもなかった場合
f:id:Free_Gamer:20210303095433p:plain

それではまた~^^ノシ

一週間で身に付くC言語の基本問題prob2-1をやってみた

今回は、以下のサイトにある基本問題prob2-1をやってみました。
http://c-lang.sevendays-study.com/problem1.html#problem2:title=c-lang.sevendays-study.com

#include<stdio.h>

void main() {
	int a, b;//変数の宣言
	//aにキーボードから値を代入
	printf("a=");
	scanf_s("%d", &a);
	//bにキーボードから値を代入
	printf("b=");
	scanf_s("%d",&b);
	//aとbの計算結果(和、差、積、商、剰余)を表示
	printf("a+b=%d¥n", a + b);//aとbの和
	printf("a-b=%d¥n", a - b);//aとbの差
	printf("a*b=%d¥n", a * b);//aとbの積
	printf("a/b=%d¥n", a / b);//aとbの商
	printf("a%%b=%d¥n", a % b);//剰余(商の余り)
}


まずは変数の宣言
a、bという名の変数を宣言します。

#include<stdio.h>

void main() {
	int a, b;//変数の宣言


scanf_s関数でキーボードの入力を受け付けます。
キーボードから入力された値をaに代入します。

//aにキーボードから値を代入
	printf("a=");
	scanf_s("%d", &a);


bも同様です。

//bにキーボードから値を代入
	printf("b=");
	scanf_s("%d", &b);


aとbの計算結果を表示します。
例えば、aに5、bに2の値が代入されていれば
それぞれの計算結果は
・a+b=7
・a-b=3
・a*b=10
・a/b=2
・a%b=1
となります。

//aとbの計算結果(和、差、積、商、剰余)を表示
	printf("a+b=%d¥n", a + b);//aとbの和
	printf("a-b=%d¥n", a - b);//aとbの差
	printf("a*b=%d¥n", a * b);//aとbの積
	printf("a/b=%d¥n", a / b);//aとbの商
	printf("a%%b=%d¥n", a % b);//剰余(商の余り)
}


f:id:Free_Gamer:20210303085432p:plain

f:id:Free_Gamer:20210303085441p:plain

f:id:Free_Gamer:20210303085311p:plain


終わりー
それではまた~^^ノシ

数字の加算とその表示~OpenSiv3D~

今回は数字の加算とその表示を行ってみましたー。

#include<Siv3D.hpp>

void Main()
{
	//「Count」の初期値を設定
	int32 count = 0;

	while (System::Update())
	{
		//蓄積された「Count」表示を消去し、常に最新の「Count」の表示を行う
		ClearPrint();

		//加算された「Count」を表示
		Print << count;

		//「Count」を加算
		++count;
	}
} 

~初期値の設定~
まず加算する数値の初期値を決めます。
「0」にします。
ここは「5」でも「100」でも大して問題にはなりません。

//「Count」の初期値を設定
	int32 count = 0;

「Int32」というのは、整数の型みたいなもんです。
整数(Integer)を扱いたいから「Int32」を指定してる、って感じだと思います。
「Count」というのは、識別子の事で、ID的なものともいえます。
つまり、「Count」というIDの初期値を「0」に設定している、という風に言えます。

~値の加算と表示~

while (System::Update())
	{
		//蓄積された「Count」表示を消去し、常に最新の「Count」の表示を行う
		ClearPrint();

		//加算された「Count」を表示
		Print << count;

		//「Count」を加算
		++count;
	}
} 

「Count」を加算し、加算された「Count」をPrintでウィンドウに表示し、その表示された「Count」を「ClearPrint」関数で消去する。
そしてまた「Count」を加算し・・・、の繰り返しです。

これで実行してみると、とてつもない速度で数値が加算されていくのが分かると思います。
youtu.be

~Countについて~
今回加算する数値の名前を「Count」にしましたが、別にこれは全く別の名前でも構いません。
「CountDown」でもいいし、「Timer」でも構いません。
ただ、名前は全て統一しなければいけません。
例えば、コードを以下のように変更したとします。
f:id:Free_Gamer:20210217083237p:plain
赤枠の部分を「Timer」という名前に変更し、それ以外の「Count」という名前は変えていません。
この状態で実行すると、以下のようにエラーが出ます。
f:id:Free_Gamer:20210217083337p:plain
要するに、「Count」を加算しようとしても、その「Count」という識別子が見当たらないから無理ですよー、という事です。
なので、名前は統一しましょうね^^

f:id:Free_Gamer:20210217084259p:plain

Hello!!!!!

C++超ド初心者ド素人のFree_Gamerです。

C++に興味を持ち、ネットでチュートリアルを探しても

色んなサイトがありすぎて、どこから何に手を付けていいのか分かんないと思います。

 

C++に詳しい人に

C++を始めるには何からやったらいいんだぁ!?」

と聞いたら

「お、『OpenSiv3D』ってのからやった方がいいです・・・ 壁|д゚))))」

と教えてくれたので、さっそくOpenSiv3DってのからC++を学ぶ事にしました^^

 

↓OpenSiv3Dのサイトはこちら

Siv3D をはじめよう - Siv3D

OpenSiv3DV0.4.3をインストールします。

 

使用するものは

・VisualStudio2019

・OpenSiv3DV0.4.3
です。

 

~Hello,World~
文字を表示させる処理を行います。

#include <Siv3D.hpp>

void Main()
{
	Print << U"Hello";

	while (System::Update())
	{

	}
}

~Includeとは??~

#include <Siv3D.hpp>

Siv3Dのほぼ全ての機能を使う為に、Siv3D.hppというヘッダファイルを、Include(含める)する的な意味です。

~void Mainとは??~

void Main()

分からんです。分からんですけど、とりあえず「おまじない」的な感じで入れてます。(すいません)
まあ、Includeの後に絶対に入れておくものだと勝手に思ってます。
「void Main」の下にある「{}(中括弧)」内の処理を実行します。
(赤枠の部分)
f:id:Free_Gamer:20210216202402p:plain

~Printとは??~

Print << U"Hello";

文字を表示させる為の機能的な奴です。
「<<」は、出力という意味です。
吹き出しみたいなものだと勝手に思ってます。
f:id:Free_Gamer:20210216203851p:plain
「U”Hello”」の「U」は、「UTF-32」という形式でテキストデータを扱う為に「U」という頭文字をつけています。
「””」の中に、表示させたい文字を入れます。

~While(Syetem::Update())とは??~

while (System::Update())

ループ(繰り返し)処理です。
「while (System::Update())」の下にある「{}(中括弧)」内の処理をループさせます。
(赤枠の部分)
f:id:Free_Gamer:20210216202947p:plain
今回は「while (System::Update())」の下にある「{}(中括弧)」内に何の処理も記述していません。
特にループさせる処理がないから・・・って意味だと思います。
「System::Update」は、関数の名前です。
「Syetem::Update」関数が、ウィンドウの表示や音楽の再生、マウスやキーボードの入力情報の更新を行います。
なので、「System::Update」関数は、必須だと思います。

コードを書いたら、上部にある「デバッグ」をクリックし
その中にある「デバッグの開始(F5)」か「デバッグなしで開始(ctrl+F5)」で実行します。
f:id:Free_Gamer:20210216204242p:plain
表示されたウィンドウの左上に「Hello」の文字が出ていればOKです。

~注意する事~
コードを書いてて気づいたのですが、コードを書くとき、大文字にすべきところを小文字でコードを書くと、エラーで出ます。
例えば「void Main」を「void main」と書いて実行すると、エラーが出て実行できません。
「Print」も「print」と書いて実行しても、エラーが出ます。
C++にはこういうのがあるっぽいので、書き留めておきます・・・。^^;

C++、始めました

Free_Gamerです。

 

最近C++に興味を持ちました。

理由は、なんとなくw

何か深い理由があるわけではないですが、強いて言えば

C++を使ってゲームを作ってみたいなー、と思ったからです。

 

これまでUE4というゲーム製作エンジンでゲームを作ったことがあり

プログラミングは、UE4に標準で備わっている「BP(ブループリント)」という

ノードベースのプログラム(?)を使用してゲームを作っていました。

↓こんな感じのがBP

f:id:Free_Gamer:20210216205357p:plain

約2半年ぐらいUE4でなんかゲームを作ったり処理を作ったりして遊んでましたが

最近特に作りたいゲームもなく、正直BPにも飽きてきて

何ならゲームを作ってるよりプログラムを組んでる方が

面白いまであるので

じゃあそろそろC++学んだってバチは当たんねぇよなぁ!?という感じでC++に興味を持ち始めました。

 

当然、C++なんて超ド級の初心者です。

・ヘッダファイルって何??

・インクルードって何??

・マクロって何??

・つーかC++って何からやりゃいいの??

これぐらいの超初心者です。

常に?マークでいっぱいです。

f:id:Free_Gamer:20210216210455p:plain

 

なので、これから不定期だとは思いますが

自分用のメモ書き程度に、つらつらとC++で学んだことや気づいたことを書いていこうと思います。

なので、分かりやすさはあまり期待しないでつかんさい・・・。

 

とりあえず、応援よろしくお願いします。

いつまでC++ライフが続くか分かりませんがw