金子邦彦研究室情報工学全般コンピューターサイエンス(全15回)

コンピューターサイエンス(全15回)

大学で使用した自作の資料等を,手直しの上公開している. クリエイティブ・コモンズ BY NC SA.

目次

  1. cs-1. 無料ソフトウエア,無料データ,エコシステム,Scratch プログラミング,Scratch のキャラクタ [PDF], [パワーポイント]
  2. cs-2. コンピュータによる画像制作,人工知能でできること,情報のコード化,デジタル画像,画素 [PDF], [パワーポイント]
  3. cs-3. パノラマ画像,ストリートビュー,3次元コンピュータグラフィックス [PDF], [パワーポイント]
  4. cs-4. プログラミング入門 [PDF], [パワーポイント]
  5. cs-5. 人工知能の概要 [PDF], [パワーポイント]
  6. cs-6. データベース,データベースシステム [PDF], [パワーポイント]
  7. cs-7. 乱数,シミュレーション [PDF], [パワーポイント]
  8. cs-8. 表計算ソフトウェアを用いたデータの扱い [PDF], [パワーポイント]
  9. cs-9. 一次式,線形計画法 [PDF], [パワーポイント]
  10. cs-10. Python プログラミングの基本 [PDF], [パワーポイント]
  11. cs-11. 条件分岐と繰り返し,ステップ実行 [PDF], [パワーポイント]
  12. cs-12. 式の抽象化と関数 [PDF], [パワーポイント]
  13. cs-13. プロセッサ,メモリ,文字コード,論理演算と足し算 [PDF], [パワーポイント]
  14. cs-14. 情報化社会でのマナー,情報セキュリティ [PDF], [パワーポイント]
  15. cs-15. 全体まとめ [PDF], [パワーポイント]

サイト内の関連ページ

資料

cs-1. 無料ソフトウエア,無料データ,エコシステム,Scratch プログラミング,Scratch のキャラクタ

【資料】[PDF], [パワーポイント]

【トピックス】

コンピューターサイエンスで学ぶこと, 無料ソフトウエア, 無料データ, 情報工学の世界, Scratch プログラミング, Scratch のキャラクタ, Scratch のキャラクタの制御

概要

コンピュータは人間の知的能力を増幅し、 プログラミングなどによる創造的な活動を可能にする強力なツールであり、社会に大きな影響を及ぼす。 その一方で、コンピュータの計算には誤差が含まれる可能性があり、バグを完全に認識できないなど注意点もある。 情報化・AI化社会では情報の価値が増す。 データベースシステムを通じて大量のデータが簡単に共有、管理できる。 データを整理・可視化・統計処理することで多方面に活用できる。 プログラムはコンピュータに命令する手法である。 知的財産はデジタルのものも法律で保護され、無料のソフトウェア・データの利用では利用条件の確認と著作権尊重が他おせちであり。 プログラミングはコンピュータの自由な操作、創造力・論理思考の養成、そして将来的なキャリア構築に役立つスキルである。

【関連するページ等】

【関係する外部ページ】

cs-2. コンピュータによる画像制作,人工知能でできること,情報のコード化,デジタル画像,画素

【資料】

[PDF], [パワーポイント]

【トピックス】

情報化社会の到来, 情報のコード化, 情報とデータ, デジタル画像, 画像制作とコンピュータ

概要

情報化社会では、個人がコンピュータとネットワークを通じて情報の自由な共有と処理が可能で、 これにより生活やビジネスの様相が変わった。 ソフトウェアの種類は多岐にわたり、一部はコンテンツ制作やプログラミングなどの作業効率化を目指している。 コンピュータ上で画像やイラストの制作も可能で、自由に利用可能なソフトウェアやデータも存在する。 情報のコード化は特定の記号や符号で情報を表現する手法で、例えばデジタル画像は小さなドット(画素)で構成されている。 情報化社会では不正確や悪意ある情報、プライバシー侵害の危険も伴い、情報の取り扱いや個人情報保護には注意が必要である。

【関連するページ等】

【関係する外部ページ】

cs-3. パノラマ画像,ストリートビュー,3次元コンピュータグラフィックス

【資料】

[PDF], [パワーポイント]

【トピックス】

パノラマ画像, Google Map のストリートビュー, 3次元コンピュータグラフィックス, Google Earth の3次元地図, Blender, ポリゴン

概要

パノラマ画像は広い視野をカバーする画像であり、 イメージスティッチング技術により作成できる。 Google Mapsのストリートビュー機能はさまさまな視点からの体験を可能にし、 Google Earthはオンライン地球儀として地形などを再現している。 3次元コンピュータグラフィックスは、ゲームや映画制作、製造や医療分野での利用に至るまで広範な応用が存在し、 ポリゴンを用いて精緻な3次元モデルを構築可能。 Blenderはフリーの3次元モデリングツールで、光源や反射、質感を設定してリアルな映像を作成可能であり、 カメラワークやキャラクターの動きのアニメーションも扱える。 これらの技術はデジタル空間での現実再現と、それに対する柔軟な操作を可能にする。

【関連するページ等】

【関連する外部ページ】

cs-4. プログラミング入門

【資料】

[PDF], [パワーポイント]

【トピックス】

プログラミング, Python Tutor での Python プログラム実行, プログラムによる問題解決, 計算誤差, さまざまなプログラミング言語

概要

プログラミングは、プログラムを設計し作成する活動で、 コンピュータに指示を出し、所定の作業を遂行するものであり、 アイデアを形にする創造的なプロセスです。 また、複雑な作業を自動化し、効率化することが可能です。 しかし、プログラミングには注意点があり、 コンピュータにもできないことに注意してください。 まずは、コンピュータの計算が常に完全に正確であるとは限らないことや、 人間がプログラムを作る際には、書き間違いや勘違いなどのミスが起こり得ることを意識することが大切です。 これらの理由から、プログラムが期待通りに動いているかを確認するテストは重要であり、 ミスの回避のためにもプログラミングのさまざまなテクニックを今後学んでいくことが大切です。

【関連するページ等】

【関係する外部ページ】

ページ28~31の演習

print(100 * 200)

x = 100  

ページ36~40の演習

import datetime
now = datetime.datetime.now()
print(now)

import math
print( math.gcd(24, 18) )

import math
print( math.sqrt(7) )

import math
print( 3 * 3 * math.pi )

import math
print( (1/2) * 4 * 6 * math.sin(60 * math.pi / 180) )

ページ44~48の演習

print(1/3)
print(1/6)
print(1/9)
print(0.333333333333333 * 3)
print(100 * 1.1)
print(150 * 1.1)
print(200 * 1.1)

cs-5. 人工知能の概要

【資料】

[PDF], [パワーポイント]

【トピックス】

人工知能とは, 人工知能でできること, 人工知能の種類, 人工知能による合成, 人工知能の現状, 人工知能の歴史, 人工知能による社会の変化

概要

人工知能(AI)はコンピュータに知的能力を持たせる技術である。 思考、判断、学習等を可能にし、人間の業務を補助、代行する。 AIは自然言語処理、認識や推論、音声認識等の応用があり、膨大なデータを迅速に処理し、ミスを減らし、新たな価値を創出する。 AIは知的なITシステムと機械学習の二つの大きな分類があり、各々が異なる特性と利点を持つ。 敵対的生成ネットワーク(GAN)のような技術は、リアルな合成画像を生成する一方、倫理的な問題も生じる可能性がある。 AIの活用は注意を要し、誤った結果を出す可能性や偏りを持つことなどを認識する必要がある。 AI技術は急速に進歩し、仕事の在り方や社会の構造、クリエイティブな活動に大きな影響を与える。

【関連するページ等】

【関係する外部ページ】

人工知能による合成

創作、グラフィックス

翻訳

ニューラルネットワークの仕組み

cs-6. データベースとデータサイエンス

【資料】

[PDF], [パワーポイント]

【トピックス】

データベースとデータサイエンス, 表計算ソフトウエア, Office 365 と Excel, Excel の基本, 散布図, 合計, 平均, 分布, 密度

概要

データベースは、特定の主題のデータを整理・保存・管理するためのデータの集合体である。 データベースは、日常生活の情報管理にも役に立っており、 オンラインコミュニケーション、リアルタイムのサービス提供、AIの学習・予測、サイバーフィジカルシステムの実現など、 様々な分野で利用される。 データサイエンスは、データから有益な情報を抽出し、予測・判断を行うためのもので、AIや情報処理と関連している。 Excelを使用すると、パソコン上でデータサイエンスを実行することが可能で、データの集計、平均の算出、散布図やヒストグラムの作成など、 データから有益な情報を引き出すためのツールとして活用できる。 データベースとデータサイエンスを理解し、知識とスキルを習得することは、将来的に大きな利点につながる。

【関連するページ等】

【関係する外部ページ】

総務省が公開しているデータを使用.

年次	出生数	死亡数
1985	1432	752
1990	1222	820
1995	1187	922
2000	1191	962
2005	1063	1084
2010	1071	1197

cs-7. 乱数,シミュレーション

【資料】

[PDF], [パワーポイント]

【トピックス】

Office 365 と Excel, 乱数, Excelの乱数の機能, 乱数とシミュレーション, 円周率を求める, 到着間隔を分析する

概要

乱数は予測不可能な数である。 ゲームやシミュレーションでは乱数が重要な役割を果たし、現実世界のランダム性を模倣する。 乱数の分布には一様分布や正規分布などがあり、それぞれに適した用途がある。 コンピュータは「シード」と呼ばれる初期値を元に乱数を生成し、シードを変更することで乱数のパターンを変えることができる。 Excelでは乱数を生成する機能があり、モンテカルロシミュレーションや待ち行列シミュレーションなど、多様なシミュレーションに活用できる。

【関連するページ等】

【関係する外部ページ】

cs-8. 表計算ソフトウェアを用いたデータの扱い

【資料】

[PDF], [パワーポイント]

【トピックス】

Office 365 と Excel, 散布図での色分け,クラスタ分析, Excel のルックアップ, 絶対参照,

概要

Excelを用いたデータ分析の手法は種々ある。 まず、クラスタ分析は、市場セグメンテーション、顧客分析、製品分析に役立つものである。 色付き散布図は、視覚的なデータ分析に役立つ。 また、Excelのルックアップ機能は、大量のデータから必要な情報を効率よく取り出すことができる。 Excelの活用では、絶対参照と相対参照の理解が大切である。 これらの参照方法は、Excel作業の効率化だけでなく、精度向上にも寄与する。

【関連するページ等】

【関係する外部ページ】

cs-9. 一次式,線形計画法

SlideShare: https://www.slideshare.net/kunihikokaneko1/cs9-252037293

トピックス: 一次式,一次不等式,制約,線形計画法,Excel の条件付き書式

線形計画法を知っておくことは、コンピュータの活用の範囲の広がりを知ること、そして、データや数理に基づいた判断を行うときに、コンピュータが役に立つことを知ることにもつながる。

【資料】 [PDF], [パワーポイント]

Excel ファイル

cs-10. Python プログラミングの基本

SlideShare: https://www.slideshare.net/kunihikokaneko1/cs10-python-252041852

トピックス: オブジェクトとメソッド,引数,代入,データの種類,制御,コードコンバット(Code Combat)の紹介

【資料】 [PDF], [パワーポイント]

外部ページへのリンク

cs-11. 条件分岐と繰り返し,ステップ実行

【資料】 [PDF], [パワーポイント]

サイト内の関連ページ

外部ページへのリンク(外部ページの作者に感謝します).

cs-12. 式の抽象化と関数

【資料】 [PDF], [パワーポイント]

サイト内の関連ページ

外部ページへのリンク(外部ページの作者に感謝します).

cs-13. プロセッサ,メモリ,文字コード,論理演算と足し算

ドクセルの URL: https://www.docswell.com/s/6674398749/5671MZ-2021-12-17-134428

トピックス:オペレーティングシステム, プロセッサ, メモリ, 2進数, アドレス, 文字コード, 論理演算, 2の補数

【資料】 [PDF], [パワーポイント]

外部ページへのリンク(外部ページの作者に感謝します).

文字 'a' の文字コードを確認する,

c = 'a'
print(hex(ord(c)))

「-2」の2の補数を見る

print( format( -2 & 0xff, 'b' ) )

cs-14. 情報化社会でのマナー,情報セキュリティ

ドクセルの URL: https://www.docswell.com/s/6674398749/5V6XVZ-2021-12-17-134504

トピックス:情報化社会,情報の蓄積,共有,継承,情報化社会でのマナー,福山大学情報セキュリティパンフレットの説明

【資料】 [PDF], [パワーポイント]

YouTube 動画 https://www.youtube.com/watch?v=MmR1Ha8zHBU

cs-15. 全体まとめ

ドクセルの URL: https://www.docswell.com/s/6674398749/KNJXEZ-2021-12-17-134355

トピックス:情報化社会の到来,情報化社会での知の蓄積と流通,コンピュータでできること,コンピュータの特質,コンピュータ活用での基礎

【資料】 [PDF], [パワーポイント]

  1. Google Earth を開き,「福山城」などで検索してみる

    https://earth.google.com

  2. WikiPedia で,自分の興味のあるトピックス複数個で検索し,記事を確認してみる

    https://ja.wikipedia.org/

  3. まず,Paiza.IO を開く.「コード作成を試してみる」をクリック,その後,「Python3 」を選ぶ

    https://paiza.io/ja

    そして,4x + 1 = 0 を解く,次の Python プログラムを入れ,実行してみる from scipy import optimize def foo(x): return 4 * x + 1 print( optimize.fsolve(foo, 10) )

  4. Paiza.IO で,次の Python プログラムを実行し,計算誤差があることを確認.
    print(1/3)
    
  5. Paiza.IO で,次の Python プログラムを実行し,結果を確認するとともに, ソースコードを確認することで,関数の使い方についての理解を深める.
    def foo(a):
        return a * 1.1
    print(foo(100))
    print(foo(150))
    print(foo(400))
    

外部ページへのリンク(外部ページの作者に感謝します).

from scipy import optimize
def foo(x):
    return 4 * x + 1

print( optimize.fsolve(foo, 10) )

print(1/3)

def foo(a):
    return a * 1.1

print(foo(100))
print(foo(150))
print(foo(400))

動画

  1. cs-1. 無料ソフトウエア,無料データ,エコシステム,Scratch プログラミング,Scratch のキャラクタ

    YouTube 動画: https://www.youtube.com/watch?v=k8VwaW2GI5g

  2. cs-2. コンピュータによる画像制作,人工知能でできること,情報のコード化,デジタル画像,画素

    YouTube 動画: https://www.youtube.com/watch?v=89Kiy7yaTMQ

  3. cs-3. パノラマ画像,ストリートビュー,3次元コンピュータグラフィックス

    YouTube 動画: https://www.youtube.com/watch?v=JfsXT9ZQefA

  4. cs-4. プログラミング入門

    YouTube 動画: https://www.youtube.com/watch?v=blBX7q2hdCQ

  5. cs-5. 人工知能の概要

    YouTube 動画: https://www.youtube.com/watch?v=76Xa2ZGqpy0

  6. cs-6. データベース,データベースシステム

    YouTube 動画: https://www.youtube.com/watch?v=hafgkLQ2fzs

  7. cs-7. 乱数,シミュレーション

    YouTube 動画: https://www.youtube.com/watch?v=22MbFeFAYNE

  8. cs-8. 表計算ソフトウェアを用いたデータの扱い

    YouTube 動画: https://www.youtube.com/watch?v=vUJKLwNQn44

  9. cs-9. 一次式,線形計画法

    YouTube 動画: https://www.youtube.com/watch?v=GKy0Bl5ZCQY

  10. cs-10. Python プログラミングの基本

    YouTube 動画: https://www.youtube.com/watch?v=PW0nH3bHEqM

  11. cs-11. 式の抽象化と関数

    YouTube 動画: https://www.youtube.com/watch?v=zeleeooCfT0

  12. cs-12. 条件分岐,ステップ実行

    YouTube 動画: https://www.youtube.com/watch?v=Z102Pg28nW8

  13. cs-13. プロセッサ,メモリ,文字コード,論理演算と足し算

    YouTube 動画: https://www.youtube.com/watch?v=cwR4w-hPW2c

  14. cs-14. 情報化社会でのマナー,情報セキュリティ

    YouTube 動画: https://www.youtube.com/watch?v=MmR1Ha8zHBU