Здесь мы займемся анимацией нашего персонажа. В оргинальной игре Flappy Bird для птички использовалось три картинки: птичка с поднятым крылом, птичка с расправленным крылом, птичка с опущенным крылом. Эти картинки быстро сменяли друг друга и создавалось ощущение, что птица машет крыльями.
Мы подготовили для вас эти картинки: fpbs1.png, fpbs2.png, fpbs3.png соответственно. Картинки должны меняться в следующем порядке: 1,2,3,2,1,2,3,2,1,2... и т.д.
Очевидно, имеет смысл положить все три картинки в список и менять таким образом.
Кстати, для одного из возможных решений можно использовать функцию shift, которую мы писали в пятом модуле. Она сдвигает список по кругу на steps шагов.
Пользоваться ей необязательно, но она делает код гораздо более красивым. Так что на всякий случай оставлю ее тут.
a, b, c, d: integer;
x1, x2, x: real;
begin
Writeln('Введите a,b,c');
Read(a, b, c);
d := sqr(b) - 4 * a * c;
if d > 0 then
begin
x1 := (-b - sqrt(d)) / (2 * a);
x2 := (-b + sqrt(d)) / (2 * a);
Writeln('Корни уравнения: x1=', x1, ' x2=', x2);
{ Потом убрать отсюда ... }
Writeln('*** Делаем проверку ***');
Writeln(a, 'x(', x1:0:5, ')^2+', b, 'x(', x1:0:5, ')+', c, '=', a * sqr(x1) + b * x1 + c:0:5);
Writeln(a, 'x(', x2:0:5, ')^2+', b, 'x(', x2:0:5, ')+', c, '=', a * sqr(x2) + b * x2 + c:0:5)
{ ... и досюда }
end
else
if d < 0 then
Write('Нет корней')
else
begin
x := -b / (2 * a);
Writeln('Корень уравнения: x=', x);
end;
end.
Тестовое решение:
Введите a,b,c
2 -2 -40
Корни уравнения: x1=-4 x2=5
*** Делаем проверку ***
2x(-4.00000)^2+-2x(-4.00000)+-40=0.00000
2x(5.00000)^2+-2x(5.00000)+-40=0.00000