ninaandreeva3179
?>

Составить алгоритм решения следующей : сколько можно купить быков, коров и телят, платя за быка 10р, за корову -5р, а за телёнка -0.5р, если на 100 рублей надо купить 100 голов скота?

Информатика

Ответы

maslprod
Пусть b - количество быков, k - количество коров, t - количество телят.
Тогда можно составить систему уравнений

Два уравнения, три неизвестных. Придется решать перебором вариантов.
Но прямой перебор - это неинтересно. Попробуем оптимизировать.
На 100 рублей можно купить максимум 100/10=10 быков, или 100/5=20 коров, или 100/0.5=200 телят. Без телят не обойтись, даже 18 коров и бык - это 19 голов, а нужно 100. Подбирать нужное количество из 200 хуже, чем из 20 или 10, поэтому сделаем замену, чтобы избавиться от t.
Из второго уравнения следует, что t=100-b-k.    (1)
Подставим значение t в первое уравнение:
10b+5k+0.5(100-b-k)=100;
10b+5k+50-0.5b-0.5k=100;
9.5b+4.5k=50;
19b+9k=100 ⇒ k=(100-19b)/9    (2)
Укрупненный алгоритм:
Перебираем b от 0 до 9 (10 нельзя, истратим все 100 рублей, а телят покупать надо!).
Для каждого b находим k по формуле (2). Если оно целочисленное, находим t по формуле (1). Решение найдено. Иначе перебор продолжается.

var
  b,k,t:integer;
  v:real;
    
begin
  for b:=0 to 9 do
    if (100-19*b) mod 9=0 then begin
      k:=(100-19*b) div 9;
      t:=100-b-k;
      Writeln('Быков ',b,', коров ',k,', телят ',t);
      break
      end;
end.

Решение
Быков 1, коров 9, телят 90
pastore
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <conio.h>

int main() {
   double a, b, y;
   int x;

   a = 6.72f;
   b = 4.85f;
   printf("vvedite x=");
   scanf("%d", &x);

   switch (x) {
       case 1: y = 1 + sqrt(a + abs(x)); break;
       case 7: y = 2 + a*a*x*x + exp(x); break;
       case 5: y = x*sqrt(1+b*log(a*a*x)); break;
       default:
          printf("znachenie x zadano neverno\n");
          printf("nagmi Enter\n");
          getch();
          return 0;
   }

   printf("x=%2dy=%5.2lf", x, y);
   getch();
   return 0;
}
temik10808564
#include <cstdlib>#include <iostream>#include <iomanip>#include <cmath>
using namespace std;
int main(){    setlocale(0, "");    double x, y, a, b, xk, xn, dx;    a = 1.4;    b = 2.5;    cout << "Ââåäèòå xn,xk, dx = " << endl;    cin >> xn; cin >> xk; cin >> dx;    x = xn;    cout << "Tabl" << endl;    cout << "+-----------+" << endl;    cout << "¦ x ¦ y ¦" << endl;    while (x <= xk)          {             y = (log10(a*x*x+b))/(a*x+1);             cout << "+-----+-----¦" << endl;             cout.setf(ios::fixed);             cout.precision(3);             cout << "¦" << x << "¦"<< y << "¦" << endl;             x = x + dx;          }    cout << "+-----------+";    system("pause");}
Переделать программу паскаль в си program lab3; var x,y,a,b,xk,xn, dx: real; begin a: =1.4; b: =2.5;

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Составить алгоритм решения следующей : сколько можно купить быков, коров и телят, платя за быка 10р, за корову -5р, а за телёнка -0.5р, если на 100 рублей надо купить 100 голов скота?
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

tagirova1
steger
irinakuznetsova994741
ДеречинскийИрина1149
expo3217
Виктория-Марина626
dawlatowajana
Истомин441
Golovinskii_Sirotkina1944
vovkiv7864
versalmoda2971
ПогальниковАлёна589
Троцкая-Ивановна
mikchaylovaalex
papushinrv4985