Microsoft Word - no01.docx

Similar documents
Microsoft Word - no01.docx

Microsoft Word - no01.doc

Microsoft Word - no02.doc

プログラミング基礎

Microsoft Word - no11.docx

Microsoft Word - CygwinでPython.docx

Microsoft PowerPoint - kougi2.ppt

Microsoft PowerPoint - 07.ppt [互換モード]

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

Microsoft Word - no103.docx

Microsoft Word - Mac版 Eclipseの導入と設定.docx

Microsoft PowerPoint - guidance.ppt

ガイダンス

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

コンピュータ中級B ~Javaプログラミング~ 第3回 コンピュータと情報をやりとりするには?

プログラミング実習I

Microsoft PowerPoint - å®�æ−•è©¦é¨fi3ㆮ対ç�Œ.pptx

第 1 回 C 言語講座 1. コンピュータって? だいたいは 演算装置 制御装置 記憶装置 入出力装置から構成されている 演算装置 CPU の一部で実際に計算を行う装置 制御装置 CPU の一部で演算装置や入出力装置 記憶装置の読み書きなどを制御する装置 記憶装置プログラムや情報 データを一時的

目次 1. はじめに ユーザーアカウント制御の設定の一時無効化 プリンタの追加 設定 共有フォルダからのインストールプログラムの取得 バッチファイルの実行 プリンタ追加の確認 印刷方法..

C#の基本

1. 関数 scanf() 関数 printf() は変数の値を画面に表示しますが それに対し関数 scanf() はキーボードで入力した値を変数に代入します この関数を活用することで対話式 ( ユーザーの操作に応じて処理を行う ) プログラムを作ることができるようになります 整数の和

プログラミング基礎

プログラミングI 第2回 数理物理,総合理学等向け

4 分岐処理と繰返し処理 ( 教科書 P.32) プログラムの基本的処理は三つある. (1) 順次処理 : 上から下に順番に処理する ぶんきそろ (2) 分岐処理 : 条件が揃えば, 処理する はんぷく (3) 反復処理 : 条件が揃うまで処理を繰り返す 全てのプログラムは (1) から (3) の

パソコンの中を見よう

2/10 ページ 対象画像の選択 エルスプローラなどで対象の ( 縮小する ) 画像が入っているフォルダーを開きます 例えば 次の通りです 例では 下のフォルダーから反転しているファイル ( つまり 2006_ JPG ) を縮小するものとします 以下の説明では 対象画像 と呼びます

C C UNIX C ( ) 4 1 HTML 1

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F

指定立替納付を使った場合の 国内提出書類の提出方法 1 出願書類や 納付書などを 指定立替納付で支払う場合の手順をご案内します ここでは ひな型を Word で編集する場合の手順を案内します 他を利用する場合は ユーザガイドをご覧ください (1) 指定立替納付を使うための事前準備 a. クレジットカ

フィルタとは

今月の呼びかけ 添付資料 ファイル名に細工を施されたウイルスに注意! ~ 見た目でパソコン利用者をだます手口 ~ 2011 年 9 月 IPA に RLTrap というウイルスの大量の検出報告 ( 約 5 万件 ) が寄せられました このウイルスには パソコン利用者がファイルの見た目 ( 主に拡張子

Microsoft PowerPoint - 計算機言語 第7回.ppt

GEC-Java

GEC-Java

数量的アプローチ 年 6 月 11 日 イントロダクション データ分析をマスターする 12 のレッスン ウェブサポートページ ( 有斐閣 ) 水落研究室 R http:

Microsoft PowerPoint - prog03.ppt

Microsoft PowerPoint - 説明2_演算と型(C_guide2)【2015新教材対応確認済み】.pptx

ポインタ変数

初めてのプログラミング

Microsoft Word - Cプログラミング演習(1)_2012

PowerPoint プレゼンテーション

CubePDF ユーザーズマニュアル

3.Cygwin で日本語を使いたい Cygwin で以下のコマンドを実行すると それ以降 メッセージが日本語になります export LANG=ja_JP.UTF-8 これは 文字コードを日本語の UTF-8 に設定することを意味しています UTF-8 は Cygwin で標準の文字コードで, 多

ic3_cf_p1-70_1018.indd

新規インストールガイド Microsoft Office Professional Plus 2016 本書は Download Station から Microsoft Office Professional Plus 2016( 以下 Office) をダウンロ ドし 新規インストールを行う手順

/*Source.cpp*/ #include<stdio.h> //printf はここでインクルードして初めて使えるようになる // ここで関数 average を定義 3 つの整数の平均値を返す double 型の関数です double average(int a,int b,int c){

Microsoft Word - no202.docx

Microsoft Word - 205MSPowerpoint2010

Microsoft Word - macマニュアル【 】.doc

PowerPoint Presentation

JavaプログラミングⅠ

1. 画面説明 ここでは普通にアプリケーションを開いた場合に表示される対話型画面の説明をしています パスワード ( 再入力 ) パスワード登録 パスワード消去 事前チェックの処理の際に必要になるパスワ

数はファイル内のどの関数からでも参照できるので便利ではありますが 変数の衝突が起こったり ファイル内のどこで値が書き換えられたかわかりづらくなったりなどの欠点があります 複数の関数で変数を共有する時は出来るだけ引数を使うようにし グローバル変数は プログラムの全体の状態を表すものなど最低限のものに留

目次 1. ログイン ログアウト デスクトップ ( 例 :Word Excel 起動中 ) Dock( 例 :Word Excel 起動中 ) Finder ウィンドウ メニューバー ( 例 :Word 起動中 )...

引き算アフィリ ASP 登録用の日記サイトを 作成しよう Copyright 株式会社アリウープ, All Rights Reserved. 1

教材ドットコムオリジナル教材 0から始めるiアプリ (3) 0 から始める i アプリ (3) i アプリを作れるようになったならば次は公開です i アプリでは前述したように たとえエミュレータで動作確認ができたからといって実機のテストを怠ってはいけません 実機での処理速度 発色 プログラム等の耐性

講習No.1

Prog1_6th

Microsoft Word A02

【第一稿】論文執筆のためのワード活用術 (1).docx.docx

1セル範囲 A13:E196 を選択し メニューの データ - 並べ替え をクリック 並べ替え ダイアログボックスで 最優先されるキー から 年代 を選択し OK をクリック ( セル範囲 A13:E196 のデータが 年代 で並び替えられたことを確認する ) 2セル範囲 A13:E196 を選択し

PowerPoint プレゼンテーション

SimLabプラグインは各機能を15回分評価版として試用できます

ユーザーズマニュアル 神戸親和女子大学情報処理教育センター 年 4 月版

計算機プログラミング

スライド 1

Microsoft Word - VBA基礎(1).docx

ファクス送信用変換ソフト 操作説明書_UA

1.Sound Engine Free の起動と 設定 Sound EngineFree を起動すると右下の画面が開きます Sound Engine Free のアイコン 起動時更新のチェック のチェックを外す 通常 録音はインターネットに接続されていない環境でおこないます そのような環境で Sou

Microsoft Edge の場合 (1) Mizdori 無料体験版ダウンロード画面の [ 体験版ダウンロード ] ボタンをクリックします (2) Edge の下部に mizdori_taiken_setup.zip について行う操作を選んでください と表示され ますので [ 開く ] をクリッ

第2章 Macintoshの基本操作

Microsoft Word - index.html


内容 1 はじめに インストールの手順 起動の手順 Enterprise Architect のプロジェクトファイルを開く 内容を参照する プロジェクトブラウザを利用する ダイアグラムを開く 便利な機能.

パソコンから ipad へ ビデオを転送する方法 作成 パソコン教室あいぱっどくらぶ

Microsoft Word - VB.doc

SimLab Plugins for SketchUp 評価版インストールおよびアクティベート方法 注意事項 評価版をお使い頂くには 評価用ライセンスでのアクティベートが必要です 評価用ライセンスファイルの取得を行い 手動でアクティベートする必要があります 各 SimLab プラグインは 評価用とし

PowerPoint プレゼンテーション

スクールCOBOL2002

< 目次 > 1. 練習ファイルのダウンロード 表計算ソフト Excel の基本 Excel でできること Excel の画面 セル 行 列の選択 セルにデータを入力する ( 半角英数字の場合 )

目次 1 文字数や行数を指定する 段組み 文書全体に段組みを設定する 文書の途中から段組みを設定する 段の幅 ( 文字数 ) や間隔を設定する ページ番号 ページ番号をつける 先頭ペ

中綴じ3・4級.ren

プログラミング基礎

補足資料

Microsoft PowerPoint - C4(反復for).ppt

Microsoft Word - No6_word1.doc

DVIOUT

1. Borland C++Compiler をインストールする 1.1. Borland C++Compiler をダウンロードする Borland C++Compiler とは Borland 社がフリーソフトウェアとして公開している C 言語と C++ 言語の Windows 用コンパイラです

Wordの学習

スライド 1

保存を行いたい場所 ( デスクトップ 等 ) を選択し 保存 (S) ボタンを押してください ファイル名 ファイル名は Jsas_TSKPrint.exe という初期値になっていますが 変更することができます 2 データのダウンロード ボタンを押すと 一括印刷用ソフトに取り込む停止及び警告認定者 (

スライド 1

Microsoft Word - no15.docx

目次 第 1 章はじめに 電子入札システムを使用するまでの流れ 1 第 2 章 Java ポリシーを設定する前に 前提条件の確認 2 第 3 章 Java のバージョンについて Java バージョン確認方法 Java のアンインストール ( ケース2の

ゲームプログラミング講習 第0章 導入

Format text with styles

kiso2-09.key

学生へのメッセージ パソコンを今まで操作したことがない学生にも対応できるベルから学習しますが 徐々にレベルを上げていきます 油断せずに 遅刻は厳禁です 講義開始前にコンピュータを使える状態にしておいてください

ポインタ変数

Microsoft Word - メールでの送受信(添付方法).doc

Transcription:

プログラミング基礎 1. プログラミング言語 1.1 ハードウエアとソフトウエア パソコンをはじめとするコンピュータは ハードウエア といわれます このハードウエアだけで何 ができるかといえば単なる計算だけです もちろんそれを表示することもできませんし キーボードから文字を打つこともできません 計算ができるといっても 数字を入力できないのですから数値を与えることすらできないのです このハードウエアを制御したり 計算させたりするために必要なのが ソフトウエア です ソフトウエアがハードウエアをコントロールしているわけです 前期の文書処理で使ったワープロソフト MS-Word や表計算ソフト MS-Excel もそんなソフトウエアの一つです ソフトウエアがあるからこそ ハードウエアを使うことができるのです そのソフトウエアを プログラム とも呼びます このソフトウエアを作るために必要なのがプログラミング言語なのです 逆にいえば ソフトウエアがあるとからこそパソコンというハードウエアが意味を持ってくるのです ここのプログラミング基礎では そのプログラムを作成するための最初の部分を学習します 1.2 プログラミング言語とは すでに習っていると思いますが コンピュータ ( 正確には CPU) が理解できるのは マシン語 ( 機械語 ) といわれるものだけで す このマシン語は人には単なる数字の羅列にしか見えません 2 進数ですが ほとんどの場合 16 進数で表示することが多いの です 24 5F BC 47 しかし これでは人間にとっては何がなんだか分かりません そこで そのマシン語を人間の言葉に近いもの ( アメリカで生ま mov ax, bx れたのでもちろん英語をもとにしています ) で置き換えたものが add bx : アセンブラ言語 といわれるものです このアセンブラ言語を マシン語に変換するプログラムをアセンブラといいます 一応 人の言葉に近いものになっていますがわかりにくいものです ア #include <stdio.h> センブラ言語を 低水準言語 ( 低級言語 ) といいます int main(void) アセンブラ言語では開発効率が低い わかりにくいなどの問題 { 点があります そこで もっと人間の言葉に近い 開発効率を考えた言語の開発が行われました アセンブラ言語に対して この言語を 高水準言語 ( 高級言語 ) といいます ここで扱う C 言 printf("hello"); return(0); 語のほかにも BASIC や Fortran, Pascal, Java などが高水準言語 です しかし どの言語も英語を元にしているので かなり似たものに見えます ですから プログラミン グ言語 特に高水準言語はひとつを知っていれば 二つ名以降の学習は割と楽になることが多いもので す 1

1.3 コンパイラとインタプリタプログラミング言語で書かれたプログラムを ソースプログラム といいます しかし これはマシン語ではないので CPU は理解することができません ソースプログラムを CPU の理解できるマシン語に変換しなければなりません この方法には 2 通りあります 一つ目は コンパイラ といわれるプログラムを使って ソースプログラムをすべて一度にマシン語に直し それを実行する方法です ちょうど英語の本を日本語に翻訳してもらい その本を読むようなイメージです 最初の翻訳のときには時間がかかりますが 本になっているのですから 繰り返し何度でも読むことができます もう一つは インタプリタ といわれるプログラムを使って ソースプログラムを 1 行ずつマシン語に直し 実行する方法です 英語の分かる人にその場で英語の本を日本語に訳して読んでもらうことのようなイメージです すぐに内容は分かりますが その場で訳してもらっているので 時間がかかります もう一度内容が知りたくなったら また 日本語に訳して読んでもらわなければなりません 今回の講義ではコンパイラを使って C について勉強して行きます ソースプログラム ソースプログラム 1 行ずつ コンパイラ マシン語 インタプリタ 実行 1.4 C 言語について 1950 年代に IBM で開発された最初の高水準プログラミング言語が Fortran でした この Fortran は数値計算の分野で現在も多く使われています この Fortran をもとに簡素化した BASIC も使われています 高校の範囲に含まれるのがこの BASIC です これらの言語はプログラムの流れがつかみにくくなるという欠点も持ってました これに対し 1970 年頃 構造化プログラミング といわれる概念が提案されました これはプログラムを論理的にわかりやすく記述することを目的としています 現在では この構造化プログラミングがもはや常識となり Fortran や BASIC の現在のバージョンでも 構造化プログラミングの概念を取り入れるようになっています C 言語は UNIX と呼ばれる OS のために AT&T のベル研究所のリッチー カーニハンらによって開発されたシステム記述用の言語で 構造化プログラミングを基本とする言語です 当初 C 言語はベル研を中心とした一部愛好家だけが使っていた言語でしたが UNIX システムの成功により研究機関へ普及していきました 普及に伴い 当初のシステム記述言語としての役割のほか 現在では科学技術計算用 事務処理 図形処理 各種ゲームなど幅広い分野で使われるようになりました 2

1.5 ファイルパソコンのディスクの中に保存されるものはすべて ファイル と呼ばれます たとえば ワープロで作成した文書であれば 文書ファイルと呼ばれます この講義で作成するのは ソースプログラムファイル ということになります このファイルを Wz-Edtor というエディタで作成することになります これをコンパイラを使ってマシン語に直すのですが これもディスクに保存されますのでファイルです CPU がわかる= 実行できることから 実行ファイル と呼びます この実行ファイルを作成することを コンパイルする と呼ぶことになります ソースファイル #include <stdio.h> int main(void) { printf("hello, World n"); コンパイラ 実行ファイル 実行 return(0); 3

2. はじめての C 2.1 使い方 1 ソースプログラムの入力 今回の講義では C++ 言語用の統合環境ソフトと いわれるプログラムを利用します デスクトップにある CPad for C++ のアイコン ( 右参照 ) をダブルクリックしましょう ( 同じアイコンで Java_pad とかいてあるものもありますので気をつけてください ) これで 起動します 統合環境を立ち上げると エディタ部とメッセージ部をもった画面が出てきます エディタ部はソースを入力 編集する部分で メッセージ部はコンパイラ等のメッセージを表示します ではエディター部に次のとおりに入力しましょう ex01.c #include <stdio.h> エディタ部 メッセージ部 int main(void) { printf("hello, world n"); return (0); 入力が終われば ファイル メニューから 名前をつけて保存 を選んで保存してください このとき 保存する場所 を変更するのを忘れないでください ファイル名は必ず ex01.c としてください 最後の.c を忘れないようにしましょう 適当なフォルダ ( 例えばプロ基礎 ) を作成して その中に保存しましょう 2コンパイル 実行次にこれをコンパイルして実行形式のファイルを作成します アプリケーションの三角のボタン ( 右図参照 ) を押します そうすると メッセージ部に次のように表示され ( 左 ) プログラムがコンパイルされたものが 実行されます ( 右 ) タイプミスなどがなければこのように実行されます もし タイプミスなどがありましたらエラーが出ます このときには ソースプログラムに戻って 間違いを直してください たとえば printf と 4

すべきところを print としてしまうと 左のようなダイアログが出て メッセージ部につぎのよう なエラーが出ます 警告 W8065 ex01.c 4: プロトタイプ宣言のない の部分のコロンの前の数字 4 がエラーのある行 を意味しています このときには 4 行目 もしくはその直前の行にミスがある可能性がありますので 自分で調べてください では もう少し 本格的なプログラムを入力して 実行してみましょう このプログラムの個々の内容については この講義の中で説明していきます 今日は特別に覚えなくても結構です ex02.c #include <stdio.h> int main(void) { int x, y; printf(" 整数を入れてください :"); scanf("%d", &x); y = x * x; printf("%d の 2 乗は %d です n", x, y); return (0); このプログラムをコンパイル 実行すると 整数を入れてください : と表示されます 正の整数をタイプし エンターキーを押すと その整数の2 乗の値を表示するものです 簡単なプログラムですが この講義ではこの程度のプログラムはすぐに作れるようになります 2.2 講義の Web http://hakuto.mis.ous.ac.jp/~yanagi/bprog2015/ 講義で配布した資料をここに全ておいておきます 紛失 欠席したとには自分で印刷しておいてください 5

レポート問題 どの問題も使えるのは天秤 ( てんびん ) だけとします つまり コインの質量の比較だけしかできないとします 問題 1 ここにコインが5 枚あります このうち 1 枚が偽コインで 偽コインは本物のコインに比べて重さが軽いことがわかっています 5 枚のコインに A, B, C, D, E と名前をつけるとき 偽コインを見つける方法を考えなさい 問題 2 ここにコインが4 枚あります このうち 2 枚が偽コインで 偽コインは本物のコインに比べて重さが軽いことがわかっています 4 枚のコインに A, B, C, D と名前をつけるとき 偽コインを見つける方法を考えなさい 問題 3 ここにコインが4 枚あります このなかに1 枚の偽コインが入っているか 全部本物のどちらかであることと 偽コインは本物のコインに比べて重さが軽いことがわかっています 4 枚のコインに A, B, C, D と名前をつけるとき あれば偽コインを見つける方法を考えなさい 問題 4 ここにコインが3 枚あります このうち 1 枚が偽コインで 偽コインは本物のコインに比べて重さが異なることがわかっています ( つまり 重いか軽いかはわかりません ) 3 枚のコインに A, B, C と名前をつけるとき 偽コインを見つける方法を考えなさい 問題 5 ここにコインが3 枚あります この中に偽コインが入っていることと 偽コインは本物のコインに比べて重さが軽いことがわかっています しかし 何枚偽コインかわかりません つまり 可能性としては全部本物である可能性はないけど 全部偽コインである可能性はあるということです 3 枚のコインに A, B, C と名前をつけるとき 偽コインを見つける方法を考えなさい 問題 6 ここにコインが3 枚あります この中に本物のコインが入っていることと 偽コインは本物のコインに比べて重さが軽いことがわかっています しかし 何枚偽コインかわかりません つまり 可能性としては全部本物である可能性はあるけど 全部偽コインである可能性はないということです 3 枚のコインに A, B, C と名前をつけるとき あれば偽コインを見つける方法を考えなさい 問題 7 ここにコインが3 枚あります この中に2 種類の偽コイン2 枚と1 枚の本物のコインが入っていることと 偽コインは本物のコインに比べて重さが軽いことがわかっていますが 種類によって重さは異なります 3 枚のコインに A, B, C と名前をつけるとき 偽コインを見つける方法を考えなさい 6

この 7 問のうち 学籍番号を 7 で割った余りによって次の問題の手順を作成して提出しなさい 7 で割った余り 0 1 2 3 4 5 6 問題 1 2 3 4 5 6 7 レポートの例問題 8 ここにコインが2 枚あります この中に偽コインが入っていることと 偽コインは本物のコインに比べて重さが軽いことがわかっています しかし 何枚偽コインかわかりません つまり 可能性としては全部本物である可能性はないけど 全部偽コインである可能性はあります 2 枚のコインに A, B と名前をつけるとき 偽コインを見つける方法を考えなさい 正しい解答学生番号氏名 問題 8 コイン A とコイン B を比較します A が軽ければ A が偽コイン B が軽ければ B が偽コイン 等しければ A, B の両方とも偽コインとわかる 悪い解答 1 学生番号氏名 問題 8 比べて軽い方が偽コイン 等しければ両方が偽コイン 悪い解答 2 学生番号氏名 問題 8 コイン A とコイン B を比較します A が軽ければ A が偽コインとわかる コイン A とコイン B を比較します B が軽ければ B が偽コインとわかる コイン A とコイン B を比較します 等しければ A, B の両方とも偽コインとわかる 7