Написать программу в Pascal. Старинная задача. Сколько можно купить быков, коров и телят, если плата за быка 5 рублей, за корову - 3 рубля, за теленка - полтинник (0,5 рубля), если на 100 рублей надо купить 100 голов скота. Плюс 1 балл, если алгоритм эффективный.
Ответы
Ответ дал:
0
program raf105;
const
s = 100;
var b,k,t: integer;
begin
writeln('Все возможные решения задачи:');
for b:=0 to (s div 5)+1 do
for k:=0 to ((s - b*5) div 3)+1 do
begin
t := trunc( (s - b*5 - k*3) / 0.5 );
if ((b+k+t) = 100) and ( (b*5+k*3+t*0.5)=s)
then begin
writeln;
writeln('Быков: ',b);
writeln('Коров: ',k);
writeln('Телят: ',t);
end;
end;
end.
PascalABC 3.4.2
Ответ дал:
0
Ваш вариант решения задачи на PascalABC или Алгоритмическом языке представляет больший интерес для меня и для автора вопроса.
Ответ дал:
0
Математически задача описывается через систему уравнений 5i+3j+0,5k=100 и i+j+k=100. Умножим первое уравнение на два и вычтем из него второе. Получим следующее выражение: 9i+5j=100. Преобразовав это выражение, получим j=(100-9i)/5, j=20-9i/5. Это ключевая формула для решения данной задачи. i и j – целые положительные числа. j принимает целое значение только при i=0, i=5, b i=10. Другие, бОльшие чем 10 значения i, кратные 5, нам не подойдут, поскольку j в этом случае станет отрицательным.
Ответ дал:
0
Программа будет заключаться организации цикла, в котором i изменяется от 0 до 10 с шагом 5. В теле цикла вычисляется значение j, равное 20-9*i/5 и к, равное 100—i-j. Вычисленные значения, здесь-же в цикле и печатаются.
Ответ дал:
0
program answer2020;
var
i: integer;
k,j: real;
begin
writeln('Все возможные решения задачи:');
writeln;
while i < 15 do
begin
j:= 20-9*i/5;
k:= 100-i-j;
writeln('Быков: ',i);
writeln('Коров: ',j);
writeln('Телят: ',k);
writeln;
i:= i+5;
end;
end.
var
i: integer;
k,j: real;
begin
writeln('Все возможные решения задачи:');
writeln;
while i < 15 do
begin
j:= 20-9*i/5;
k:= 100-i-j;
writeln('Быков: ',i);
writeln('Коров: ',j);
writeln('Телят: ',k);
writeln;
i:= i+5;
end;
end.
Ответ дал:
0
Красота! :-)
Вас заинтересует
2 года назад
2 года назад
3 года назад
3 года назад
8 лет назад
8 лет назад
9 лет назад