《1 计算机和编程语言》.pdf
文本预览下载声明
计算机和编程语⾔
翁恺
计算机是⽣活必需品
• 如果想要⾃⼰设计⼀些功能和⾏为,让计算机按照你
的意图做事情,就需要写程序了
• 本课程的主要的⺫的是通过学习编程,来理解计算机
是如何解决问题的,理解计算机的能与不能,擅⻓与
⾮擅⻓
计算机如何解决问题
• “请给我⼀杯⽔”
1. 转⾝⾛到厨房;
do
to
⼈:What to do
2. 找到⼀个杯⼦;计算机:How
3. 找到⼀个⽔壶;
4. 在杯⼦中倒⼊⼀些⽔;
5. 拿着杯⼦⾛回桌⼦。
计算机语⾔
• 程序是⽤特殊的编程语⾔写出来表达如何解决问题的
• 不是⽤编程语⾔来和计算机交谈,⽽是描述要求它如
何做事情的过程或⽅法
计算机的语⾔
int u = 32;
int v = 26;
while ( v!= 0 ) {
int temp = u%v;
u = v;
v = temp;
}
printf(%d,u);
辗转相除法
int u = 32;
int v = 26;
while ( v!= 0 ) {
int temp = u%v; 1. 如果v等于0 ,计算结束,u就是最⼤公约数;
u = v;
2. 如果v不等于0 ,那么计算u除以v的余数,让u
v = temp;
} 等于v ,⽽v等于那个余数;
printf(%d,u); 3. 回到第⼀步。
计算机-程序-算法
int u = 32;
int v = 26;
while ( v!= 0 ) {
int temp = u%v;
u = v;
v = temp;
} 1. 如果v等于0 ,计算结束,u就是最⼤公约数;
printf(%d,u);
2. 如果v不等于0 ,那么计算u除以v的余数,让u等
于v ,⽽v等于那个余数;
3. 回到第⼀步。
算法
• 我们要让计算机做计算,就需要像这样找出计算的步
骤,然后⽤编程语⾔写出来
• 计算机做的所有的事情都叫做计算
计算机的思维
• 2x+6=20
• 解⽅程
• 枚举
• ⼆分搜索
枚举求最⼤公约数
1. 设t为2 ;
2. 如果u和v都能被t整除,则记下这个t
3. t加1后重复第2步,直到t等于u或v ;
4. 那么,曾经记下的最⼤的可以同时整除u和v的t就是
gcd
显示全部