Дан рекурсивный алгоритм: procedure f(n: integer); begin writeln(n); if n < 5 then begin writeln(n); f(n+3); f(n*2) end end; найдите сумму чисел, которые будут выведены при вызове f(1). нужно полное решение.
Максимальное число, составленное из утроенного произведения цифр будет 9*3*N - не может быть больше 54, т.е. N может быть только 1 или 2. По условию х>=10 -> N=2 (N -порядок числа). Поэтому искать нужно среди чисел от 11 до 54. Решение - число 15.
var n,m: integer; begin write('n = '); readln(n); if n=2 then begin m:=11; repeat if (m mod 10)*(m div 10)*3=m then begin writeln('число: ',m); m:=55; end; m:=m+1; until m>54; end else writeln('нет решения'); end.
9*3*N - не может быть больше 54, т.е.
N может быть только 1 или 2. По условию х>=10 -> N=2 (N -порядок числа).
Поэтому искать нужно среди чисел от 11 до 54. Решение - число 15.
var n,m: integer;
begin
write('n = '); readln(n);
if n=2 then
begin m:=11;
repeat
if (m mod 10)*(m div 10)*3=m then
begin
writeln('число: ',m);
m:=55;
end;
m:=m+1;
until m>54;
end
else writeln('нет решения');
end.
#include <cmath>
using namespace std;
void main()
{
int n,sum=0;
float y,k=0;
cin >> n;
int *mass = new int[n];
for (int i = 0;i < n;++i)
{
cin >> mass[i];
}
for (int i = 0;i < n;++i)
{
if (mass[i] >0 )
{
k++;
y=pow(mass[i],2);
cout<<y;
sum+=mas[i]
}
}
system("pause");
}
2)#include <iostream>
#include <cmath>
using namespace std;
void main()
{
int s,p,r,day=0;
cin >> s>>p>>r;
float km=s;
while(r>km)
{
km+=km*p/100;
day++;
}
cout << " km = " << km << " day = " << day << endl;
system ("pause");
}