プログラミング基礎・演習
プログラミング基礎I・演習I
第3回
設定の変更とプログラムの実行
■設定変更
- 各プロジェクト毎に以下の設定変更
① [プロジェクト]-[プロジェクト名プロパティ]を選択
② [構成プロパティ]-[リンカ]-[システム]を選択
③ 右ウィンドウの[サブシステム]-[コンソール]に変更
■実行
- [Ctrl]+[F5]
2014/4/21
(デバッグなしで実行)
プログラミング基礎及びI
2
条件分岐
変数宣言
int a;
aを入力
はい
真
(true)
aは2で
割り切れる?
条件
“aは偶数です”
と表示
2014/4/21
いいえ
偽
(false)
“aは奇数です”
と表示
プログラミング基礎及びI
3
If()文
■条件分岐を行う
■使い方
if
(条件式)
文1;条件式が真のとき実行
else
文2;条件式が偽のとき実行
なくても良い
2014/4/21
プログラミング基礎及びI
4
If()文
真
偽
真
if
条件式
if
条件式
処理1
(ifの後)
処理2
(elseの後)
続き
2014/4/21
偽
なくても
良い
処理1
(ifの後)
続き
プログラミング基礎及びI
5
If()文
練習課題1
#include < stdio.h >
void main()
{
int a,b;
a=3;
b=10;
}
if (a < b)
printf("aはbより小さい¥n");
2014/4/21
真
a<b
偽
aはbより小さい
と表示
プログラミング基礎及びI
6
If()文
練習課題2
#include < stdio.h >
void main()
{
int a,b;
a=3;
b=1;
}
真
if (a < b)
printf("aはbより小さいです¥n");
else
printf("aはbより大きいです¥n");
2014/4/21
aはbより小さい
と表示
プログラミング基礎及びI
a<b
偽
aはbより大きい
と表示
7
条件式の書き方
演算子
a<b
a <= b
a>b
2014/4/21
内容
aがbより小さい
aがbより小さいか等しい
aがbより大きい
a >= b
aがbより大きいか等しい
a == b
aとbが等しい
a != b
aとbが等しくない
プログラミング基礎及びI
8
if ()文 例
#include<stdio.h>
void main()
{
int a;
printf(“整数を入力してください”);
scanf(“%d”,&a);
}
if ( a%2 == 0 )
printf(“aは偶数です.¥n”);
else
printf(“aは奇数です.¥n”);
2014/4/21
aを2で割った場合の余りが
0と等しいか?
(aが2で割り切れるか?)
プログラミング基礎及びI
9
複合文
if
{
(条件式)
文1;
文2;
:
文N;
{
と
}
で囲む
文1;
文2;
:
文M;
{
と
}
で囲む
}
else
{
}
2014/4/21
プログラミング基礎及びI
10
if 文 例
#include<stdio.h>
void main()
{
int a1,a2,b,c;
printf(“整数1を入力してください”);
scanf(“%d”,&a1);
printf(“整数2を入力してください”);
scanf(“%d”,&a2);
if ( a1%a2 == 0 )
{
b = a1/a2;
printf(“%d÷%d=%d ¥n”, a1, a2, b);
}
else
{
c = a1%a2;
b = (a1-c)/a2;
printf(“%d÷%d=%d あまり %d¥n”,a1,a2,b,c);
}
}
2014/4/21
プログラミング基礎及びI
{
} で囲む
{
} で囲む
11
if 文が続く場合
#include<stdio.h>
a%2 == 0
void main()
{
int a;
真
printf(“整数を入力してください”);
scanf(“%d”,&a);
偽
2の倍数
if ( a%2 == 0 )
printf(“2の倍数です.¥n”);
else
if ( a%3 == 0 )
printf(“3の倍数です.¥n”);
else
printf(“2の倍数でも3の
倍数でもありません.¥n”);
a%3 == 0
真
3の倍数
偽
2,3の倍数
ではない
}
2014/4/21
プログラミング基礎及びI
12
論理積
論理和
演算子
否定
内容
( (条件式A) && (条件式B) )
条件式Aが真、
かつ
条件式Bが真
( (条件式A) || (条件式B) )
条件式Aが真、
または
条件式Bが真
!(条件式A)
条件式Aが真なら偽
条件式Aが偽なら真
2014/4/21
プログラミング基礎及びI
13
論理積 論理和
例
#include<stdio.h>
#include<stdio.h>
void main()
{
int a;
void main()
{
int a;
printf(“整数を入力してください”);
scanf(“%d”,&a);
printf(“整数を入力してください”);
scanf(“%d”,&a);
if ( (a >= 10 ) && ( a <= 20) )
printf(“10以上20以下¥n”);
if ( (a >= 10) || ( a <= -10 ))
printf(“aの絶対値は10以上 ¥n”);
}
}
2014/4/21
プログラミング基礎及びI
14
否定
例
#include<stdio.h>
void main()
{
int a;
printf(“整数を入力してください”);
scanf(“%d”,&a);
if ( !(a%2==0) )
printf(“2の倍数ではありません。 ¥n”);
}
2014/4/21
プログラミング基礎及びI
15
メールでの課題提出に関して
• 前回との変更点
• 課題を2種類用意
• 練習課題:
• 特に指定がない場合は,
プログラムを提出する必要はない
• 各課題の指示に従った内容をメール本文に記述
• 提出課題:
• プログラムを提出(コメントは各自つけること)
• ファイル名:第3回の場合 「ex3-J123456-final.cpp」
• 注意点:
• 毎回,送り先のメールアドレスは変わるので注意
• 提出先を間違うと,課題が受理されないことがある
2014/4/21
プログラミング基礎及びI
16
メールでの課題提出に関して
■電子メールで提出
■提出先(宛先)
- [email protected],
- [email protected]
■メールの題名(件名)
- 前期 第○回課題 学籍番号例)前期 第2回課題 J123456
●Jは大文字
●ハイフン(-)はいらない
●第○回の○は及び学籍番号は半角数字
■提出期限:2014/4/25(金)23:59
2014/4/21
プログラミング基礎及びI
17