• Save
プログラミングをはじめよう1
Upcoming SlideShare
Loading in...5
×
 

プログラミングをはじめよう1

on

  • 895 views

Introduce to Programing

Introduce to Programing

Statistics

Views

Total Views
895
Views on SlideShare
892
Embed Views
3

Actions

Likes
0
Downloads
0
Comments
0

1 Embed 3

http://s.deeeki.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

プログラミングをはじめよう1 プログラミングをはじめよう1 Presentation Transcript

  • Introduce to programming C言語ではじめよう Shuji Hosaka 保坂 修治 14年2月21日金曜日
  • コンピュータ君 ・・・ しなさい ??? 人間の言葉は理解できない 10110101 01100101 機械語しか理解できない 14年2月21日金曜日
  • 機械語 0101001101110101 1011011110100010 111010011010100 010110001110101 110011001010011 1111011101010110 ・・・ 私たちには チンプンカンプンだわ 14年2月21日金曜日
  • プログラミング言語 int main(void) { int i; char ch, name[64]; printf(“input your name¥n”); while((ch=getchar()) != ‘¥n’) name[i++] = ch; printf(“Hello, Mr. %s.¥n”, name); } return 0; これならわかるかも .. 14年2月21日金曜日
  • でも、プログラミング言語は 機械語じゃないよね? 14年2月21日金曜日
  • コ パイル ン コンピュータが翻訳してくれます #include <stdio.h> int main(void) { int i; char ch, name[64]; printf(“input your name¥n”); while((ch=getchar()) != ‘¥n’) name[i++] = ch; printf(“Hello, Mr. %s.¥n”, name); } return 0; プログラミング言語 なるほど 14年2月21日金曜日 コ パ ル ン イ 0101001101110101 1011011110100010 111010011010100 010110001110101 110011001010011 1111011101010110 01010001110100 11010110100011 ・・・ 機械語
  • プログラミング言語の進化 1960 1970 1980 COBOL BASIC 1990 2000 PHP Perl Ruby Python JavaScript FORTRAN ALGOL C++ C Java Simula C# Smalltalk Scheme LISP Common LISP ML Ocaml Haskell 14年2月21日金曜日
  • C言語 誕生日 1972年 誕生地 AT&Tベル研究所(アメリカ) 生みの親 デニス・リッチー 使命 UNIX(オペレーティングシステム)    記述する 最も利用されている言語のひとつ 14年2月21日金曜日
  • プログラミングを はじめよう 14年2月21日金曜日
  • 準備するもの コンピュータ コンパイラ 14年2月21日金曜日 ハードウエア エディタ ソフトウエア
  • プログラム作成の手順 「ソースコード」を書く ソースコードファイルを「コンパイル」する プログラムを「実行」する 14年2月21日金曜日
  • エディタを使ってソースコードを入力してみた 14年2月21日金曜日
  • cコンパイラ ソースコードファイル名 実行可能ファイルの生成に成功! ソースコードファイルをコンパイルしてみた 14年2月21日金曜日
  • 実行 プログラムを実行してみた 14年2月21日金曜日
  • プログラムを見てみよう 14年2月21日金曜日
  • シャープ、インクルード、スペース、山括弧、エスティーディーアイオードットエイチ、山括弧閉じ #include <stdio.h> イント、スペース、メイン、括弧、ボイド、括弧閉じ int main(void) { printf(“Hello World!¥n”); return 0; } 波括弧       プリントエフ、 括弧、ダブルクォーテーション、ハローワールド、...       リターン、    ゼロ、セミコロン  波括弧閉じ 声に出して読んでみよう 14年2月21日金曜日
  • あらかじめ定義されている キーワードや記号などを 組み合わせて意味を構成する 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; } わかりやすいように色分けしてみた 14年2月21日金曜日
  • プログラムを詳しく見てみよう 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; } 14年2月21日金曜日
  • #include <stdio.h> プリプロセッサ・ディレクティブ int main(void) { printf(“Hello World!¥n”); return 0; } コンパイラに対する指示を書くところ 14年2月21日金曜日
  • #include <stdio.h> メイン関数 int main(void) { printf(“Hello World!¥n”); return 0; } プログラム全体の中で最初に処理される 特別な関数 14年2月21日金曜日
  • #include <stdio.h> メイン関数 int main(void) { printf(“Hello World!¥n”); return 0; } 波括弧{}で全体を閉じる 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; } 文末にセミコロン(;) 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; } Hello World!と表示しなさい printf関数 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; リターン文 } ゼロ オペレーティングシステムに0 を返すことで、プログラムが 正常終了したことを知らせる 14年2月21日金曜日
  • ソースコードの書き方 14年2月21日金曜日
  • ソースコードを書くことを コーディング:coding と言う 14年2月21日金曜日
  • コード:code  を辞書で調べてみた 【名詞】 1 符号、記号 2 暗号、信号 3 規則、規約、規定 4 法典、おきて 規則を守ってコードを書きましょう 14年2月21日金曜日
  • 半角英数字、 半角記号、 半角空白 を使って書く! 14年2月21日金曜日
  • コンパイラは、 2個目以降の空白や 改行は無視します。 14年2月21日金曜日
  • だから、こんな書き方でも 14年2月21日金曜日
  • #include <stdio.h> int main(void){ printf(“Hello World!¥n”); return 0; } 1行にまとめてコーディングしてみた。 14年2月21日金曜日
  • コンパイルして実行した。 実行できた... 14年2月21日金曜日
  • #include <math.h> #define FC 10.0 typedef struct point{! double x;!double y;}Point; typedef struct car{ char name[64]; Point pos; double gas; }Car; double distance(Point p1, Point p2); int isMove(Car car, Point dist); void info(Car c); double distance(Point p1, Point p2){! return sqrt(pow(p2.x-p1.x,2)+pow(p2.y-p1.y,2)); } int isMove(Car car, Point dist){ double d = distance(car.pos, dist); if(d!=0 && car.gas >= d/FC) return 1; else return 0; } void info(Car car) { printf("-----------------------------n"); printf("Name of car:%sn",car.name); printf("position:%.2f,%.2f n",car.pos.x, car.pos.y); printf("gal:%.2fn",car.gas); printf("-----------------------------n"); } int main(void){ Car mycar; Point distination; printf("car> "); scanf("%s",mycar.name); printf("gas> "); scanf("%lf",&mycar.gas); 長いコードを 空白と行数をけちって入力してみた... 14年2月21日金曜日
  • #include <math.h> #define FC 10.0 typedef struct point{! double x;!double y;}Point; typedef struct car{ char name[64]; Point pos; double gas; }Car; double distance(Point p1, Point p2); int isMove(Car car, Point dist); void info(Car c); double distance(Point p1, Point p2){! return sqrt(pow(p2.x-p1.x,2)+pow(p2.y-p1.y,2)); } int isMove(Car car, Point dist){ double d = distance(car.pos, dist); if(d!=0 && car.gas >= d/FC) return 1; else return 0; } void info(Car car) { printf("-----------------------------n"); printf("Name of car:%sn",car.name); printf("position:%.2f,%.2f n",car.pos.x, car.pos.y); printf("gal:%.2fn",car.gas); printf("-----------------------------n"); } int main(void){ Car mycar; Point distination; printf("car> "); scanf("%s",mycar.name); printf("gas> "); scanf("%lf",&mycar.gas); ごちゃごちゃして、よくわからなくなった... 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; } 適度な空白、改行を入れて プログラムの構造まで見えるように書く 14年2月21日金曜日
  • #include <stdio.h> 改行 改行 改行 int main(void) { 改行 TAB printf(“Hello World!¥n”); TAB return 0; 改行 } 改行 波カッコ{〜}の間はTABキーを使って インデント(字下げ)を入れる 14年2月21日金曜日 改行
  • きれいなコード = わかりやすいコード 14年2月21日金曜日
  • 補足 14年2月21日金曜日
  • #include <stdio.h> プリプロセッサ・ディレクティブ int main(void) コンパイラに対して、「この プログラムにヘッダファイル { stdio.hを含めろ」という指示 printf(“Hello World!¥n”); ヘッダファイルstdio.hに return 0; は、画面に文字列を表示する ためのprintfなど標準入出力 } (standard input output)に関 連するプログラムが定義され ている 14年2月21日金曜日
  • #include <stdio.h> 関数の宣言 int main(void) 戻値の型{ 関数名 引数 printf(“Hello World!¥n”); return 0; } もどりち 14年2月21日金曜日
  • #include <stdio.h> 関数の定義 int main(void) { printf(“Hello World!¥n”); return 0; } 波カッコ{〜}の間に処理の手順を書く 14年2月21日金曜日
  • #include <stdio.h> int main(void) { printf(“Hello World!¥n”); return 0; } コンピュータに対する一つの指示を 文(statement)と言い、 文末には必ずセミコロン(;)を付ける 14年2月21日金曜日