Помогите пожалуйста! ** берегу реки сидят жуки и пауки, у которых вместе N ног. У каждого...

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

Помогите пожалуйста!
На берегу реки сидят жуки и пауки, у которых вместе N ног. У каждого жука по 6 ног, у паука по 8 ног. Известно, что ног у всех жуков в K раз меньше, чем у всех пауков.Напишите программу, которая определяет, сколько всего жуков и пауков сидит на берегу.Это все в pascale.


Информатика (90 баллов) | 91 просмотров
Дан 1 ответ
0 голосов

//прога на Pascal`e
var
N : uint64;
K : real;
begin
write ('Введите кол-во ног: ');
readln (n);
write ('Введите отношение ног жуков к паукам: ');
readln (k);

if trunc (n/(k+1)) <> n/(k+1) then write ('Неверное условие!')
else 
if trunc (n/(k+1)) mod 8 <> 0 then write ('Неверное условие!')
else write ('Жуков: ', n/(k+1)*k/6, ', пауков: ', n/(k+1)/8);

end.

(3.8k баллов)
0

P.s В этой программе я поменял отношение "пауки : жуки" на "жуки : пауки", чтобы k гарантированно не было иррациональным, и могло быть записано в виде 10-ой дроби

0

Если K - целое число, лучше сделать так:

0

//прога на Pascal`e
var
N, K : uint64;
begin
write ('Введите N: ');
readln (n);
write ('Введите K: ');
readln (k);

if (n mod (k+1)) mod 6 <> 0 then write ('Неверное условие!')
else write ('Жуков: ', n/(k+1)/6, ', пауков: ', n/(k+1)*k/8);
end.

0

спасибо, но это неправильно

0

Почему?!

0

я отправила в qbit и мне дали за эту задачу 0 балов

0

Попробуй так:

0

//прога на Pascal`e
var
N, K : uint64;
begin
write ('Введите N: ');
readln (n);
write ('Введите K: ');
readln (k);

if n mod (k+1)<>0 then write ('Неверное условие!')
else
if (((n div (k+1)) mod 6)<>0) or (((n div (k+1))*k mod 8)<>0) then write ('Неверное условие!')
else write ('Жуков: ', n/(k+1)/6, ', пауков: ', n/(k+1)*k/8);
end.

0

все равно неправильно

0

Я умываю руки! :-(