EgrVir2018
04.10.2021 23:14

Впаскале. ввести 20 звёзд вот таким образом (по возрастанию): * ** ***

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
khavra1991
18.07.2020 19:27
var a: array[1..2,1..4] of real;
    b,c: string; 
    d,x,y: real;
    i,j: integer;
begin
   b:='ABCD';  c:='xy';
   writeln('трапеция ABCD');
   for i:=1 to 4 do
   begin
     writeln('координаты точки ',b[i],': ');
     for j:=1 to 2 do
     begin
       write('   ',c[j],i,' = ');
       readln(a[j,i]);
     end;  
   end;  
   x:=(a[1,3]-a[1,2]+a[1,4]-a[1,1])/2;
   y:=(a[2,3]-a[2,2]+a[2,4]-a[2,1])/2;
   d:=sqrt(x*x+y*y);
   writeln('длина средней линии:  ',d:5:2);
end.

ввод - вывод

трапеция ABCD
координаты точки A: 
   x1 = 3
   y1 = 2
координаты точки B: 
   x2 = 5
   y2 = 5
координаты точки C: 
   x3 = 9
   y3 = 5
координаты точки D: 
   x4 = 10
   y4 = 2
длина средней линии:   5.50
0,0(0 оценок)
Ответ:
Юлиана95631
16.03.2020 11:58
Пусть *(n) - число звёздочек, которое выведет процедура f(n).

Так как f(n) всегда выводит 1 звёздочку, а если если n > 2 - то вызывает f(n - 1) и f(n - 2), то
*(n) = 1 при n <= 2
*(n) = 1 + *(n - 1) + *(n - 2) при n > 2.

*(1) = *(2) = 1
*(3) = 1 + *(2) + *(1) = 1 + 1 + 1 = 3
*(4) = 1 + *(3) + *(2) = 1 + 3 + 1 = 5
*(5) = 1 + 5 + 3 = 9
*(6) = 1 + 9 + 5 = 15
*(7) = 1 + 15 + 9 = 25
*(8) = 1 + 25 + 15 = 41
*(9) = 1 + 41 + 25 = 67
*(10) = 1 + 67 + 41 = 109
*(11) = 1 + 109 + 67 = 177
*(12) = 1 + 177 + 109 = 287
*(13) = 1 + 287 + 177 = 465
*(14) = 1 + 465 + 287 = 753
*(15) = 1 + 753 + 465 = 1219
*(16) = 1 + 1219 + 753 = 1973 >= 1500
ответ: 16.

Можно было заметить, что *(n) = 2F(n) - 1, где F(n) - число Фибоначчи, или просто выполнять программу для разных n.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота