變數&運算子
by Welly
說明
1.先花10分鐘左右講課
2.兩人一組,彼此合作,一起寫出題目
3.開雲端共用空間,在完成上課例題之後把程式碼丟上去,而且大家都可以看到彼此的程式碼(20~30分鐘)
4.讓大家花10分鐘左右互相觀摩
5.在最後的十分鐘再帶著大家寫一次
6.作業:同樣的組別,一起完成作業,要輪流或一起討論都可以(一人交至gc即可,但要標示組員!)
7.下次上課時,如果有疑問可提出,如果作業題目特別好可以多花時間講解
隨堂測驗繳交區:https://drive.google.com/drive/folders/1roXxixwmrOQ1RKHu5XFli6PilTofnOQ1?usp=sharing
variable
你說這份slide怎麼來的?

變數?

型態?

int
- 最常出現
- 以二進位方式儲存,占 4 個 Byte,32 個 bit
- 因此範圍為 −(2的31次方) ~ (2的31次方)−1
- 超過會產生不可預期的結果
long long
- 占 8 個 Byte
- 範圍為-(2的63次方)~(2的63次方)-1
- 運算速度較 int 稍慢
- 你絕對會因為忘記使用它而 WA
char
- 儲存的是字元
- 字元以 ‘ ’ 括住
- char 與 int 的轉換請見 ASCII TABLE
- 可以使用 int() 得到一個字元的ASCII值
#include <iostream>
using namespace std;
int main()
{
char a='a';
cout<<int(a)<<endl;
cout<<char(72)<<char(101)<<char(108)<<char(108)<<char(111)<<endl;
return 0;
}
//a
//Hello
ascii

long double
- 更精準的double
- 更慢的double
double
- 儲存非整數時使用
- 不是精準值,存在誤差。
*bool
- 僅表示1(true) 或 0(false)
- 一般用來表示一個東西的狀態(是否活著、是否用過…)
- 通常不會拿來輸入輸出
- 雖可用 int 替代,但會導致程式可讀性下降
string
- 儲存字串使用
- 字串以 “ ” 括住
- 也有人會使用 char[] 儲存字串,但 string 方便又好用
- char[] 與 string 在某些時候語法不同
" = " vs " == "
- 應該都知道吧~
- "="是指派
- "=="是比較運算子,相等的意思

型態互換
- 欲變換為的型別(欲轉換型別之物(變數/數字/字元/巴拉巴拉~)
- 看例子說明:D
- 隱性轉型?
#include <iostream>
using namespace std;
int main()
{
char a='a';
cout<<int(a)<<endl;
cout<<char(72)<<char(101)<<char(108)<<char(108)<<char(111)<<endl;
return 0;
}
//a
//Hellooperator
數學運算子
- 加法 + ex. i + 9
- 減法 - ex. a - c
- 乘法 * ex. a * b
- 除法 / ex. x / y
- 餘數 % ex. r % s(mod-模運算)
比較運算子
- 相等 == i == 9
- 不等於 != a != c
- 大於 > a > b
- 小於 < x < y
- 大於或等於 >= i>=0
- 小於或等於 <= i<=9
邏輯運算子
- AND && (x>0)&&(y>0)
- OR || (a>0)||(b>0)
- NOT ! !(a>=b)
指派運算子
- 指派 = i = 50
- 加法指派 += i += 9
- 減法指派 -= i -= 9
- 乘法指派 *= i *= 9
- 除法指派 /= i /= 9
- 餘數指派 %= i %= 9
如果拿int除int?
如果拿int除float?
如果拿float除int?
如果除以0?
隨堂練習(20~30min)
deck
By welly6256
deck
- 197