
1计算机和编程语言.pdf
12页计算机和编程语⾔言 翁恺 计算机是⽣生活必需品 •如果想要⾃自⼰己设计⼀一些功能和⾏行为,让计算机按照你 的意图做事情,就需要写程序了 •本课程的主要的⺫⽬目的是通过学习编程,来理解计算机 是如何解决问题的,理解计算机的能与不能,擅⻓长与 ⾮非擅⻓长 计算机如何解决问题 •“请给我⼀一杯⽔水” 1. 转⾝身⾛走到厨房; 2. 找到⼀一个杯⼦子; 3. 找到⼀一个⽔水壶; 4. 在杯⼦子中倒⼊入⼀一些⽔水; 5. 拿着杯⼦子⾛走回桌⼦子 ⼈人:What to do 计算机:How to do 计算机语⾔言 •程序是⽤用特殊的编程语⾔言写出来表达如何解决问题的 •不是⽤用编程语⾔言来和计算机交谈,⽽而是描述要求它如 何做事情的过程或⽅方法 计算机的语⾔言 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; u = v; v = temp; } printf(“%d“,u); 1. 如果v等于0,计算结束,u就是最⼤大公约数; 2. 如果v不等于0,那么计算u除以v的余数,让u 等于v,⽽而v等于那个余数; 3. 回到第⼀一步。
计算机-程序-算法 int u = 32; int v = 26; while ( v!= 0 ) { int temp = u%v; u = v; v = temp; } printf(“%d“,u); 1. 如果v等于0,计算结束,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 程序的执⾏行 •解释:借助⼀一个程序,那个程序能试图理解你的程序, 然后按照你的要求执⾏行 •编译:借助⼀一个程序,就像⼀一个翻译,把你的程序翻 译成计算机真正能懂的语⾔言——机器语⾔言——写的程 序,然后,这个机器语⾔言写的程序就能直接执⾏行了 解释语⾔言vs编译语⾔言 •语⾔言本⽆无编译/解释之分 •常⽤用的执⾏行⽅方式⽽而已 •解释型语⾔言有特殊的计算能⼒力 •编译型语⾔言有确定的运算性能 。
