网站大量收购独家精品文档,联系QQ:2885784924

pascal(低等难度)试题.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
问题1 输入一个年号,判断它是否是闰年。   分析:判断闰年的算法是:如果此年号能被400除尽, 或者它能被4整除而不能被100整除,则它是闰年。否则,它是平年。      源程序如下:   program ex;   var year:integer;   begin    write(Input year:);readln(year);    write(year:6);    if (year mod 400=0 ) then     writeln(is a leap year.)    else     if (year mod 4=0)and(year mod 1000)     then writeln(is a leap year.)     else writeln(is not a leap year.);   end. 问题2 判断1995年,每个月份的天数。   分析:程序分为:输入月份,计算该月的天数,输出天数      源程序如下:   program days;   var month,days:integer;   begin    write(Input month:);readln(month);   case month of     1,3,5,7,8,10,12:days:=31;     4,6,9,11 :days:=30;     2 :days:=28;     else days:=0;    end;    if days0 then writeln(Days=,days);   end.  问题3 期未来临了,班长小Q决定将剩余班费X元钱,用于购买若干支钢笔奖励给一些学习好、表现好的同学。已知商店里有三种钢笔,它们的单价为6元、5元和4元。小Q想买尽量多的笔(鼓励尽量多的同学),同时他又不想有剩余钱。请您编一程序,帮小Q制订出一种买笔的方案。   分析:对于以上的实际问题,要买尽量多的笔,易知都买4元的笔肯定可以买最多支笔。因此最多可买的笔为x div 4支。由于小q要把钱用完,故我们可以按以下方法将钱用完:   若买完x div 4支4元钱的笔,还剩1元,则4元钱的笔少买1支,换成一支5元笔即可;若买完x div 4支4元钱的笔,还剩2元,则4元钱的笔少买1支,换成一支6元笔即可;若买完x div 4支4元钱的笔,还剩3元,则4元钱的笔少买2支,换成一支5元笔和一支6元笔即可。   从以上对买笔方案的调整,可以看出笔的数目都是x div 4,因此该方案的确为最优方案。 源程序如下:   program pen;    var a,b,c:integer;{a,b,c分别表示在买笔方案中,6元、5元和4元钱笔的数目}     x,y:integer;{x,y分别表示剩余班费和买完最多的4元笔后剩的钱}    begin     write(x=);readln(x){输入x}     c:=x div 4;{4元笔最多买的数目}     y:=x mod 4;{求买完c支4元笔后剩余的钱数y}     case y of      0 : begin a:=0;b:=0; end;      1 : begin a:=0;b:=1;c:=c-1; end;      2 : begin a:=1;b:=0; c:=c-1;end;      3 : begin a:=1;b:=1; c:=c-2;end;     end;     writeln(a=,a,b=,b,c=,c);    end.   问题4 求N!=1*2*3*…*N ,这里N不大于10。   分析:程序要先输入N,然后从1累乘到N。   程序如下:   var     n,i : integer;{i为循环变量}     S : longint;{s作为累乘器}   begin    write(Enter n=);readln(n);{输入n}   s:=1;    for i:=2 to n do{从2到n累乘到s中}     s:=s*i;    writeln(n,!=,s);{输出n!的值}   end. 问题5 求恰好使s=1+1/2+1/3+…+1/n的值大于10时n的值。   分析:恰好使s的值大于10意思是当表达式s的前n-1项的和小于或等于10,而加上了第n项后s的值大于10。从数学角度,我们很难计算这个n的值。故从第一项开始,当s的值小于或等于10时,就继续将下一项值累加起来。当s的值超过10时,最后一项的项数即为要求的n。   程序如下:   var     s : real;     n : integer;{n表示项数}   begin     s:=0.0;n:=0

文档评论(0)

xx88606 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档