プログラミング成長日記 #1
皆さんこんにちは!どうも!トマトです🍅
今日からてをうごかしてやっていきます!
今回は手を動かした後から書いているので、ただの解説みたいになってしまいますがご容赦ください笑
次回からは実況スタイルでその時思ったことをリアルタイムで書いていこうと思いますのでそちらもよろしくお願いします!
では早速初めて行きましょう!
※このシリーズは新明解C言語入門編 柴田望洋
を見ながら進めています。(写真は全てこの本から引用)
今回の学び
•printf 表示したい文字を””の中に入れて使う
•%d その数を10進数で表せという命令
•\n 改行
•int これから数を指定して使う文字を横に書いてこれは数を表す文字ですよという宣言をするもの
•scanf そのサイトを見た相手に入力してもらった数字を読み込むもの
•puts ちょー簡単にいうとprintf+\n
•/* */ この間はプログラミングの中にカウントされない。メモする時に使う
•// 上のやつの1行バージョン
•; 日本語で言う「。」これは1個1個の塊の最後に必ず必要。マジよく忘れる
•* ×「かける」の意味
•/ ÷「わる」の意味
•% あまりを表す8%3と打つと2と出てくる
始めようと思ったら、そもそもどこに書けば自分が書いたものが出力されるのかわからず、パソコンに強い父を早速召喚する羽目に。
しかも自分がやりやすいように工夫してくれたみたいで、とっても時間がかかりました。父がいなかったら絶対大変なことになってた。笑
さて、環境が整ったところで、初めて行きましょう。
最初のミッションは15+37を表示しろというもの。なるほど。ここからスタートです。
かっこ閉じが抜けてますが、こんな感じです。
printf””で%dを画面に表示して、
%dで10進数で表すことを宣言して、
コンマの後でその%dの中身が15+37だと指定しています。
ここを15-37とか、15*37とかにすると表示される計算結果が変わってくるみたい。
(*は ×「かける」と同じ意味)
includeとかint mainとかreturnとかはよく分からないけど、これはこの章では変わらないのでスルー。
includeはどこに保存するかとかそんな感じ?まあわからん。
まあまあそれ以外は大丈夫でしょう。
さて次、「15と37の和は52です。」を表示します。
これがコンピューターか。
15+37は何とかです。って書いてあるのに、数をわざわざもう1回15+37と指定しないといけないんです。いやそこは分かるだろと。
コンピューターは意味を理解していないってのはこういうことなんですね。
あと、1行なのに\nをつけるのはなんでなんだろうか。さっきはなかったのに。
父に聞いたら、基本いるらしい。最近は有能だからなくてもエラーにならないけど、あるのが普通らしい。まあつけとけばいいことがとりあえずわかった。
お次は、intの登場。
intでvx,vyが数を表す文字であることを教えてあげてから、vxは57でvyはそれに10を足したものであることを示します。
その後にさっきのを使ってvx,vyがこの数字だよと言うことを表示してあげます。といった感じです。
ここでもう一つ大きな発見がありました。
例えば、x=x+10
これは数学的には処理不可能であり明らかに間違っています。しかしこれはコンピューターの世界ではいけるらしい。
コンピューターのイコールはあくまで次以降の文字にこの値を入れることを示しているだけなので、x=10,x=x+10でxを表示ってやると20が出てくるみたい。
一旦xを10と決めて、次にxを前に出てきたxに10を足したものだと決め直しているだけなので、なんもエラーが起きることなく表示されます。なってこった。
次は、scanf。
まずnoが数を表す文字だと示して、printfで整数を入力してもらう欄を作ります。:の後に書く感じ。
scanfはそれを読み取ってnoがその数字だと言っています。&は文字の前に打つものらしい。なんでかは知りません。笑
そしてその後に、入力された数字noを10進数で表示します。といった流れです。
ちなみに最後のprintfにno+10など計算式を打てば、もちろんその結果が表示されます。
2個入力してもらって、その和を表示することも可能です。
サイトを見た人が入力してそれに対応してこっちが動くという対話が生まれてきたのでちょっと世のサイトに近づいた気がして楽しくなってきました。
これで1章が終了です!
まとめ
いかがだったでしょうか。とっても基礎のところからやっているので何とかすらすら進むことが出来ました。でも、斬新な発見もいくつかあったし、自分が打った通りに結果が出てきた時はやはり達成感があります!
今回は出力結果の写真がなく分かりづらかったと思いますので、次回からは自分で実際に打った画面と結果の写真も載せつつやっていきたいと思います。
間違ってるところとか、疑問に思ったことの答えを知ってる方はぜひ教えてください!
次回もよろしくお願いします!では!
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?