作者hosen0036 (lunarian)
看板study
标题Re: [问题] 学程式遇到困难
时间Sun May 18 12:45:11 2008
※ 引述《saram (saram)》之铭言:
: 同是读资讯的人, 对於程式语言的掌握力也不会相同.
: 可说是天地之别, 不是天才就是白痴.
: 初阶段时大家都平平, 小程式半写半抄的很正常.
: 但到了专案课程(如每个人抽到的题目都不同),
: 只有少数几个是真正自己设计出来的, 其他....
: 这些人又往往不是理论课最强的.
: 但是他们的脑子就很适合搞程式设计, 狂热程度
: 也大过一般人.
: 问他们怎麽设计? 秘诀怎样? 他也讲不出来.
: 总之, 程式高手之养成, 与他的脑筋有重大关连.
: 也许他是宅男, 也许是篮球高手, 或跷课大王.
: 好似跟用功与否无关. 真是有趣.
这篇好像把写程式玄化了
不过不可否认的,
有些人就是能找到"问题的解决方法"
在程式语言的"庞大函式库"中找到需要的函式来使用
(当然也可以自己写出来,不过有现成的为何不用)
programming 翻成"写程式",也有翻成"写程序"
不过我认为後者较贴切,前者看起来有"高深莫测"的感觉
我对写程式的看法较为直观
问题 ->解决方法-> 转换(成程式语言) -> 完成
想出解决方法 和 转换成程式语言 都是常遇到的问题
前者靠天赋、讨论、看别人的程式、经验累积
後者就是端看对语言的熟悉度(对语言的理解,天赋or狂热+热情 :) )
-------------------------------
之所以觉得"写程序"贴切的原因,举例来说:
煮水煮蛋要怎麽煮?
有人会 洗蛋 -> 放入盐水中 -> 煮开10分钟 -> 完成
之後用各种语言表示(中文,英文...) ----<人懂的>
初学的人看过一次,亲自煮一次,大致上就能掌握
老练的人,只要看到别人做的菜,嚐一嚐,看一看
大致上就能猜出这道菜的作法
又,以解两数的最大公因数:
大部的人辗转相除法会想到用 辗转相除法解
: 大数÷小数-> 小数÷余数->...->整除後最後的余数即是->完成
有些人用 因数分解 解
: 用质数各除以两数,都整除者记下 -> 所有记下的质数相乘->完成
甚至有人会想到其他不一样的解法
之後再把解法 转换成 程式语言----<电脑懂的>
简言之,就是用电脑懂的语言叫电脑做事(只是电脑很笨,不合语法就听不懂)
---------------------------------------
方法转换为程式语言,感觉和将中文翻译成英文很类似
(总之就是翻译:保留字<->单字;语法<->文法)
承上例的辗转相除法,设 a>b
可以转成
c = a%b
m = b%c
n = c%m
直到余数为0,看出它的规律,写成loop会变成
while(c>0) {
c = a%b;
a=b;
b=c; }
而loop也可写成
do{...}while(c>0);
for(i=0;c>0;i++){...}
--------------------------------------
顺道一提
建议可以常常查MSDN之类的技术文件, 帮助也不小
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.163.191.139
※ 编辑: hosen0036 来自: 218.163.181.223 (05/18 14:04)
1F:→ my99:y1 08/23 18:23