Увага! Під час роботи з комп'ютером дотримуйтеся правил безпеки та санітарно-гігієнічних норм.
Повторіть правила безпечної роботи за комп’ютером.
Завантажте і встановіть: Середовище програмування Лазарус (для тих, хто не завантажив)
Завдання. Багаторядкове текстове поле містить дійсні числа. Відомо, що їх кількість не перевищує 20. Ввести ці числа як значення елементів одновимірного масиву. Сформувати з від’ємних значень елементів цього масиву другий масив. Вивести значення елементів другого масиву в інше багаторядкове поле. Визначити середнє арифметичне значень елементів другого масиву. Вивести його в текстове поле.
Відкрийте вікно середовища Lazarus. Завантажте документ.
Розмістіть на формі:
два багаторядкових текстових поля заввишки 400 і з вертикальною смугою прокручування;
два написи: над першим багаторядковим текстовим полем з текстом Елементи і над другим – з текстом Від’ємні елементи;
текстове поле з написом біля нього Середнє арифметичне;
кнопку з текстом Виконати.
Створіть обробник події Click для кнопки і введіть у нього такий текст:
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.
Додайте до процедури такий текст:
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 не буде жодного елемента, і це також потрібно врахувати під час його виведення.
Додайте до процедури такий текст:
Memo2.Clear; // очищення другого багаторядкового поля
if k = 0 then Memo2.Lines.Append(‘Значень, менших від 0, немає’)
else for i := 0 to k-1 do Memo2.Lines.Append(FloatToStr(b[i])); // виведення у друге багаторядкове поле повідомлення 1 або k елементів масиву b
if k = 0 then Edit1.Text := ‘Значень, менших від 0, немає’
else begin
m := s/k; // обчислення середнього арифметичного від’ємних значень
Edit1.Text := FloatToStr(m); // виведення середнього арифметичного від’ємних значень
end;
end;
Запустіть проєкт на виконання.
Уведіть у перше багаторядкове поле числа: 3,4; –7; 0; –13; 8,75; –23; 15. Виберіть кнопку Виконати. Проаналізуйте отриманий результат.
Видаліть числа з першого багаторядкового поля і введіть інші: –16; 98; –43; 45; 0; 45; –1; 29; –2,67; 55. Виберіть кнопку Виконати. Проаналізуйте отриманий результат.
Видаліть числа з першого багаторядкового поля і введіть інші: 16; 98,28; 45; 0; 45; 1; 29; 2,67; 55; 0. Виберіть кнопку Виконати. Проаналізуйте отриманий результат.
Уведіть свій набір чисел до першого багаторядкового поля. Виберіть кнопку Виконати. Проаналізуйте отримані результати.
Зробіть скриншот виконаного завдання та надішліть його вчителю.
Закрийте вікно виконання проєкту.
Закрийте вікно середовища Lazarus.
"Інформатика, 9 клас" (Й.Я. Ривкінд та їнші):
Прочитайте та розберіть теоретичний матеріал пункту 5.2 (стор. 243-248), вправи 1, 2 (стор. 254).
Дайте усні відповіді на усні питання 1-3 (стор. 254).