Решить, используя массив+for+random Дано: - массив Days из 30 элементов -...

0 голосов

Решить, используя массив+for+random
Дано:
- массив Days из 30 элементов - солнечные/пасмурная дни
- высота дерева - B метров (1,5-10)
- улитка находится на высоте A см от земли (60-100)
- на каком расстоянии от земли будет улитка через месяц, если в солнечный день она ползет вверх на 3 см в день, а в пасмурный опускается на 2 см в день?


Заранее спасибо! =)


спросил от Начинающий (194 баллов) в категории Информатика
оставил комментарий от Кандидат Наук (34.0k баллов)

1) Паскаль? 2) Высота может быть отрицательной?))

оставил комментарий от Кандидат Наук (34.0k баллов)

То есть, если улитка уже на земле, она в пасмурные дни так там и останется, или в землю зароется?)) И если она на вершине - будет ли сползать или подниматься?

оставил комментарий от Начинающий (194 баллов)

да, Паскаль

оставил комментарий от Начинающий (194 баллов)

эту задачу писал учитель, и именно такое условие он и написал) извините, что так все запутанно

оставил комментарий от Кандидат Наук (34.0k баллов)

Что ж, значит решать мне

оставил комментарий от Кандидат Наук (34.0k баллов)

Во всех смыслах))

1 Ответ
0 голосов
ответил от Кандидат Наук (34.0k баллов)
 
Лучший ответ

Const
N = 30;
Var
Days:array[1..N] of boolean;
B,A,i:integer;
Begin
B:=random(15,100);
A:=random(60,100);
WriteLn('Высота дерева: ',B/10,' м');
WriteLn('Высота подъёма улитки: ',A,' см');
Write('Погода: ');
For i:= 1 to N do
    Begin
    if random(2) = 1 then Days[i]:=true
    else Days[i]:=false;
    if Days[i] then Write('солнечно ')
    else Write('пасмурно ')
    End;
WriteLn;

For i:= 1 to N do
    Begin
    if Days[i] then
       Begin
       if A+3<=B then A:=A+3<br>       else A:=B;
       End
    else
       Begin
       if A-2>=0 then A:=A-2
       else A:=0;
       End
    End;
Write('Высота поъёма улитки: ',A/10,' м')
End.

...