SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
基礎情報処理演習 (6)
  実数と繰り返し

   山本和英
 長岡技術科学大学

               1
整数と実数




        2
変数は最初にまとめて宣言する

(正解)          (間違い)
int idt;      int idt;
double ddt;   idt = 100;
idt = 100;    double ddt;
ddt = 23.45   ddt = 23.45
...

                            3
データ型
int      整数
double   実数
char     文字

これだけで十分です。


              4
そもそも「実数」て何だ?

一言で言えば、整数で表現できない数です。

(1) 小数点以下を含む数字、小さな数
(2) (±21億ぐらい)よりも大きな数

実数(浮動小数点数)は整数と記憶方法が違います。
このため非常に広範囲の数を表現できますが誤差を
含むので、int型で表現できる数は必ず int を使っ
てください。

                         5
演算子

 演算子とは、計算などをする記号のことです。


算術演算子

 +    加算
 -    減算
 *    乗算
 /    除算
 %    余り (7 % 3 = 1)
                         6
割り算に注意!

整数どうしの計算は必ず整数で計算する。
例えば、

printf (“%fn”, 5 / 7);

を実行すると、(出力書式で実数(%f)指定し
ていても全く関係なく) 0.0000 が出力され
る。

                           7
実数で計算したい時はどうするの?
printf   (“%fn”,   5.0 / 7);
printf   (“%fn”,   5 / 7.0);
printf   (“%fn”,   5.0 / 7.0);
printf   (“%fn”,   (double) 5 / 7);

(double) については、次のスライド参照。


                                  8
キャスト演算子

型変換したい時に使う。


printf (“%fn”, (double) 5 / 7);


 整数の 5 を実数 (5.0) と理解することで、
       割り算を実数で行う。

                                   9
代入演算子

 単純代入演算子: =

 p = 0;     // 普通の使い方
 a = b = 3; // 多重代入もできる

 複合代入演算子: += -= *= /= など

 k += 1;   // k=k+1; と同じ


                           10
printf の書式

%d    int
%f    double
%c    char
%s    (文字列)

表示幅を指定することもできる

%5d   intを5文字で
                 11
scanf(scanf_s) の書式

%d    int
%lf   double
%c    char
%s    (文字列)

double型以外は同じ。


                     12
数学関数

#include <math.h>

を冒頭につけると下記の関数が使える。

三角関数  sin, cos, tan 
      (ラジアンで入力することに注意)
平方根   sqrt
指数・対数 exp, log, log10
絶対値   fabs
べき乗   pow
など                       13
for文による繰り返し




              14
for文の繰り返し


for (i=1; i<=10; i=i+1){




}

                           15
赤字部分(前ページ)が +1 の場合は
下記PADに対応する。



    a ← 1 ~ 10



※<=(関係演算子)は≦という意味ですが、
 詳しくは次回に...
                        16
for (i=1; i<=10; i=i+1){

}

    i ← 1

     i <= 10

                  i ← i + 1
                              17
最初は i=1 にする     繰り返しごとにiを増加
  (初期化)            (変化量)

for (i=1; i<=10; i=i+1){

}

          i<=10 の間繰り返す
             (継続条件)
                           18
もしカウントダウンしたかったら...

for (i=10; i>=1; i=i-1){


               継続条件なので、
                    i>=1
}              (i<=1ではない!)


                             19

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Lispでやる記号微分
Lispでやる記号微分Lispでやる記号微分
Lispでやる記号微分
 
復習と型 Jyoken
復習と型 Jyoken復習と型 Jyoken
復習と型 Jyoken
 
講座C入門
講座C入門講座C入門
講座C入門
 
私を SKI に連れてって
私を SKI に連れてって私を SKI に連れてって
私を SKI に連れてって
 
Kihon
KihonKihon
Kihon
 
[xDNCL] 掲示資料
[xDNCL] 掲示資料[xDNCL] 掲示資料
[xDNCL] 掲示資料
 
勉強会課題①
勉強会課題①勉強会課題①
勉強会課題①
 
プログラミング技法特論第4回
プログラミング技法特論第4回プログラミング技法特論第4回
プログラミング技法特論第4回
 
みんなで Swift 復習会 GO! in 沖縄・発表資料
みんなで Swift 復習会 GO! in 沖縄・発表資料みんなで Swift 復習会 GO! in 沖縄・発表資料
みんなで Swift 復習会 GO! in 沖縄・発表資料
 
Yokohama6 epi
Yokohama6 epiYokohama6 epi
Yokohama6 epi
 
kagami_comput2015_7
kagami_comput2015_7kagami_comput2015_7
kagami_comput2015_7
 
7_C言語入門 - 型変換について
7_C言語入門 - 型変換について7_C言語入門 - 型変換について
7_C言語入門 - 型変換について
 
Pad入門その1
Pad入門その1Pad入門その1
Pad入門その1
 
Javaセキュアコーディングセミナー東京第2回講義
Javaセキュアコーディングセミナー東京第2回講義Javaセキュアコーディングセミナー東京第2回講義
Javaセキュアコーディングセミナー東京第2回講義
 
C言語の基本事項のまとめ
C言語の基本事項のまとめC言語の基本事項のまとめ
C言語の基本事項のまとめ
 
Processing
ProcessingProcessing
Processing
 
Pad入門その2
Pad入門その2Pad入門その2
Pad入門その2
 
AtCoder Beginner Contest 029 解説
AtCoder Beginner Contest 029 解説AtCoder Beginner Contest 029 解説
AtCoder Beginner Contest 029 解説
 
論理指向とプログラミング2010年度秋学期第9回
論理指向とプログラミング2010年度秋学期第9回論理指向とプログラミング2010年度秋学期第9回
論理指向とプログラミング2010年度秋学期第9回
 
超LINQ入門
超LINQ入門超LINQ入門
超LINQ入門
 

Destacado

Estudiodevientosverticalescasaenjiutepecmorelos
EstudiodevientosverticalescasaenjiutepecmorelosEstudiodevientosverticalescasaenjiutepecmorelos
EstudiodevientosverticalescasaenjiutepecmorelosEmmanuelConDobleM
 
Agile Development Methodologies for Highly Regulated Organizations
Agile Development Methodologies for Highly Regulated OrganizationsAgile Development Methodologies for Highly Regulated Organizations
Agile Development Methodologies for Highly Regulated OrganizationsCelerity
 
Virtual Ports - Requirements and Third party hardware
Virtual Ports - Requirements and Third party hardwareVirtual Ports - Requirements and Third party hardware
Virtual Ports - Requirements and Third party hardwareCompellent Technologies
 
¿Qué es una biografía?
¿Qué es una biografía?¿Qué es una biografía?
¿Qué es una biografía?Vasquez Peralta
 
Kinetics of a Particle : Force and Acceleration
Kinetics of a Particle : Force and AccelerationKinetics of a Particle : Force and Acceleration
Kinetics of a Particle : Force and AccelerationAbduljalil AlAbidi
 
The Sun and our Solar System
The Sun and our Solar System The Sun and our Solar System
The Sun and our Solar System Jeanie Lacob
 

Destacado (9)

Estudiodevientosverticalescasaenjiutepecmorelos
EstudiodevientosverticalescasaenjiutepecmorelosEstudiodevientosverticalescasaenjiutepecmorelos
Estudiodevientosverticalescasaenjiutepecmorelos
 
Amazonia
AmazoniaAmazonia
Amazonia
 
Agile Development Methodologies for Highly Regulated Organizations
Agile Development Methodologies for Highly Regulated OrganizationsAgile Development Methodologies for Highly Regulated Organizations
Agile Development Methodologies for Highly Regulated Organizations
 
3 d
3 d3 d
3 d
 
Virtual Ports - Requirements and Third party hardware
Virtual Ports - Requirements and Third party hardwareVirtual Ports - Requirements and Third party hardware
Virtual Ports - Requirements and Third party hardware
 
The Economics of Energy Efficiency
The Economics of Energy EfficiencyThe Economics of Energy Efficiency
The Economics of Energy Efficiency
 
¿Qué es una biografía?
¿Qué es una biografía?¿Qué es una biografía?
¿Qué es una biografía?
 
Kinetics of a Particle : Force and Acceleration
Kinetics of a Particle : Force and AccelerationKinetics of a Particle : Force and Acceleration
Kinetics of a Particle : Force and Acceleration
 
The Sun and our Solar System
The Sun and our Solar System The Sun and our Solar System
The Sun and our Solar System
 

Similar a #6:実数と繰り返し

プログラマ講習第2回
プログラマ講習第2回プログラマ講習第2回
プログラマ講習第2回Yuma Yoshimoto
 
ji-5. 繰り返し計算
ji-5. 繰り返し計算ji-5. 繰り返し計算
ji-5. 繰り返し計算kunihikokaneko1
 
Python基礎その1
Python基礎その1Python基礎その1
Python基礎その1大貴 末廣
 
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„和弘 井之上
 
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコードプログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコードShigenori Sagawa
 
X hago2 shortcoding 20110827
X hago2 shortcoding 20110827X hago2 shortcoding 20110827
X hago2 shortcoding 20110827uskey512
 
プログラマ講習第3回
プログラマ講習第3回プログラマ講習第3回
プログラマ講習第3回Yuma Yoshimoto
 
cp-5. 繰り返し計算
cp-5. 繰り返し計算cp-5. 繰り返し計算
cp-5. 繰り返し計算kunihikokaneko1
 
2012年1月20日
2012年1月20日2012年1月20日
2012年1月20日nukaemon
 
15分でざっくり分かるScala入門
15分でざっくり分かるScala入門15分でざっくり分かるScala入門
15分でざっくり分かるScala入門SatoYu1ro
 
競技プログラミングのためのC++入門
競技プログラミングのためのC++入門競技プログラミングのためのC++入門
競技プログラミングのためのC++入門natrium11321
 
Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2Ransui Iso
 
DS Exercise Course 2
DS Exercise Course 2DS Exercise Course 2
DS Exercise Course 2大貴 末廣
 

Similar a #6:実数と繰り返し (20)

#7:演算子と分岐
#7:演算子と分岐#7:演算子と分岐
#7:演算子と分岐
 
プログラマ講習第2回
プログラマ講習第2回プログラマ講習第2回
プログラマ講習第2回
 
C言語よくある誤り
C言語よくある誤りC言語よくある誤り
C言語よくある誤り
 
[xDNCL] 配布資料
[xDNCL] 配布資料[xDNCL] 配布資料
[xDNCL] 配布資料
 
ji-5. 繰り返し計算
ji-5. 繰り返し計算ji-5. 繰り返し計算
ji-5. 繰り返し計算
 
Python基礎その1
Python基礎その1Python基礎その1
Python基礎その1
 
会津合宿2015Day3:D問題
会津合宿2015Day3:D問題会津合宿2015Day3:D問題
会津合宿2015Day3:D問題
 
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第3回 ‟条件とループ„
 
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコードプログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコード
 
#5:プログラミングの基本
#5:プログラミングの基本#5:プログラミングの基本
#5:プログラミングの基本
 
X hago2 shortcoding 20110827
X hago2 shortcoding 20110827X hago2 shortcoding 20110827
X hago2 shortcoding 20110827
 
[Basic] 配布資料
[Basic] 配布資料[Basic] 配布資料
[Basic] 配布資料
 
プログラマ講習第3回
プログラマ講習第3回プログラマ講習第3回
プログラマ講習第3回
 
cp-5. 繰り返し計算
cp-5. 繰り返し計算cp-5. 繰り返し計算
cp-5. 繰り返し計算
 
2012年1月20日
2012年1月20日2012年1月20日
2012年1月20日
 
15分でざっくり分かるScala入門
15分でざっくり分かるScala入門15分でざっくり分かるScala入門
15分でざっくり分かるScala入門
 
競技プログラミングのためのC++入門
競技プログラミングのためのC++入門競技プログラミングのためのC++入門
競技プログラミングのためのC++入門
 
Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2
 
DS Exercise Course 2
DS Exercise Course 2DS Exercise Course 2
DS Exercise Course 2
 
C言語講習会2
C言語講習会2C言語講習会2
C言語講習会2
 

Más de 長岡技術科学大学 自然言語処理研究室

Más de 長岡技術科学大学 自然言語処理研究室 (20)

小学生の読解支援に向けた複数の換言知識を併用した語彙平易化と評価
小学生の読解支援に向けた複数の換言知識を併用した語彙平易化と評価小学生の読解支援に向けた複数の換言知識を併用した語彙平易化と評価
小学生の読解支援に向けた複数の換言知識を併用した語彙平易化と評価
 
小学生の読解支援に向けた語釈文から語彙的換言を選択する手法
小学生の読解支援に向けた語釈文から語彙的換言を選択する手法小学生の読解支援に向けた語釈文から語彙的換言を選択する手法
小学生の読解支援に向けた語釈文から語彙的換言を選択する手法
 
Selecting Proper Lexical Paraphrase for Children
Selecting Proper Lexical Paraphrase for ChildrenSelecting Proper Lexical Paraphrase for Children
Selecting Proper Lexical Paraphrase for Children
 
Automatic Selection of Predicates for Common Sense Knowledge Expression
Automatic Selection of Predicates for Common Sense Knowledge ExpressionAutomatic Selection of Predicates for Common Sense Knowledge Expression
Automatic Selection of Predicates for Common Sense Knowledge Expression
 
用言等換言辞書を用いた換言結果の考察
用言等換言辞書を用いた換言結果の考察用言等換言辞書を用いた換言結果の考察
用言等換言辞書を用いた換言結果の考察
 
用言等換言辞書の構築
用言等換言辞書の構築用言等換言辞書の構築
用言等換言辞書の構築
 
質問意図によるQAサイト質問文の自動分類
質問意図によるQAサイト質問文の自動分類質問意図によるQAサイト質問文の自動分類
質問意図によるQAサイト質問文の自動分類
 
役所からの公的文書に対する「やさしい日本語」への変換システムの構築
役所からの公的文書に対する「やさしい日本語」への変換システムの構築役所からの公的文書に対する「やさしい日本語」への変換システムの構築
役所からの公的文書に対する「やさしい日本語」への変換システムの構築
 
対訳コーパスから生成したワードグラフによる部分的機械翻訳
対訳コーパスから生成したワードグラフによる部分的機械翻訳対訳コーパスから生成したワードグラフによる部分的機械翻訳
対訳コーパスから生成したワードグラフによる部分的機械翻訳
 
用言等換言辞書を人手で作りました
用言等換言辞書を人手で作りました用言等換言辞書を人手で作りました
用言等換言辞書を人手で作りました
 
文字列の出現頻度情報を用いた分かち書き単位の自動取得
文字列の出現頻度情報を用いた分かち書き単位の自動取得文字列の出現頻度情報を用いた分かち書き単位の自動取得
文字列の出現頻度情報を用いた分かち書き単位の自動取得
 
「やさしい日本語」変換システムの試作
「やさしい日本語」変換システムの試作「やさしい日本語」変換システムの試作
「やさしい日本語」変換システムの試作
 
常識表現となり得る用言の自動選定の検討
常識表現となり得る用言の自動選定の検討常識表現となり得る用言の自動選定の検討
常識表現となり得る用言の自動選定の検討
 
動詞意味類型の曖昧性解消に向けた格フレーム情報との関連調査
動詞意味類型の曖昧性解消に向けた格フレーム情報との関連調査動詞意味類型の曖昧性解消に向けた格フレーム情報との関連調査
動詞意味類型の曖昧性解消に向けた格フレーム情報との関連調査
 
二格深層格の定量的分析
二格深層格の定量的分析二格深層格の定量的分析
二格深層格の定量的分析
 
大規模常識知識ベース構築のための常識表現の自動獲得
大規模常識知識ベース構築のための常識表現の自動獲得大規模常識知識ベース構築のための常識表現の自動獲得
大規模常識知識ベース構築のための常識表現の自動獲得
 
文脈の多様性に基づく名詞換言の提案
文脈の多様性に基づく名詞換言の提案文脈の多様性に基づく名詞換言の提案
文脈の多様性に基づく名詞換言の提案
 
保険関連文書を対象とした文章校正支援のための変換誤り検出
保険関連文書を対象とした文章校正支援のための変換誤り検出保険関連文書を対象とした文章校正支援のための変換誤り検出
保険関連文書を対象とした文章校正支援のための変換誤り検出
 
Developing User-friendly and Customizable Text Analyzer
Developing User-friendly and Customizable Text AnalyzerDeveloping User-friendly and Customizable Text Analyzer
Developing User-friendly and Customizable Text Analyzer
 
普通名詞換言辞書の構築
普通名詞換言辞書の構築普通名詞換言辞書の構築
普通名詞換言辞書の構築
 

#6:実数と繰り返し