Помогите пожалуйста :((( Даны шесть монет, из которых одна фальшивая. Фальшивая монета...

0 голосов
39 просмотров

Помогите пожалуйста :(((
Даны шесть монет, из которых одна фальшивая. Фальшивая монета отличается от настоящей монеты весом, причем она либо немного тяжелее, либо немного легче. Имея рычажные весы, определить ложную монету не более чем за три взвешивания.
Это в паскале надо)
Пожалуйста!!!!))))


Информатика (63 баллов) | 39 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Var
    a, real_coin: array[1..6] of integer;
    forged_coin, i: integer;

begin
    for i := 1 to 6 do
        a[i] := 10;
    forged_coin := random(6);
    a[forged_coin] := random(4) + 8;  
    writeln(forged_coin);
    
    for i := 1 to 6 do
        write(a[i], ' ');
    writeln;
    
    forged_coin := 0;
    if a[1] + a[2] = a[3] + a[4] then begin
        real_coin[1] := a[1];
        real_coin[2] := a[2];
        if real_coin[1] = a[5] then
            forged_coin := 6
        else forged_coin := 5;
    end
    else begin
        real_coin[1] := a[5];
        real_coin[2] := a[6];
        if a[1] + a[2] = real_coin[1] + real_coin[2] then begin
            real_coin[3] := a[1];
            real_coin[4] := a[2];
            if real_coin[1] = a[3] then
                forged_coin := 4
            else forged_coin := 3;
        end
        
        else begin
            real_coin[3] := a[3];
            real_coin[4] := a[4];
            if real_coin[1] = a[1] then
                forged_coin := 2
            else forged_coin := 1;
        end;
    end;
    
    writeln(forged_coin);
end.

(53.1k баллов)
0

не работает(

0

у меня работает. Что именно у тебя не работает? какие ошибки пишет?