Практична робота №3 (10) «Складання та виконання лінійних алгоритмів опрацювання величин в середовищі Lazarus»
Увага! Під час виконання практичних завдань пам’ятайте про правила безпеки життєдіяльності при роботі з комп’ютером
Завдання 1. Парк атракціонів (3,3 балів)
У парку атракціонів побудували нову гірку завдовжки с, яка біля підніжжя нахилена до основи b під кутом а градусів. Розробіть проект Атракціон, за допомогою якого можна визначити висоту гіркиh та довжину основи b, округлені до цілого числа. Використайте формулу для переведення величини, вираженої в градусах, у радіани:
радіани = градуси * а/180
Інтерфейс проекту
Програмний код
Завдання 2. Тривалість рейсу (3,3 балів)
Розробіть проект Тривалість рейсу для обчислення тривалості рейсу в годинах і хвилинах для деякого автотранспортного підприємства, якщо відомо, що маршрут складається із трьох відрізків – s1,s2, s3 км, які транспорт долає зі швидкістю v1, v2, v3 км/год. Між ділянками маршруту є зупинки по t хв.
Інтерфейс проекту
|
Підсумок
|
Програмний код
procedure TForm1.Button1Click(Sender: TObject);
var s1, s2, s3 : integer; v1, v2, v3, t1, t2, td1,td2, td3, tm, tch : real;
begin
s1 := strtoint(inputbox('длина первого участка пути', 'введите длину первого участка пути, км.', ''));
label6.caption := inttostr(s1) + ' км.';
v1 := strtofloat(inputbox('скорость движения на первом участке пути', 'введите скорость движения на первом участке пути, км/ч.', ''));
v1 := v1/60;
t1 := strtoint(inputbox('длительность первой остановки', 'введите длительность первой остановки, мин.', ''));
label7.caption := floattostr(t1)+ ' мин.';
s2 := strtoint(inputbox('длина второго участка пути', 'введите длину второго участка пути, км.', ''));
label8.caption := inttostr(s2) + ' км.';
v2 := strtofloat(inputbox('скорость движения на втором участке пути', 'введите скорость движения на втором участке пути, км/ч.', ''));
v2 := v2/60;
t2 := strtoint(inputbox('длительность второй остановки', 'введите длительность второй остановки, мин.', ''));
label9.caption := floattostr(t2)+ ' мин.';
s3 := strtoint(inputbox('длина третьего участка пути', 'введите длину третьего участка пути, км.', ''));
label10.caption := inttostr(s3)+ ' км';
v3 := strtofloat(inputbox('скорость движения на третьем участке пути', 'введите скорость движения на третьем участке пути, км/ч.', ''));
v3 :=v3/60;
td1 := s1/v1 ; td2 := s2/v2; td3 := s3/v3 ; tm :=t1 + t2 + td1 + td2 + td3 ; tch := tm/60 ;
label12.Caption:= floattostr(round(tm)) + ' минут' + #13 +'или' + #13 + floattostr(round(tch)) +' часов';
end;
Завдання 3. Квартплата (5,4 балів)
В об'єднанні співвласників багатоквартирного будинку здійснюються такі виплати: 0,36 грн/м2 – за користуванням ліфтом, 0,12 грн/м2 – за вивіз сміття з особи, 0,5 грн/м2 – формування ремонтного фонду, 2,15 грн/м2 – квартплата. У середовищі програмування Lazarus розробіть проект Квартплата для розрахунку оплати відповідно до показників квитанції за квартиру площею S м2 на місяць, у якій проживає n осіб. Передбачте введення значень площі та кількості осіб у вікнах введення, а відображення розміру оплати – на формі проекту.
Інтерфейс проекту
|
Підсумок
|
Програмний код
procedure TForm1.Button1Click(Sender: TObject);
var s, l, m, f, k :real; n : integer;
begin s := strtofloat(inputbox('площадь квартиры', 'укажите площадь квартиры в м^2', ''));
n := strtoint(inputbox('кол-во жильцов', 'укажите кол-во жильцов', ''));
l := 0.36*n;
m := 0.12*n;
f := 0.5*n;
s := 2.15*s;
k := s + l + m + f;
label10.caption := 'лифт = '+ floattostr(l) +' грн.' + #13 + 'муссор = ' + floattostr(m) +' грн.' + #13 + 'ремонтный фонд = ' + floattostr(f) +' грн.' + #13 + ' квартплата = ' + floattostr(s) + ' грн.' + #13 + 'итог = '+ floattostr(k)+' грн.' ;
end;