プログラムって難しい?!
プログラム言語は、機械語、アセンブラ、C、Java、Perlなどさまざまですが、コンピュータを自動的に動かすためのという点では、共通のものです。
では、コンピュータってどのようなものでしょう?
教科書などでは、5大装置などと言ってますが、入力、記憶、制御、演算、出力の5つの装置をもつものをコンピュータといっています。
プログラムは、これらの装置を自動的に活用するための指示をまとめたものです。
指示は、だれが、なにを、どのように、どうする。のように出しますよね。
プログラムも同様です。
「キーボードから、2つの整数を入力し、大きい方から小さい方を引いた差を求めて、ディスプレイに表示する。」
というような作業をコンピュータに自動的に行わせることを考えます。
ここで、プログラマは、どの言語を利用するか考えます。
キーボードからの入力を細かく確認する必要もなく、演算結果が必要なのですから、機械語やアセンブラは、不向きです。
では、CかJavaでしょうか?
ここで、OSは、一般的なWIndows環境とします。Cは、OSを記述することも可能な言語ですが、Windows環境でアプリケーションウィンドウを表示することも入門レベルでは難しいです。
一方Javaは、GUIを利用することも比較的簡単に行えます。ただ、オブジェクト指向という考え方が入門者には難しいようです。
そこで、今回は、Windowsのコマンドラインで動作するということにします。これなら、C言語で簡単に扱えます。printf()という関数だけでディスプレイに出力できます。
C言語は、作業順にプログラムを記述していけばいいので、
「キーボードから、2つの整数を入力」
とここまで書いて・・・なんか読む気がうせるだろーな?!と気がついたので、次の機会に図解しようかと思う。
で、取り合えず続き・・・
キーボードからの入力は、C言語では、stdio.hというヘッダーファイルを使うことで簡単に利用可能です。
printf() という関数が、有名です。
入力されたデータは、放っておくとすぐに消えてしまいます。なので、記憶しておくように指示します。プログラムでは一般的に、変数という考え方で記憶の指示を出します。
何を入れるかによって、入れ物の形は変わります。今回は整数を入れます。2つ用意します。
「記憶したデータの大小比較をして差を求め結果を表示する」という処理は、変数と演算、printf()関数で指示できます。
ここまで、書けば分かるでしょう?と思ってしまうのですが、理解できない人にとっては、まったく理解不能らしいので、あとで、続きを書きます。
今日はここまで
では、コンピュータってどのようなものでしょう?
教科書などでは、5大装置などと言ってますが、入力、記憶、制御、演算、出力の5つの装置をもつものをコンピュータといっています。
プログラムは、これらの装置を自動的に活用するための指示をまとめたものです。
指示は、だれが、なにを、どのように、どうする。のように出しますよね。
プログラムも同様です。
「キーボードから、2つの整数を入力し、大きい方から小さい方を引いた差を求めて、ディスプレイに表示する。」
というような作業をコンピュータに自動的に行わせることを考えます。
ここで、プログラマは、どの言語を利用するか考えます。
キーボードからの入力を細かく確認する必要もなく、演算結果が必要なのですから、機械語やアセンブラは、不向きです。
では、CかJavaでしょうか?
ここで、OSは、一般的なWIndows環境とします。Cは、OSを記述することも可能な言語ですが、Windows環境でアプリケーションウィンドウを表示することも入門レベルでは難しいです。
一方Javaは、GUIを利用することも比較的簡単に行えます。ただ、オブジェクト指向という考え方が入門者には難しいようです。
そこで、今回は、Windowsのコマンドラインで動作するということにします。これなら、C言語で簡単に扱えます。printf()という関数だけでディスプレイに出力できます。
C言語は、作業順にプログラムを記述していけばいいので、
「キーボードから、2つの整数を入力」
とここまで書いて・・・なんか読む気がうせるだろーな?!と気がついたので、次の機会に図解しようかと思う。
で、取り合えず続き・・・
キーボードからの入力は、C言語では、stdio.hというヘッダーファイルを使うことで簡単に利用可能です。
printf() という関数が、有名です。
入力されたデータは、放っておくとすぐに消えてしまいます。なので、記憶しておくように指示します。プログラムでは一般的に、変数という考え方で記憶の指示を出します。
何を入れるかによって、入れ物の形は変わります。今回は整数を入れます。2つ用意します。
「記憶したデータの大小比較をして差を求め結果を表示する」という処理は、変数と演算、printf()関数で指示できます。
ここまで、書けば分かるでしょう?と思ってしまうのですが、理解できない人にとっては、まったく理解不能らしいので、あとで、続きを書きます。
今日はここまで
条件判断
選択型のプログラムは、難しそう・・・というコメントがありますが
多くのプログラムには、選択型の部分が存在します。
選択型は、条件によって、処理内容を変えるという処理です。
たとえば、2つの整数を入力して、その差を求めるということを考えると、入力された2つの整数を、そのまま引いたのでは、答えが負の数になることがあります。
これを防ぐ方法のひとつとして、入力された2つの整数を大小比較して、大きい数から、小さい数を引くようにします。
流れ図は、
プログラムは、
#include <stdio.h>
main(){
int a, b, c;
scanf("%d %d", &a, &b);
if(a > b){
c = a - b;
}else{
c = b - a;
}
printf("%d\n", c);
}
となります。
簡単なものから、動きを考えて、徐々に複雑なものに挑戦してください。
多くのプログラムには、選択型の部分が存在します。
選択型は、条件によって、処理内容を変えるという処理です。
たとえば、2つの整数を入力して、その差を求めるということを考えると、入力された2つの整数を、そのまま引いたのでは、答えが負の数になることがあります。
これを防ぐ方法のひとつとして、入力された2つの整数を大小比較して、大きい数から、小さい数を引くようにします。
流れ図は、
プログラムは、
#include <stdio.h>
main(){
int a, b, c;
scanf("%d %d", &a, &b);
if(a > b){
c = a - b;
}else{
c = b - a;
}
printf("%d\n", c);
}
となります。
簡単なものから、動きを考えて、徐々に複雑なものに挑戦してください。
