Помогите пожалуйста сделать GUI для программы! Под конец практики мне задали неподъемную задачу: написать программу, моделирующую падение шарика(это я сделала)! Но когда препод сказал визуализировать это с помощюь Qt,совершеннно мне не знакомого, - руки опустились! Помогите пожалуйста, сроки поджимают, а Qt оказалось не так просто одолеть! Вот что я написала:
C++ (Qt)
#include <stdio.h>
#include <math.h>
float dh(float speed);
const float g = 9.81; //ускорение свободного падения
const float dt = 0.1; //период времени
int main()
{
float h; //начальная высота
do
{
printf("Тело падает с высоты (h > 0):\n> ");
scanf("%g", &h);
printf("h = %g м\n\n", h);
}
while (h <= 0);
float v = 0.0; //начальная скорость
const float prz = 0.1; //регистрация приземления
const float dE = 0.7; // потеря энергии при отскоке
int sw = 1; // переключатель движения
float h1 = h; // текущая высота
float t = 0; // начальное время
float t1 = 0; // длительность завершившихся полетов
printf("Падение: %1.3f %1.3f %1.3f\n", t, h1, v);
for (t = dt; (v > prz) || (h > prz); t+= dt)
{
v = v + sw * g*dt; //новая скорость
h1 = h1 - sw* dh(v); // предыдущая высота +/- изменение
if (h1 <= 0)
{
h1 = 0; // долетаем до земли
sw = -1; // отскок
t = t1 + sqrt(2* h/g); // время предыдущих полетов + последнего
t1 = t; // время всех полетов
v=dE*v;
}
if (v <= 0)
{
v = 0; // зависли в воздухе
sw = 1; // падение
h = dE * h; // новая высота с учетом потери энергии
h1 = h;
t = t1 + sqrt(2* h/g); // время предыдущих полетов + последнего
}
if (sw == 1)
{
printf("Падение: %1.3f %1.3f %1.3f\n", t, h1, v);
}
if (sw == -1)
{
printf("Отскок: %1.3f %1.3f %1.3f\n", t, h1, -v);
}
}
return 0;
}
float dh(float V) // изменение высоты
{
return V*dt + g* dt*dt/2;
}
А тепреь требуется для этого написать GUI, которое должно содержать кнопку Add и прямоугольное поле для шариков. При нажатии на кнопку на максимальной высоте рандомно появляется шарик и начинает падать, отскакивая от пола. При ударе теряется 30% энергии. То есть кол-во шариков впринципе может быть неограниченным. Очень надеюсь на вашу помощь!