Четверг, 14.11.2019, 21:25
Главная | Регистрация | Вход Приветствую Вас Гость | RSS


Меню сайта


Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0


Тестування онлайн
тестування онлайн 


Социальные закладк

Тема. Цикли. Практична робота

Складання та виконання алгоритмів з повтореннями
та розгалуженнями для опрацювання величин»

Увага! Під час роботи з комп’ютером дотримуйтеся правил безпеки та санітарно-гігієнічних норм.
 

  1. Відкрийте середовище Lazarus.

  2. Створіть проект для розв'язування задачі: Відомі довжини сторін двох прямокутників. Обчислити площі прямокутників та порівняти їх. Визначити, чи є прямокутники квадратами. Визначити, чи вміститься один прямокутник усередину другого.

  1. Розмістіть на формі поля для введення даних написи для виведення результатів і три кнопки.

  2. У проекті:

    • складіть обробник події Click для першої кнопки, виконання якого приведе до обчислення площ прямокутників та їх порівняння;

    • складіть обробник події Click для другої кнопки, виконання якого, залежно від вибраних прапорців, приведе до визначення того, чи є відповідний прямокутник квадратом;

    • складіть обробник події Click для третьої кнопки, виконання якого приведе до визначення, чи вміститься перший прямокутник усередину другого або другий прямокутник усередину першого, залежно від вибраного перемикача.

  3. Збережіть проект у папці з іменем Практична 12_1, створеній у вашій папці.

Варіант виконання завдання.

Алгоритм проекта

Интерфейс проекта

Программный код проекта

procedure TForm1.Button1Click(Sender: TObject);
   var a1, a2, b1, b2, s1, s2: real;
 begin
   a1:= strtofloat(edit1.text);
   b1:= strtofloat(edit2.text);
    a2:= strtofloat(edit3.text);
   b2:= strtofloat(edit4.text);
   s1 := a1*b1;
   s2 := a2 * b2;
   label5.caption := 's1 = ' + floattostr(s1) +#10#13 +  's2 = ' + floattostr(s2) ;
end;


procedure TForm1.Button2Click(Sender: TObject);
   var a1, a2, b1, b2: real;
   begin
     a1:= strtofloat(edit1.text);
     b1:= strtofloat(edit2.text);
      a2:= strtofloat(edit3.text);
     b2:= strtofloat(edit4.text);
     if a1 = b1 then      label8.caption := 'первый прямоугольник - квадрат '
                 else if a2 = b2 then  label8.caption := 'второй прямоугольник - квадрат ';
end;


procedure TForm1.Button3Click(Sender: TObject);
   var a1, a2, b1, b2, s1, s2: real;
  begin
    a1:= strtofloat(edit1.text);
    b1:= strtofloat(edit2.text);
     a2:= strtofloat(edit3.text);
    b2:= strtofloat(edit4.text);
    s1 := a1*b1;
    s2 := a2 * b2;
    if s1 > s2 then      label9.caption := 'второй прямоугольник поместится внутри первого'
                 else if s1 < s2 then  label9.caption := 'первый
прямоугольник поместится внутри второго ';
    label5.caption := 's1 = ' + floattostr(s1) +#10#13 +  's2 = ' + floattostr(s2) ; 
end;

 

  1. Створіть проект для розв'язування задачі: Перед початком повені рівень води у річці становив Н метрів. Під час повені щогодини рівень води збільшувався на Р відсотків від рівня попередньої години. Яким буде рівень води через N годин після початку повені? Через скільки годин після початку повені рівень води буде не менше ніж К метрів?

  1. Розмістіть на формі поля для введення початкових даних написи з текстами, що пояснюватимуть призначення полів, і три кнопки.

  2. Установіть на першій кнопці напис Завдання 1, на другій – Завдання 2, на третій –Спочатку, у полів –порожній текст.

  3. Складіть обробник події Click для першої кнопки, виконання якого приведе до виведення у вікно повідомлення відповіді на перше запитання задачі.

  4. Виконайте проект і переконайтеся, що результати його роботи правильні.

  5. Складіть обробник події Click для другої кнопки, виконання якого приведе до знаходження відповіді на друге запитання задачі і виведення його в окремий напис.

  6. Виконайте проект і переконайтеся, що результати його роботи правильні.

  7. Складіть обробник події Click для третьої кнопки, виконання якого приведе до очищення тексту в полях та написі з відповіддю на друге запитання задачі.

  1. Збережіть проект у папці з іменем Практична 12_2, створеній у вашій папці.

  2. Закрийте вікно виконання проекту.

  3. Закрийте вікно середовища Lazarus.

Варіант виконання завдання.

Алгоритм проекта. Интерфейс проекта

      

Программный код проекта

  public

    Public h1 : real;

    Public h2 : real;

    Public p : real;
    { public declarations }

...

 procedure TForm1.Button1Click(Sender: TObject);

var n , t: integer;

begin

     ListBox1.Clear;

     ListBox2.Clear;

       n := strtoint(edit3.Text);

        h1 := strtofloat(edit1.Text);

        p := strtofloat(edit2.Text) ;

        for t :=1 to n do

            begin

            h2 := h1 + (h1 * p) / 100 ;

            h1 := h2;

            ListBox1.Items.Add('t=   ' +  inttostr(t) + '      '+    'h=   '  +  floattostrF(h1, ffFixed,6,3));

            end;
     edit4.Text := floattostrF(h2,ffFixed,6,3);

end;

 

procedure TForm1.Button2Click(Sender: TObject);

 var t1: integer;

var  k : real;

begin

     ListBox1.Clear;

     ListBox2.Clear;

     h1 := strtofloat(edit1.Text);

     p := strtofloat(edit2.Text) ;

     k := strtofloat(edit5.Text);

     t1 := 0 ;

        repeat

            h2 := h1 + (h1 * p) / 100 ;

            h1 := h2;

            t1 := t1 + 1;

            ListBox2.Items.Add('t1=   ' +  inttostr(t1) + '      '+    'h=   '  +  floattostrF(h1, ffFixed,6,3));

        until h1 > k ;    // условие выхода из цикла

     edit6.Text := inttostr(t1);

end;        

 

 

Форма входа
Поиск
Календарь
«  Ноябрь 2019  »
ПнВтСрЧтПтСбВс
    123
45678910
11121314151617
18192021222324
252627282930
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Рейтинг@Mail.ru
    Copyright MyCorp © 2019
    Конструктор сайтов - uCoz