ぷろぐらみんぐ!

プログラマーを目指して勉強する大学生のブログ

変数なんて簡単簡単 C#3

こんにちは!

 

今回は数値の計算から始めていきたいと思います。

プログラミング言語は数値を計算するための言語だと勉強したので、気合い入れて頑張っていこうと思います。

 

 

C言語では数値と数字を区別して扱う。

C言語において""の中に書かれている文字や数字を文字列(文字列リテラル)という。

・数値を書きたい場合は""で囲わずに書く。

・数字は計算に使えず、数値は計算に使える。

・printf関数で数値を表現するには出力変換指定子を使う。

出力変換指定子とは外部のデータを文字列に変換して表示するときに、その変換方法を指定する記号。

・整数値を文字列に変換するには%d指定子を使う。

 

 

あまり耳慣れない言葉がいくつか出てきました。

出力変換指定子がよくわからなかったのですが、サンプルプログラムを書き写して実行してみると簡単にわかりました。

 

f:id:fujigg7:20170211035032p:plain

 

簡単に言うと、

""の中に数値を書きたいがそのまま書いてしまうと数字になってしまう。だから代わりに%dという記号を使って、後から数字を代入する

ということです。(長文になると簡単に見えない...)

 

続きをやっていきます!

 

 

C言語では掛け算の計算記号を * 、割り算を / で表す。(+,- はそのまま)

・% を使えば割り算した時の余り計算することができる。

・数値を整数として計算する時は少数以下は切り捨てられ、整数となる。

・数式の計算する順番は数学と同じ。

 

 

ここら辺はまだまだ余裕ですね。

どんどん先に進みます。

 

 

C言語では数値を整数と実数(浮動小数)の2種類に分類して扱う。

・整数とは、負の数と0と自然数のこと。

・実数とは、小数を含む数のこと。

・整数は10進数、8進数、16進数の3種類の書き方が出来る。

・数字をそのまま書けば10進数、数字の前に0を付ければ8進数、0xを付ければ16進数になる。

・実数を数字に変換するには %f 指定子を使う。

 

 

一見難しいことが書いてありますが、読んでみるとそうでもありませんでした。

次は練習問題です。

 

f:id:fujigg7:20170211042311p:plain

 

余裕です!

まだまだ進みましょう!

 

 

次は数値の記憶ということで、ついに変数が出てきます。

どんどんプログラミングっぽくなってきますね!

それでは簡単にまとめます。

 

 

・変数とは数値を保管するための箱のようなもの。

・変数に名前を付けることを変数を宣言するという。

・変数を宣言するには、型名 変数名; と書く。

・型名とは記憶しておきたい数値の種類を表す名前。

・今は整数を意味する int という型名を覚えておく。

・変数名とは変数に付ける名前のこと。

・変数に数値を記憶させるには、 変数名 = 数値; と書く。

・なお、= は右辺と左辺が等しいという数学的な意味ではなく、右辺の数値を左辺に代入するという意味。

f:id:fujigg7:20170211044722p:plain

f:id:fujigg7:20170211045321p:plain

 

少しずつまとめる内容が多くなってきました。

変数は数学でよく出てくる x のみたいなものなんでしょうか?

= の意味には要注意ですね。

←に置きかえたらわかりやすいみたいです。

ひととおり演算子を覚えたら次へ進みましょう。

 

C言語にはさまざまな種類の数値があり、それをデータ型と呼ぶことがある。

・整数を記憶する int 型、実数を意味する double 型、今はこの2種類のデータ型を覚えておく。

・整数と実数で計算を行った場合、結果は実数に変換される。

・型を強制的に変換する場合キャスト変換という機能を使う。

・キャスト変換をするには、下のように書く。

(変換する型名) 数値や変換名

・printf関数は、出力変換指定子の間に数字を入れると、その数字分の桁に揃えて表示してくれるという機能を持つ。

また、桁数の前に0を付けると、空白の代わりに0を付けて桁を揃えてくれる。

・実数値の桁数を揃えるには下のように書く。

%全体桁数.小数桁数f

全体桁数は小数の桁数と小数点を含むことに注意。

 

データ型の方は理解しやすいですが、桁揃えには少しややこしいですね。

特に実数値に注意。

 

 

次は練習問題です。

 

 

f:id:fujigg7:20170211062039p:plain

 

今回はプログラム書き取り問題に少し苦戦しました。

少し苦戦した分、うまくいったときは今まで以上にうれしかったです!

 

 

いつの間にか1600文字を超えていたので今回はここまでにしたいと思います。

今回でかなりプログラミングっぽい内容になってきました。

すごく楽しくなってきたのでこれからも毎日頑張っていきたいと思います!

 

 

それでは。

プログラムの書き方 C#2

こんにちは!

 

今日も前の続きをしていきます。

今日はプログラムの書き方のルールから勉強していきます。

早速まとめてみると、

 

C言語では単語のことをトークンと呼ぶ。

トークンをつなげない限り、自由に書いていい。(改行、スペース自由に入れていい)

・大文字と小文字を区別する。

・全角文字は使えない、半角のみ使える。

・インデントとは右に字をずらすこと

・自由に書いてもいいのだが、読みやすくするためにインデントをする。

・プログラムを読みやすくするためにコメントを書く。

・コメントは説明文のことで、 /**/ と書く。

 

となります。

ここで大事なことは大文字小文字を区別することと、インデントとコメントですかね。

 

次は、画面に文字列を表示させる方法について学びます。

 

・printf("文字列");

 

これを使うと画面に文字列を表示できます。

C言語の開発環境構築の時に使いましたね。

 

次に疑似命令について学びます。

 

・疑似命令はプログラムコードでない命令。

・#includeは説明書を渡す役割を果たす。<>の中身が説明書にあたる。

・#include <stdio.h> と書けばprintf関数が使えるようになる。

・疑似命令は一番最初に書く。(関数の外に書ける)

 

ここは少しわかりにくい内容ですが、勉強を進めるうちに理解を深めていければと思います。

 

ここまで来たらようやくプログラムが書けます!

早速書いてみましょう!

 

f:id:fujigg7:20170209030401p:plain

 

さっそく実行!

 

f:id:fujigg7:20170209030533p:plain

 

hello!

うまくいきました!

たった数行の文章ですが、自分で書いたプログラムが動いたときは感動しますね。

 

 

どんどん先に進みます。

次は改行を行うための方法を学びます。

改行はエスケープシーケンスというものを使って行います。

エスケープシーケンスとは画面に表示できないような処理を行うときに使う特殊文字のことです。

改行をするには\nを使います。

 \はお使いのpc環境によっては¥になることがありますが、同じ記号なので大丈夫です。

 

f:id:fujigg7:20170209094648p:plain

 

printf関数内の文字列に\nを付け足した後、実行してみると、、、

 

f:id:fujigg7:20170209094742p:plain

 

hello!の後ろに改行が入っています。

エスケープシーケンスを使っていない時よりも読みやすくなりましたね。

 

ほかにも\tというエスケープシーケンスもよく使うみたいですので覚えておきましょう。

\tを使うとタブを挿入し、文字列をそろえて表示することができます。

 

 

次は練習問題です。

まだ始めたばかりなので問題も簡単ですね。

 

f:id:fujigg7:20170209100948p:plain

 

プログラム書取問題もクリアしました!

 

まだまだ進めそうですが、そろそろ1000文字を超えてきたので明日の記事に書きたいと思います。

 

それでは。

初心者がC言語の基礎を絵で理解してみる C#1

こんにちは!

 

今日からC言語の勉強を始めていきます。

 

勉強方法についてですが、苦しんで覚えるC言語というサイトを使って勉強していこうと思います。

 

苦しんで覚えるC言語

 

 普通なら本屋さんで高い参考書を買わなければいけないところですが、無料で見れるなんてありがたいお話です。

作者様に感謝しつつ、勉強を始めていきたいと思います。

 

 

目次に沿ってやっていきます。

 まずはAの苦Cについてを一気に読みました。

 開発環境は前にやったので、Bも大丈夫です。

 

 

本題に入っていきます第0部!

ここではプログラムとは何かについて学びます。

簡単にまとめると、

 

コンピュータのためのプログラミング言語と普段私たちが使っている自然言語の違いを理解することがプログラミング学習の第一歩である。

 

プログラミング言語は文法が単純で、すべての行動を事細かに命令しなければならない。

 

また、プログラミング言語は数値を計算するための言語であり、数値以外の概念は存在しない。点も線もすべて数値である。

 

ということです。

 YouTubeで動画を見ることや、Twitterやline、このブログがすべて計算だけでできているということでしょうか。

今の段階ではあまりピンときませんが、どんどん進みましょう。

 

 

次は第1部、C言語の基礎編を見ていきます。

ここではついにC言語の中身に触れていきます!

ここで学んだことを簡単にまとめます。

 

f:id:fujigg7:20170208200534p:plain

 

f:id:fujigg7:20170208205218p:plain

 

本格的なプログラミングの勉強が始まってきました!

ハローワールドのプログラムはこんな意味だったんですね。

まだよくわからないところもありますが次に進みます。

 

 

次は、簡単なコンピュータの歴史やコンパイルについて学びます。

簡単にまとめると、人間にわかるのが高級言語で、コンピュータがわかるのが低級言語。機械語は低級言語にあたる。

コンパイラについては下の画像で!

 

f:id:fujigg7:20170208205125p:plain

 

絵をかいてみるとわかりやすい気がします。

 

 

ここまできたら練習問題です。

僕は何とか全問正解できました!

 

 

今日はここまでにしたいと思います。

今日の感想は、楽しくできましたが、あまり進むことが出来ませんでした。

次からはもう少しブログを書く時間を短くしていきたいと思います。

 

それでは!