型について(char)2 [型について]
今日はchar型を確認してみます。
char型は文字を扱う場合に使用する型だそうです。
変数は
hiragana
katakana
eigodai
eigosyou
kigou
suuji
とします。
(変数はあらかじめ決まっている小文字英語の並び
(例えば、int等)を使用しなければなんでも
大丈夫のようです。)
書き方は
char hiragana;
char katakana;
char eigodai;
char eigosyou;
char kigou;
char suuji;
また、各変数に何かを代入するために
hiragana=O;
katakana=O;
eigodai=O;
eigosyou=O;
kigou=O;
suuji=O;
※Oには数字や文字や記号が入ります。
を追加します。
さらに、printfは
printf("%c\n",変数)
というふうに書きます。
int型は%dでしたが、char型は%cとなるようです。
この%dとか%cは出力データの変換形式を
指定しているとのことです。
%c:1文字として出力する
%d:10進数で出力する
%x:16進数で出力する
%o:8進数で出力する
%f:小数点を含んで出力する
%e 指数形式で出力する
%s 文字列として出力する 文字列
つまり、1文字だけ出力したければ%cを
複数文字表示させたければ%sを使用すれば
いいということだと思います。
プログラムで確認してみましょう!
①ひらがな、カタカナ、英語、記号、数字の1文字を変数に代入し「%c」にて表示
ビルドでエラーとなりました。
文字の初めと終わりに「'」をつけると
ビルド可能でした。
実行結果
・あ → ■
・ア → A
・G → G
・g → g
・? → ?
・1 → 1
と日本語以外は正常表示されました。
char型の変数は英語(大小文字)、記号、数字しか
代入できないということですね。
②英語、記号、数字の複数文字を変数に代入し「%c」にて表示
実行結果
・GHI → I
・ghi → i
・@#& → &
・123 → 3
となり、複数文字の最後の文字が表示されました。
つまり、変数に複数文字が代入された場合、出力データ
変換形式が%cだと最後の1文字のみ表示されるということ
ですね。
③ひらがな、カタカナ、英語、記号、数字の1文字を変数に代入し「%s」にて表示
実行結果
ビルドは出来ましたがデバッグでエラーとなりました。
やはり日本語が原因と考えられるため日本語を
削除してもう一度確認します。
実行結果
だめです。エラーです
色々調べたら、型と変数と代入する文字の
書き方がこれまでと違うみたいです。
書き方を下記に変更してビルドしてみます。
char hiragana[]="あ";
char katakana[]="ア";
char eigodai[]="G";
char eigosyou[]="g";
char kigou[]="?";
char suuji[]="1";
成功ですね!!
実行結果
成功です!
・あ → あ
・ア → ア
・G → G
・g → g
・? → ?
・1 → 1
ひらがな、カタカナ、英語(大小文字)、
記号、数字全て表示できました。
④ひらがな、カタカナ、英語、記号、数字の複数文字を変数に代入し「%s」にて表示
実行結果
・あいう → あいう
・アイウ → アイウ
・GHI → GHI
・ghi → ghi
・@#& → @#&
・123 → 123
成功です!!
まとめると
・%cで一文字表示させる場合は
代入する文字を「'」にて挟むことで表示される。
ただし、日本語は不可
・%sで複数文字表示させる場合は
変数の最後に「[ ]」を追加し、代入する文字を
「" "」にて挟むことで表示される。
char型は文字を扱う場合に使用する型だそうです。
変数は
hiragana
katakana
eigodai
eigosyou
kigou
suuji
とします。
(変数はあらかじめ決まっている小文字英語の並び
(例えば、int等)を使用しなければなんでも
大丈夫のようです。)
書き方は
char hiragana;
char katakana;
char eigodai;
char eigosyou;
char kigou;
char suuji;
また、各変数に何かを代入するために
hiragana=O;
katakana=O;
eigodai=O;
eigosyou=O;
kigou=O;
suuji=O;
※Oには数字や文字や記号が入ります。
を追加します。
さらに、printfは
printf("%c\n",変数)
というふうに書きます。
int型は%dでしたが、char型は%cとなるようです。
この%dとか%cは出力データの変換形式を
指定しているとのことです。
%c:1文字として出力する
%d:10進数で出力する
%x:16進数で出力する
%o:8進数で出力する
%f:小数点を含んで出力する
%e 指数形式で出力する
%s 文字列として出力する 文字列
つまり、1文字だけ出力したければ%cを
複数文字表示させたければ%sを使用すれば
いいということだと思います。
プログラムで確認してみましょう!
①ひらがな、カタカナ、英語、記号、数字の1文字を変数に代入し「%c」にて表示
ビルドでエラーとなりました。
文字の初めと終わりに「'」をつけると
ビルド可能でした。
実行結果
・あ → ■
・ア → A
・G → G
・g → g
・? → ?
・1 → 1
と日本語以外は正常表示されました。
char型の変数は英語(大小文字)、記号、数字しか
代入できないということですね。
②英語、記号、数字の複数文字を変数に代入し「%c」にて表示
実行結果
・GHI → I
・ghi → i
・@#& → &
・123 → 3
となり、複数文字の最後の文字が表示されました。
つまり、変数に複数文字が代入された場合、出力データ
変換形式が%cだと最後の1文字のみ表示されるということ
ですね。
③ひらがな、カタカナ、英語、記号、数字の1文字を変数に代入し「%s」にて表示
実行結果
ビルドは出来ましたがデバッグでエラーとなりました。
やはり日本語が原因と考えられるため日本語を
削除してもう一度確認します。
実行結果
だめです。エラーです
色々調べたら、型と変数と代入する文字の
書き方がこれまでと違うみたいです。
書き方を下記に変更してビルドしてみます。
char hiragana[]="あ";
char katakana[]="ア";
char eigodai[]="G";
char eigosyou[]="g";
char kigou[]="?";
char suuji[]="1";
成功ですね!!
実行結果
成功です!
・あ → あ
・ア → ア
・G → G
・g → g
・? → ?
・1 → 1
ひらがな、カタカナ、英語(大小文字)、
記号、数字全て表示できました。
④ひらがな、カタカナ、英語、記号、数字の複数文字を変数に代入し「%s」にて表示
実行結果
・あいう → あいう
・アイウ → アイウ
・GHI → GHI
・ghi → ghi
・@#& → @#&
・123 → 123
成功です!!
まとめると
・%cで一文字表示させる場合は
代入する文字を「'」にて挟むことで表示される。
ただし、日本語は不可
・%sで複数文字表示させる場合は
変数の最後に「[ ]」を追加し、代入する文字を
「" "」にて挟むことで表示される。
Apple製PC選び④ [やるべきこと]
今日は雪がすごいですね。
明日、会社行けるかな?
そろそろPCを購入しようと考えています。
フラッシュストレージにするかどうか悩んでましたが、
家電量販店に見に行ったり、
友人のMac Book Air(フラッシュストレージ)を
見せてもらったりして決めました!
Mac Book Air 13インチ
メモリ:8G
記憶容量:256G(フラッシュストレージ)
CPU:1.8GHz Corei5
価格:¥137,600-
を購入します!!
メモリを8GにするためApple Storeから定価での
購入となりますが、操作性を考えて
これに決めました!!
今日注文します
明日、会社行けるかな?
そろそろPCを購入しようと考えています。
フラッシュストレージにするかどうか悩んでましたが、
家電量販店に見に行ったり、
友人のMac Book Air(フラッシュストレージ)を
見せてもらったりして決めました!
Mac Book Air 13インチ
メモリ:8G
記憶容量:256G(フラッシュストレージ)
CPU:1.8GHz Corei5
価格:¥137,600-
を購入します!!
メモリを8GにするためApple Storeから定価での
購入となりますが、操作性を考えて
これに決めました!!
今日注文します
型について(int)1 [型について]
今回は変数を使用して色々表示させたいと思います。
そのためには今までのプログラムに型と変数を
追加する必要があります。
今回は型と変数を
型 :int
変数:a,b,c,d,e,f
としてプログラムを書きます。
書き方は
int a;
int b;
int c;
int d;
int e;
int f;
又は
int a,b,c,d,e,f;
また、各変数(a~f)に何かを代入するために
a=O;
b=O;
c=O;
d=O;
e=O;
f=O;
※Oには数字や文字や記号が入ります。
を追加します。
さらに、printfは
printf("%d\n",変数)
というふうに変えます。
「%d」は変数に代入された何かを表示するプログラム
「¥n(\n)」は改行のプログラム
「,変数(a~f)」は表示させたい変数を記入します。
~~~~~~~~~~~~~~~~~~~~~~~
int型は整数を扱う場合に使用する型だそうです。
ここで疑問がいくつかあります。
①マイナスの整数はいくつまで表示可能なのか。
②プラスの整数はいくつまで表示可能なのか。
③小数点を含んだ数字を代入した場合どうなるのか。
④文字を代入した場合はどうなるのか。
⑤記号を代入した場合はどうなるのか。
プログラムで確認しましょう!
①マイナス整数を代入
実行結果
・-1 → -1
・-123 → -123
・-123456 → -123456
・-2147483648 → -2147483648
と正常に表示されました。
・-2147483649 → 2147483647、
・-10000000000 → -1410065408
と異常表示されました。
つまり、int型のマイナス側は-2147483648までの
整数しか扱えないということですね。
②プラス整数を代入
実行結果
・1 → 1
・123 → 123
・123456 → 123456
・2147483647 → 2147483647
正常に表示されました。
・2147483648 → -2147483648
・10000000000 → 1410065408
と異常表示されました。
つまり、int型のプラス側は2147483647までの
整数しか扱えないということですね。
③小数点を含んだ数字を代入
実行結果
・-1.0 → -1
・12.3 → 12
・-123.456 → -123
・2147.483647 → 2147
・-21474.83648 → -21474
・10000000.000 → 10000000
と表示されました。
つまり、int型では小数点以下を切り捨てた
整数が表示されるということですね。
④文字を代入
・あ
・1234あ
・-586a
・-y95348778
・heidoshi
・ed54869ty
全てエラーとなりビルドに失敗しました。
文字を1文字にして初めと終わりに「'」をつけると
ビルド可能でした。
しかし、デバッグすると下記エラーウィンドウが
表示されました。
中止をクリックすると実行結果が表示されました。
実行結果
・'あ' → 33440
・'a' → 97
・'A' → 65
・'ア' → 33601
と異常表示されました。
int型では「'」を入れても入れなくても
文字は表示できないということですね。
⑤記号を代入
・/
・---+
・+**
・%[]
・?¥@
・&$#
全てエラーとなりビルドに失敗しました。
初めと終わりに「'」をつけると
ビルド可能でした。
実行結果
・'/' → 47
・'---+' → 757935403
・'+**' → 2828842
・'%[]' → 2448221
・'?¥@' → 16192
・'&$#' → 2499875
と異常表示されました。
int型では「'」を入れても入れなくても
記号は表示できないということですね。
まとめると-2147483648~2147483647の整数が
表示可能でそのほかの文字や記号は表示不可
ということです
そのためには今までのプログラムに型と変数を
追加する必要があります。
今回は型と変数を
型 :int
変数:a,b,c,d,e,f
としてプログラムを書きます。
書き方は
int a;
int b;
int c;
int d;
int e;
int f;
又は
int a,b,c,d,e,f;
また、各変数(a~f)に何かを代入するために
a=O;
b=O;
c=O;
d=O;
e=O;
f=O;
※Oには数字や文字や記号が入ります。
を追加します。
さらに、printfは
printf("%d\n",変数)
というふうに変えます。
「%d」は変数に代入された何かを表示するプログラム
「¥n(\n)」は改行のプログラム
「,変数(a~f)」は表示させたい変数を記入します。
~~~~~~~~~~~~~~~~~~~~~~~
int型は整数を扱う場合に使用する型だそうです。
ここで疑問がいくつかあります。
①マイナスの整数はいくつまで表示可能なのか。
②プラスの整数はいくつまで表示可能なのか。
③小数点を含んだ数字を代入した場合どうなるのか。
④文字を代入した場合はどうなるのか。
⑤記号を代入した場合はどうなるのか。
プログラムで確認しましょう!
①マイナス整数を代入
実行結果
・-1 → -1
・-123 → -123
・-123456 → -123456
・-2147483648 → -2147483648
と正常に表示されました。
・-2147483649 → 2147483647、
・-10000000000 → -1410065408
と異常表示されました。
つまり、int型のマイナス側は-2147483648までの
整数しか扱えないということですね。
②プラス整数を代入
実行結果
・1 → 1
・123 → 123
・123456 → 123456
・2147483647 → 2147483647
正常に表示されました。
・2147483648 → -2147483648
・10000000000 → 1410065408
と異常表示されました。
つまり、int型のプラス側は2147483647までの
整数しか扱えないということですね。
③小数点を含んだ数字を代入
実行結果
・-1.0 → -1
・12.3 → 12
・-123.456 → -123
・2147.483647 → 2147
・-21474.83648 → -21474
・10000000.000 → 10000000
と表示されました。
つまり、int型では小数点以下を切り捨てた
整数が表示されるということですね。
④文字を代入
・あ
・1234あ
・-586a
・-y95348778
・heidoshi
・ed54869ty
全てエラーとなりビルドに失敗しました。
文字を1文字にして初めと終わりに「'」をつけると
ビルド可能でした。
しかし、デバッグすると下記エラーウィンドウが
表示されました。
中止をクリックすると実行結果が表示されました。
実行結果
・'あ' → 33440
・'a' → 97
・'A' → 65
・'ア' → 33601
と異常表示されました。
int型では「'」を入れても入れなくても
文字は表示できないということですね。
⑤記号を代入
・/
・---+
・+**
・%[]
・?¥@
・&$#
全てエラーとなりビルドに失敗しました。
初めと終わりに「'」をつけると
ビルド可能でした。
実行結果
・'/' → 47
・'---+' → 757935403
・'+**' → 2828842
・'%[]' → 2448221
・'?¥@' → 16192
・'&$#' → 2499875
と異常表示されました。
int型では「'」を入れても入れなくても
記号は表示できないということですね。
まとめると-2147483648~2147483647の整数が
表示可能でそのほかの文字や記号は表示不可
ということです
printfについて3 [printfについて]
先日、printf("@@@@")で@@@@に
ひらがな、カタカナ、記号、漢字、英語を記入し
それぞれ表示できました。
これは、
定数を表示したことになるそうです。
定数は
①数値定数(8進数、10進数、16進数、浮動小数点定数)
②文字定数(1文字のこと。「A」や「あ」などのこと)
③文字列定数(複数文字のこと。「ABC」など)
で分類されるそうです。
8進数、16進数は高校で理系に進んだ人なら
わかると思います。
10進数は普通の数字のことですね
1、2、3、・・・10・・・100・・・
次に、変数というものがあるそうです。
変数は
簡単に言うと中学の数学で
y=x+1
x=1のときyはいくつでしょう?
x=12のときyはいくつでしょう?
というような問題を解いたことがあるかと思いますが
この 「x」のように何かを代入する
ための文字のことを変数と呼ぶようです。
ようは、xは1でも12でも10000でも、時には文字や記号等
が代入され、どんな物にも変わる数ということで
変数ということですね。
さらに、この変数はどのような物が代入されるのか
型というもので決める必要があるようです。
つまり、上記でも書きましたが数字や文字や記号等が
代入されることが予想されますが、コンピュータは何が
代入されるかわからないため、あらかじめどんな物が
代入されるか決めてあげましょうということのようです。
ではどのような型があるのか。
①int型(整数型)
②char型(文字型)
③long型(倍長整数型)
④float型(単精度浮動小数点型)
⑤double型(倍精度浮動小数点型)
というものがあるそうです。
推測ですが恐らく
①はこの変数は整数のみ入りますと決める
②はこの変数は文字のみ入りますと決める
ということだと思います。
③、④、⑤はまったくわかりません・・・
次回は実際にプログラムを組んで上記型を
確認してみたいと思います。
ひらがな、カタカナ、記号、漢字、英語を記入し
それぞれ表示できました。
これは、
定数を表示したことになるそうです。
定数は
①数値定数(8進数、10進数、16進数、浮動小数点定数)
②文字定数(1文字のこと。「A」や「あ」などのこと)
③文字列定数(複数文字のこと。「ABC」など)
で分類されるそうです。
8進数、16進数は高校で理系に進んだ人なら
わかると思います。
10進数は普通の数字のことですね
1、2、3、・・・10・・・100・・・
次に、変数というものがあるそうです。
変数は
簡単に言うと中学の数学で
y=x+1
x=1のときyはいくつでしょう?
x=12のときyはいくつでしょう?
というような問題を解いたことがあるかと思いますが
この 「x」のように何かを代入する
ための文字のことを変数と呼ぶようです。
ようは、xは1でも12でも10000でも、時には文字や記号等
が代入され、どんな物にも変わる数ということで
変数ということですね。
さらに、この変数はどのような物が代入されるのか
型というもので決める必要があるようです。
つまり、上記でも書きましたが数字や文字や記号等が
代入されることが予想されますが、コンピュータは何が
代入されるかわからないため、あらかじめどんな物が
代入されるか決めてあげましょうということのようです。
ではどのような型があるのか。
①int型(整数型)
②char型(文字型)
③long型(倍長整数型)
④float型(単精度浮動小数点型)
⑤double型(倍精度浮動小数点型)
というものがあるそうです。
推測ですが恐らく
①はこの変数は整数のみ入りますと決める
②はこの変数は文字のみ入りますと決める
ということだと思います。
③、④、⑤はまったくわかりません・・・
次回は実際にプログラムを組んで上記型を
確認してみたいと思います。
printfについて2 [printfについて]
今日は、改行、スペース、バックスペース、警告音
をプログラムしてみたいと思います。
改行
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC
あいう
続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC\nで改行、あいう\nで改行できました
PCによっては「\n」ではなく「¥n」の場合もあるようです。
スペース
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC あいう
続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC\tでスペース、あいう\nで改行できました
バックスペース
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABCD\bでDが消えてバックスペースできました
警告音
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
PCからピッーと音が鳴って
続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
\aで警告音が鳴りました
をプログラムしてみたいと思います。
改行
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC
あいう
続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC\nで改行、あいう\nで改行できました
PCによっては「\n」ではなく「¥n」の場合もあるようです。
スペース
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC あいう
続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC\tでスペース、あいう\nで改行できました
バックスペース
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABC続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
ABCD\bでDが消えてバックスペースできました
警告音
実行結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
PCからピッーと音が鳴って
続行するには何かキーを押してください・・・
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
\aで警告音が鳴りました