情報技術科ここだけトピックス
入れ子
たとえば画像は縦と横(さらに色)で構成されるので、画像データなどを扱うには何重もの繰返し処理が必要になります。
HyperText Markup Langage
Webページは文字だけでなく、画像や音声、動画やリンクを合わせて表示できます。
HTMLは様々な「タグ」でコードを構成してWebページがつくられます。
※このページのHTMLの一部
配線の色
+5[V]などのプラス側は赤、対して0[V](電池でいうマイナス側)は黒、それ以外の箇所は赤黒を使わない・・・など
電源ラインを明確にしたり、信号の意味を分けて把握しやすくするためにも色分けは重要です。
(100[V]以上では明確な色分けがあり、配色も異なるので注意。)
予約語
そのプログラミング言語で、すでに処理命令などで使われている語句と同じ名前は使えません。
(同名がつけられる言語でも、同名は望ましくありません)
「おもしろさをつくる」とは?
そのゲームのどのようなところが楽しいですか?
「おもしろさ」をプログラムで実現するには、どうすればよいでしょう。
さらに楽しくするためには、どのような要素などがあればよいでしょうか、
そしてどのように実装できるか・・・
おもしろさは発想力だけで突発的にできるのではなく、ニーズの分析や
様々な要素を綿密に組み上げて、本当のおもしろさがつくられると言えます。
電力[W]ワット,電圧[V]ボルト,電流[A]アンペア
電圧、電流との関係は 電力[W] = 電圧[V] × 電流[A] になります。
家庭用コンセントは交流100[V]なので、電流としては合計15[A]の範囲で使ってくださいということです。
たとえば部屋全体で、30[A]の許容量があっても一箇所からタコ足配線すると危険になります。熱を持ったり、動作しなくなってしまうので、電力にも気を払いましょう。
パリティ
7ビットのデータに奇数パリティを付加した例
0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
もし、何らかの異常でビットが反転してしまった場合・・・
0 | 1 | 0 | 0 | 1 | 1 | 1 | 0 |
代入
プログラミング言語の処理では基本的に、イコール記号の右側に式や処理をおいて、左側に結果を得るかたちで記述します。
エスケープシーケンス
プログラムコード内でEnterキーを打ってもコードが改行されるだけで、実行中の表示は変化しません。
動作を示す記号や、特殊な文字を表示する記号をエスケープシーケンスと呼びます。
たとえば改行であれば、「\n」を使用します。(※環境により、半角の「¥」または「\」と表示されます。)
C言語の例
1+1は?
この場合は、1が「いち」ではなく、成立している状態「真(True)」をあらわし、「真もしくは真であることは真」ということになります。
他にも算数とは異なる公式がいくつかあります。
構成する電子回路から、プログラム上の条件式や、データベースの操作にいたるまで、
2値が扱いやすいコンピュータには、このブール代数は応用しやすい考え方となります。
今、何月何日?
月ごとに日数が違ったり、うるう年で日数が変わったり・・・
さらに、うるう秒だったり、国によって暦が違ったりしています。
コンピュータに「今日」の日付が表示されているのは、単純なことではないのです。
例外処理
たとえば、停止してはならないシステムや、危険な状態で停止しないために、
起こりうることへの対処をプログラムに組み込むことで、処理の継続や、安全な状態で停止させることができます。
肖像権
スマートフォンで誰でも写真を撮ったり、インターネットを利用できるようになりました
が、たとえば写真をSNS等にアップする場合、いろいろな映り込みにも注意するようにしましょう。
画像表現
格子状(ピクセル)に切り分けて色情報を保存するラスタ型
座標位置や大きさ回転情報を保存するベクタ型
それぞれに利点があり、目的に応じて使い分けられるとクオリティの高い状態で出力が得られます。
プログラミングにおける配列
添え字を変化させてデータを指定することになり、多くのデータでもプログラミングしやすくなります。
電子化された情報の特性?
ディジタルデータは、劣化しないといわれることもありますが・・・
特にネット上のディジタルデータは、『 残りやすく かつ 失われやすい 』 側面があるといえます。
すでに体験していることも多いはずですが・・・
それとも影響を受けていることに気付いていないかもしれません。
フローチャート
ソフトウェア開発に限らず、実社会の様々な作業手順でも用いられていることがあります。
ものごとの流れを整理し、相手に伝えるためにも活用できます。
(図記号は全国工業高等学校長協会情報技術検定を基準に紹介しています)
ローマ字入力
プログラムコードを入力する場合、英字と日本語を使い分けることもあります。
ローマ字入力を活用する場合
「にいざそうごう」→「n i i z a s o u g o u」
「じょうほうぎじゅつ」→「 j o u h o u g i j u t u 」または「 j y o u h o u g i j y u t s u 」
「ぱっち」→「 p a t t i 」または 「 p a x t u t i 」または「 p a l t u t i 」または「 p a c c h i 」
特に「っ」など入力方法がいくつもあることもあります。
入力促進メッセージ
コンピュータはたいてい、「入力を受けるまで待っている」ことになります。
何も変化が無いと、ただ動作が停止してしまったように見えてしまうので、
特定の記号
「○○を入力してください:」のようにメッセージを表示して、入力を求めていることがわかりやすいつくり方が必要です。
しきい値
文字コードと文字化け
"N"→(4E)16進数 "S"→(53)16進数 "G"→(47)16進数 ※ASCIIコード
"あ"→(82A0)16進数 "い"→(82A2)16進数 "う"→(82A4)16進数 ※S-JISコード
"あ"→(A4A2)16進数 "い"→(A4A4)16進数 "う"→(A4A6)16進数 ※EUCコード
コンピュータ内で記憶されている値が、同じ文字コードで扱われれば問題ありませんが、特にインターネットなどで様々なコンピュータでも同じ文字が表示されることは大変なことなのです。
アルゴリズム
「こうすればこうなる」というような様々なアルゴリズムがいくつも確立されていますが、
ソフトウェア開発に限らず、ものごとに手順や解決手法は常に状況に応じて考えるべきことです。「どうしたらうまくいくか」手順を考えることがプログラミングです。
FAX
取り込んだ画像をマス目で分解して、白から順に続く数を送ります。
たとえば、次のように、
□■■□■■□ → 1,2,1,2,1
■■■■■■■ → 0,7
□■■■■■□ → 1,5,1
□□■■■□□ → 2,3,2
□□□■□□□ → 3,1,3
のように数の羅列で送ることで、受信側も再構成でき、図案が受け取れます。
10の乗数を表すSI接頭辞
ちなみに新聞(日経新聞)は1日約15万文字らしいです
アクチュエータ
インクリメント,デクリメント
プログラミングで繰り返し処理の中でよく活用しますが、変数内の値を+1することを「インクリメント」、-1することを「デクリメント」といいます。
C言語では、変数xの場合
x++ または ++x (x=x+1 や x+=1 と同じ動作)
演算子を、前に置くか後ろに置くかでも異なる結果が得られるので、様々な応用で活用が考えられます。
周波数とコンピュータの処理能力
惑わされないで
電話番号(またはメールアドレス)と個人情報は公開されて繋がっていない。
分岐
字下げ
IPアドレス
括弧(かっこ)の重要性
プログラミングでも計算だけでなく、様々な処理の書き方で、何から処理されるか
という優先順位があります。
まれにプログラミング言語によって変わることもあり、間違えやすいところです。
( )を効果的に使って、わかりやすく組み立てましょう
「3年2組ではない生徒」 の条件式の例
NOT 学年=3 AND 組=2
は、3年生ではない、たとえば1・2年生の2組の生徒になってしまう。
NOT((学年=3)AND(組=2))
検索結果はいつもどれも本物?
情報源や、関係する事柄を正しく見極めるにはどうしたらよいでしょうか。
変数
四則演算ほか
GUIとCUI
マウスやタッチなどでアイコンやウィンドウなどで操作する Graphical User Interface
キーボードでコマンドを打って操作する Character User Interface があります。
GUIがあたりまえになっていますが、いざというときやコマンド操作しかない場合もあるので、ぜひ知っておきましょう。
画面の原点
コンピュータでは基本的に、原点(x=0,y=0)の点から右方向と下方向に+(プラス)になります。
ある場所から 横に動かしたければ、右はプラス、左ならマイナス
縦に動かしたければ、上はマイナス、下ならプラス という計算になります。
文字の書き分け
ファイルとフォルダ
ソフトウェア開発をする上では、様々なファイルや、ファイルなどのまとめられたフォルダ(またはディレクトリ)の構造を把握しておかなければなりません。
プログラミングでは、ファイル名やフォルダ配置関係も意味がある場合が多いので、注意しましょう。
不等号記号
処理の分岐や繰り返しをしたい場合に、不等号を使って条件式を立てることがありますが、
まずは不等号の意味を把握して、逆向きにしないように、成立する範囲を正しく設定しましょう。
A < B (A小なりB、たとえばAの内容がBより小さければ関係は正しい。)
A > B (A大なりB)
A >= B (AはB以上)
A <= B (AはB以下)
ちなみに、変数Nをもとに条件が成立する間、繰り返されるとき・・・
変数Nの内容を0(ゼロ)から1づつ増やして10回継続するためには、どんな条件が必要?
N 10
半角文字と全角文字
入力の際、半角文字と全角文字の違いを把握しなければ、プログラムエラーの原因になります。特に表示に表れてこない「 」空白文字にも注意しましょう。
全角文字の例→:あいうえおABC123*+/「 」
半角文字の例→:ABC123*+/[ ]
トランジスタのスイッチ特性
スイッチ特性は、ベース電流のON/OFFで、コレクタとエミッタ間をON/OFFするように利用することができます。
電気で電気の流れを決められるので、センサと合わせて自動にすることにも使えます。
ユーザアカウントとパスワードの管理
自身でしか知らないことを含むなどして、自分だけが覚えやすい、推測されないものをつけましょう。
また、一つのユーザアカウントでも、様々なサービスと連携していることが多くなっています。
パスワードだけでなく登録しているサービスの状況にも気を払いましょう。
ショートカットキー
文章や文字列、ファイルでも、選択している状態でキーボードの
「Ctrl」押しながら「C」でコピー(控えが取られるイメージ)
「Ctrl」押しながら「V」で貼り付け(控えたものから出力されるイメージ)
活用できると便利です。
オブジェクト指向における「継承」
料理でいえば、『カレーの作り方』を「継承」して『カツカレーの作り方』をつくる場合、プログラミングでは、『カツカレーの作り方』としては、新たに{トンカツを揚げて、カレーにのせる}と追加するだけで、『カレーの作り方』の内容は継承元をそのまま活用することができるイメージです。
sizeof
C言語では、「sizeof 変数」で変数のメモリ上の大きさを確認できます。
例えば、int型の変数はコンピュータの環境によって大きさが変わるので、現環境で表現できる値の上限を確認するためにも使えます。
ビットとバイト
その一つの単位を[bit](ビット)といい、8[bit]で1[Byte](バイト)といいます。
ひとつのコインの表裏、ランプの点灯/消灯 も同じく 1[bit]の情報ともいえます。
たとえば、さらにランプが多く集まると電光掲示板のように様々な情報が表現できますね。
RAND_MAX
また、ヘッダファイル(stdlib.h)内を直接みても・・・
#define RAND_MAX 0x7FFFU
このコードがある場合、16進数で7FFF(10進数で32767)までの値が出ることが確認できます。
マウス
・マウス自体の移動で、パソコン画面上のカーソルが連動
・マウスボタンを1回押すことはクリック、2回ならダブルクリック
・マウス右ボタンクリックで操作メニュー(が出ることが多い)
マウスとキーボード操作に慣れましょう。
2進数
2進数は0(ゼロ)と1(いち)だけで値を表現します。たとえば、1は1、2は2進数では「10」です。
コンピュータは、電気的なON/OFFで動いているので、2進数の考え方があります。
→ 2進数で 11011010 とすると、10進数では218