- 1、本文档共41页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[理科版] 第1章 计算与计算思维
1.3 计算科学与计算思维 1.3.1 计算与计算科学 1. 计算的概念 如果我们把一切都看作是信息,对包罗万象的 计算加以抽象,那么计算就是对信息的变换,是某个 系统完成了一次从输入到输出的变换。 例3:三对情侣参加婚礼,三个新郎为A,B,C,三个新娘为X,Y,Z,有人想知道究竟谁和谁结婚,于是就问新人中的三位,得到如下的提示:A说他将和X结婚;X说她的未婚夫是C;C说他将和Z结婚。这人事后知道他们在开玩笑,说的全是假话,那么究竟谁与谁结婚呢? 解: 步骤1:找出所有可能的新人配对,共6组: ① (A,X)、(B,Y)、(C,Z) ② (A,X)、(B,Z)、(C,Y) ③ (A,Y)、(B,X)、(C,Z) ④ (A,Y)、(B,Z)、(C,X) ⑤ (A,Z)、 (B,X) 、(C,Y) ⑥ (A,Z)、(B,Y)、(C,X) 步骤2:由输入信息A不和X结婚, C不和Z结婚, C不和X结婚。所以 结论:这三对新人中A和Z结婚,B和X结婚,C和Y结婚。 (A,X) (C,Z) (C,X) 不可能结婚,将6组配对中包含上述组合的组去掉,可得到正确的配对是⑤(第5组)。 如果有100对新人、1000对新人 呢? #include?stdio.h?? ? main()?? ? {?? ? ????char?husband[3]?=?{A,B,C},?wife[3]?=?{X,Y,Z};?? ? ????int?i?,j?,k;?? ? ????for(i=0;i3;i++)?? ? ????????for(j=0;j3;j++)?? ? ????????????for(k=0;k3;k++)?? ? ????????????????if(i!=j??j!=k??i!=k)?/*不能1个新娘配2个新郎*/ ?? ? ????????????????{?? ? ????????????????????/*得到一种配对方式*/?? ? ????????????????????if?(match(i,j,k,wife))?? ? ????????????????????{?? ? ????????????????????????printf(husband??wife\n);?? ? ????????????????????????/*这种配对方式符合题目要求*/?? ? ????????????????????????printf(A---------%c\n,wife[i]);?? ? ????????????????????????printf(B---------%c\n,wife[j]);?? ? ????????????????????????printf(C---------%c\n,wife[k]);?? ? ????????????????????}?? ? ????????????????}?? ? ????????????????getche();?? ? }?? ? ? ? int?match(int?i,int?j,int?k,char?wife[])?? ? {?? ? ????/*A不和X结婚*/?? ? ????if(wife[i]?==?X)?return?0;?? ? ????/*X不和C结婚*/?? ? ????if(wife[k]?==?X)?return?0;?? ? ????/*C不和Z结婚*/?? ? ????if(wife[k]?==?Z)?return?0;?? ? ????return?1;?? ? } ? 2.计算科学 我们能否找到“偷懒”的办法,构建一个系统自动地计算出上述问题的结果? 如果我们希望构建的系统除了自动地计算上述问题外,只要通过方便的方式把处理步骤置入系统,这个计算工具还能自动地计算其他更复杂的计算问题,我们该如何构建这样的通用系统? 如果能构建这样的系统,那么应该如何使系统的计算效率更高、使用更方便、更安全可靠? 如果很多人都拥有这样的系统,我们应该如何共享资源? 2.计算科学 计算科学是计算的学问——什么是可自动计算的,怎样去自动计算。 计算科学 系统领域 应用领域 计算机体系结构、计算机网络 安全问题、操作系统、算法、 程序设计语言以及软件工程 涵盖了与计算机使用有关的领 域,如数据库和人工智能。 2.计算科学 算法是一组有序的、无歧义的、可执行的步骤的集合,定义了一个解决某一特定类型问题的可终止的运算序列。 用计算机能够理解的规定格式(编程语言)将算法表示出来,并将其输入到计算机中,这种算法表示称作程序,这样的过程称之为程序设计。 程序及其所表示的算法总称为软件,而计
文档评论(0)