学霸闺蜜吧 关注:105贴子:1,719
  • 18回复贴,共1

【学霸】信息题目可学习

只看楼主收藏回复

一楼防偷窥


1楼2014-03-29 12:58回复
    本贴主要是pascal语言,所以说基本格式是
    var
    *,*,*:longintl;
    begin
    readln(*,*);
    writeln(*)
    end.
    诸如此类


    2楼2014-03-29 12:59
    回复
      2026-06-22 14:29:21
      广告
      不感兴趣
      开通SVIP免广告
      就不来个人顶一下呗。。没动力


      5楼2014-03-29 13:07
      回复
        cool


        IP属地:上海来自Android客户端6楼2014-03-29 13:34
        收起回复


          来自Android客户端7楼2014-03-29 17:05
          收起回复
            想必上两题简单到爆的题目都观摩好了吧,接下来就是普通简单的题目了


            8楼2014-03-30 17:44
            回复
              第三题:分糖果 星级:1星半
              题目:某幼儿园里,有5个小朋友编号为1,2,3,4,5,他们按自己的编号顺序围坐在一张圆桌旁。他们身上都有若干个糖果,现在他们做一个分糖果游戏。从1号小朋友开始,将他的糖果均分三份(如果有多余的,则他将多余的糖果吃掉),自己留一份,其余两份分给他的相邻的两个小朋友。接着2号、3号、4号、5号小朋友也这如果做。问一轮后,每个小朋友手上分别有多少糖果。
              输入:输入一行,5个整数:a,b,c,d,e
              输出:输出一行,五个整数(分别表示5个小朋友的剩余糖果数)
              样例输入:1,2,3,4,5
              样例输出:2,1,2,3,2
              方法:var
              a,b,c,d,e:longint;
              begin
              readln(a,b,c,d,e);
              a:=a div 3; b:=b+a; e:=e+a;
              b:=b div 3; a:=a+b; c:=c+b;
              c:=c div 3; b:=b+c; d:=d+c;
              d:=d div 3; c:=c+d; e:=e+d;
              e:=e div 3; d:=d+e; a:=a+e;
              writeln(a,' ',b,' ',c,' ',d,' ',e);
              end.
              要想做出,没有清晰的思路是不行的,首先得给大家补充一则知识:在pascal语言中,有两种方法可以代表除——一,是div;二,是mod。div是整除,也就是不管余数;而mod是求余数,就是输出余数。这里采用的是div。由于是均分三份,所以需要div3。还要在补充一则:在pascal语言中,=是不代表任何东西,要使某某等于某某,就得用某某:=某某,要多一个冒号。所以,会 有b:=b+a之类的出现。
              现在解释一下每一行的后半部分是为什么,b:=b+a和e:=e+a是为什么呢?前半部分有,a:=a div 3,也就是说目前的a是原来的a的三分之一,现在要把这三分之一发出去。分别发给a身边的b和e,于是,b和e在自己的基础上加了原来a的三分之一,也就是现在的a。接下来就如此类推,最后解决问题了。
              (这次比较话多啊,纯手打手酸啊,脑汁也要绞没了啊,好歹也顶一下,可以的话给个精呗,我这么普度众生了


              9楼2014-03-30 18:05
              收起回复
                接到了一些同学的反映,都说不怎么看得懂。在此声明,要认真看,随便扫两眼可解决不了问题,兴趣最重要,一般这些比较枯燥的也许大家看也不会太认真吧


                11楼2014-04-03 15:34
                回复