Задача
Требуется определить, сколько можно преобрести ручек (по цене 10 руб.), карандашей (5 руб.) и ластиков (2 руб.) на 100 рублей. При этом всего предметов должно быть 30.
Решение
Обозначим искомое количество ручек, карандашей и ластиков через переменные a , b и c соответственно.
Цены предметов: pa , pb , pc .
Количество предметов: qty .
Сумма покупки: sum .
Алгоритм решения задачи:
Составим систему уравнений.
Уравнение суммы покупки: 10*a + 5*b + 2*c = 100
Уравнение количества предметов: a + b + c = 30
Заменим числа соответствующими переменными:
Уравнение суммы покупки: pa*a + pb*b + pc*c = sum
Уравнение количества предметов: a + b + c = qty
Чтобы перебрать все возможные варианты сочетания переменных a , b и с , надо использовать три цикла, вложенные друг в друга.
Если при каких-либо значениях a , b и c оба уравнения будут истинны, значит эти значения являются решением для системы уравнений.
Система уравнений может иметь несколько решений или не иметь ни одного.
Программа на языке Паскаль:
При заданных данных программа выдаст два варианта решения системы уравнений:
Программа может выглядеть немного по-другому. При заданных значениях a и b определить c можно по формуле qty — a — b . В таком случае код будет выглядеть так:
- Попроси больше объяснений
- Следить
- Отметить нарушение
Lyudmilaloktev 16.06.2014
Что ты хочешь узнать?
Ответ
Var x,y,f,z,a:real;
begin
write(‘Введите x,z: ‘);
readln(x,z);
if x>13 then f:=-3/(x+1)
else f:=-(x*x*x)+9;
if x 1 then y:=x*x*x
else y:=x;
if x>z then a:=y*z*z/(3+power(2,3/5))
else a:=2*cos(x+z);
writeln(‘F(x)=’,f);
writeln(‘Y=’,y);
writeln(‘A=’,a);
end.
Если функции power нет, то вместо
if x>z then a:=y*z*z/(3+power(2,3/5))
напечатать
if x>z then a:=y*z*z/(3+exp(3/5*ln(2))
На этой странице дано решение примеров Begin38 — Begin40 из задачника Абрамяна, в которых рассматриваются решение простейших уравнений и систем: линейное, квадратное и система линейных уравнений с двумя неизвестными.
В программе нет проверки на вводимость, и если вы введете число A=0, то в 10 строке произойдет деление на 0. Поэтому нужно вводить не равное 0 число А.
где D — дискриминант, равный B 2 − 4·A·C.
Как и в предыдущей программе, здесь нет проверки на то, чтобы А был не равным 0, и то, чтобы дискриминант был положительным. В противном случае или выдаст ошибку, или корни будут равные. К тому же, если A A1·x + B1·y = C1, A2·x + B2·y = C2,
заданной своими коэффициентами A1, B1, C1, A2, B2, C2, если известно, что данная система имеет единственное решение. Воспользоваться формулами