#include < iostream>
using std: : cin;
using std: : cout;
using std: : endl;
void result(double n, double *otputm, double *otputh, double m = 2, double h = 12, double p = 50, double b = 2)
{
double one = m / 100 * 1;
p = one * p;
m = m + (p * n);
h = h + (b * n);
*otputm = m;
*otputh = h;
}
int main() {
setlocale(lc_all, "russian"); //
double m; //население (тысяч. чел)
double h; //длина дорог (км)
double p; //процент увеличения населения (%)
double b; //увеличение дорог (км)
double n; //кол-во лет
double otputm = 0; //ответ людей
double otputh = 0; //ответ дорог
int input;
cout < < "вы хотите ввести m, h, p, b? \nвведите 1 - если хотите, 2 - если не хотите: ";
cin > > input;
if(input == 2)
{
cout < < "\nвведите n (кол-во лет) = ";
cin > > n;
result(n, & otputm, & otputh);
cout < < "\nчерез " < < n < < " лет: ";
cout < < "\nкол-во людей = " < < otputm < < "\nдлина дорог = " < < otputh;
}else if(input == 1)
{
cout < < "\nвведите n (кол-во лет) = ";
cin > > n;
cout < < "введите m (население [тыс. чел.]) = ";
cin > > m;
cout < < "введите h (длина дорог [км]) = ";
cin > > h;
cout < < "введите p (процент увеличения населения [%]) = ";
cin > > p;
cout < < "введите b (увеличение дорог [км]) = ";
cin > > b;
result(n, & otputm, & otputh, m, h, p, b);
cout < < "\nчерез " < < n < < " лет: ";
cout < < "\nкол-во людей = " < < otputm < < "\nдлина дорог = " < < otputh;
}else
{
cout < < "\nerror! ";
}
return 0;
}
поскольку числа записаны в порядке убывания, одна сумма цифр двух разрядов равна 13, другая — 11. чтобы число было наименьшим, необходимо, чтобы в старших разрядах находилась как можно меньшая цифра, следовательно сумма старших разрядов должна быть меньшей. при разложении 11 на слагаемые необходимо, чтобы одно из них было минимально возможным, поэтому представим 11 как сумму 2 и 9, это — первые две цифры искомого числа. вторые две цифры получатся разложением числа 13 на слагаемые: 4 и 9. следовательно, ответ 2949.
ответ: 2949.
вот и все!
Поделитесь своими знаниями, ответьте на вопрос:
это если без массива
var n,i: integer;
a0,a1,a2,s: real;
begin
read(n);
for i: = 1 to n do begin
if i< 3 then a0: =1
else a0: =a1+a2;
s: =s+a0;
a2: =a1;
a1: =a0;
end;
writeln(a0, s);
end.