“Проєкт Від’ємний елемент”/ Lazarus

Про матеріал
Тема: Розробка та тестування програмного рішення Робота з комп’ютером Увага! Під час роботи з комп’ютером дотримуйтеся правил безпеки та санітарно-гігієнічних норм “Проєкт Від’ємний елемент”
Перегляд файлу

Інформатика.

Тема: Розробка та тестування програмного рішення

 

Робота з комп’ютером

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

 

“Проєкт Від’ємний елемент”

Завдання.      

Багаторядкове текстове поле містить дійсні числа. Відомо, що їх кількість не перевищує 20. Ввести ці числа як значення елементів одновимірного масиву. Сформувати з від’ємних значень елементів цього масиву другий масив. Вивести значення елементів другого масиву в інше багаторядкове поле. Визначити середнє арифметичне значень елементів другого масиву. Вивести його в текстове поле.

Технологія виконання завдання.

  1. Відкрийте вікно середовища Lazarus.
  2. Задайте формі розмір 450х450 та дайте їй назву “ Від’ємний елемент”. Для цього змініть значення властивостей Height – 450, Width – 450, Caption – “ Від’ємний елемент ” в Інспекторі об’єктів.

  1. Розмістіть на формі:

• два багаторядкових текстових поля заввишки 400 і з вертикальною смугою прокручування;

• два написи: над першим багаторядковим текстовим полем з текстом Елементи і над другим – з текстом Від’ємні елементи;

• текстове поле з написом біля нього Середнє арифметичне;

• кнопку з текстом Від’ємні елементи.

 

 

 

 

Орієнтовний вигляд форми з компонентами наведено на малюнку.

  1. Створіть обробник події Click для кнопки.

Оскільки за умовою задачі кількість елементів одновимірного масиву невідома, і відомо лише, що вона не перевищує 20, то в рядку var оголосимо одновимірний масив a максимально можливої кількості елементів (20) з номерами від 0 до 19. Це дасть змогу під час виконання проєкту вводити в перше багаторядкове поле довільну кількість чисел, яка не перевищує 20.

Для визначення реальної кількості елементів для кожного такого введення скористаємося властивістю Memo1.Lines.Count, яка, нагадуємо, визначає реальну кількість заповнених рядків багаторядкового текстового поля.

  1. Уведіть такий текст процедури:

var a, b: array [0..19] of real; s, m: real; n, i, k: integer;

begin

n:= Memo1.Lines.Count; // визначення кількості заповнених рядків багаторядкового текстового поля, тобто кількість чиселу ньому

for i := 0 to n - 1 do

a[i] := StrToFloat(Memo1.Lines[i]); // формування одновимірного масиву a з n чисел

s := 0; // початкове значення суми від’ємних елементів

k := 0; // початкове значення кількості від’ємних елементів

Тепер будемо переглядати послідовно всі елементи масиву a. І якщо знайдемо елемент з від’ємним значенням, збільшимо кількість таких елементів (k), включимо цей елемент до другого масиву (b) і додамо його значення до суми від’ємних значень (s).

Кількість елементів у масиві b заздалегідь невідома. Але вона точно не більше за 20. Тому в рядку var оголосимо одновимірний масив b максимально можливої кількості елементів (20) з номерами від 0 до 19.

  1. Додайте до процедури такий текст:

for i := 0 to n - 1 do

if a[i] < 0 then begin

k := k + 1; // збільшуємо кількість від’ємних елементів

b[k-1] := a[i]; // включаємо знайдене від’ємне значення до масиву b під номером k-1 (оскільки номери масиву починаються з 0, то номер останнього елемента на 1 менше ніж кількість елементів)

s := s + a[i]; // додаємо від’ємне значення до суми

end;

Під час обчислення середнього арифметичного від’ємних значень потрібно врахувати, що в масиві a елементів з від’ємними значеннями може й не бути. У такому разі й у масиві b не буде жодного елемента, і це також потрібно врахувати під час його виведення.

  1. Додайте до процедури такий текст:

Memo2.Clear; // очищення другого багаторядкового поля

if k = 0 then Memo2.Lines.Append(‘Значень, менших від 0, немає’)

else for i := 0 to k-1 do Memo2.Lines.Append(FloatToStr(b[i])); // виведення у друге багаторядкове поле повідомлення або к елементів масиву b

if k = 0 then Edit1.Text := ‘Значень, менших від 0, немає’

else

begin

m := s/k; // обчислення середнього арифметичного від’ємних значень

Edit1.Text := FloatToStr(m); // виведення середнього арифметичного від’ємних значень

end;

end;

  1. Збережіть остаточну версію проекту та запустіть проєкт на виконання.
  2. Уведіть у перше багаторядкове поле числа: 3,4; –7; 0; –13; 8,75; –23; 15. Виберіть кнопку Від’ємні елементи. Проаналізуйте отриманий результат.
  3. Видаліть числа з першого багаторядкового поля і введіть інші: –16; 98; –43; 45; 0; 45; –1; 29; –2,67; 55. Виберіть кнопку Від’ємні елементи. Проаналізуйте отриманий результат.

Результат п.9-10

 

  1. Уведіть свій набір чисел до першого багаторядкового поля. Виберіть кнопку Від’ємні елементи. Проаналізуйте отримані результати
  2. Закрийте вікно середовища Lazarus.

 

docx
Додано
29 травня 2022
Переглядів
837
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку