pascal编程

任意输入三个不相同的整数,输出中间数。(提示:先排序,然后输出中间数。)输入:69085输出:85甲乙丙丁四个人共买了80本书,如果把甲的书本数加上3,乙的书数减去3,丙... 任意输入三个不相同的整数,输出中间数。(提示:先排序,然后输出中间数。)
输入:6 90 85 输出:85

甲乙丙丁四个人共买了80本书,如果把甲的书本数加上3,乙的书数减去3,丙的书数乘以3,丁的书数除以3,那么这四个人的书数相等,问他们实际上各买了多少本书?(提示:用while循环或repeat循环,条件为四者书数是否为80本。先从最终相等的书数(最少从3开始)穷举,然后倒推,如果不符合条件,最终相等的书数再换成4、5……,直到推出正确结果。输出结果:12 18 5 45)

逻辑推理。王某被害,四个嫌疑犯ABCD被审查。甲乙丙丁戊五个年轻的侦探员了解到如下线索:
甲:AB当中至少有一人作案;
乙:BC当中至少有一人作案;
丙:CD当中至少有一人作案;
丁:AC当中至少有一人与本案无关;
戊:BD当中至少有一人与本案无关。
五名侦查员的判断都是正确的,编程找出罪犯。
(提示:每个人要么不是凶手,要么是凶手,用0、1表示。“AB当中至少有一人作案;”可以理解为a+b>=1。本题输出结果:a:0b:1 c:1 d:0
A,B,C,D四个队分获前四名,甲乙丙三人对各队名次判断如下:
甲:A队第一,B队第三;
乙:C队第一,D队第四;
丙:D队第二,B队第一;
三人各说对了一半,求A、B、C、D的名次。
(提示:参照四国面积排名编写思路。结果为:A=4B=3 C=1 D=2
展开
 我来答
jimmy14888888
2015-08-09 · TA获得超过1340个赞
知道小有建树答主
回答量:550
采纳率:80%
帮助的人:352万
展开全部

第一题:朴素做法。

var
    a, b, c, t : integer;
begin
    read(a);
    read(b);
    read(c);
    if a > b then
    begin
        t := a;
        a := b;
        b := t;
    end;
    if a > c then
    begin
        t := a;
        a := c;
        c := t;
    end;
    if b > c then
    begin
        t := b;
        b := c;
        c := t;
    end;
    writeln(b);
end.

运行结果:

第二题:

var
    a,b,c,d:integer;
begin
    for a:=3 to 80 do
        for b:=3 to 80 do
            for c:=3 to 80 do
                for d:=3 to 80 do
                    if (a+b+c+d=80) and (a+3=b-3) and (b-3=c*3) and (c*3=d/3) then
                    begin
                        write(a);
                        write(' ');
                        write(b);
                        write(' ');
                        write(c);
                        write(' ');
                        write(d);
                        writeln;
                    end
end.

运行结果:

第三题:

var
    a,b,c,d:integer;
begin
    for a:=0 to 1 do
        for b:=0 to 1 do
            for c:=0 to 1 do
                for d:=0 to 1 do
                    if (a+b>=1) and (b+c>=1) and (c+d>=1) and (a+c<=1) and (b+d<=1) then
                    begin
                        write('a:');
                        write(a);
                        write(' b:');
                        write(b);
                        write(' c:');
                        write(c);
                        write(' d:');
                        write(d);
                        writeln;
                    end
end.

运行结果:

第四

var
    a,b,c,d:integer;
begin
    for a:=1 to 4 do
        for b:=1 to 4 do
            for c:=1 to 4 do
                for d:=1 to 4 do
                    if (a<>b) and (b<>c) and (c<>d) and (a<>c) and (b<>d) and (a<>d) then
                    begin
                        if ((a=1) or (b=3)) and ((c=1) or (d=4)) and ((d=2) or (b=1)) then
                        begin
                            write('A=');
                            write(a);
                            write(' B=');
                            write(b);
                            write(' C=');
                            write(c);
                            write(' D=');
                            writeln(d);
                        end;
                    end;
end.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式