Відповідь:
Пояснення:
┌───────────────┐
│ Начало │
└───────────────┘
│
▼
┌───────────────┐
│ printMatrix │
└───────────────┘
│
▼
┌───────────────┐
│ main │
└───────────────┘
│
▼
┌───────────────┐
│ setlocale │
└───────────────┘
│
▼
┌───────────────┐
│ createMatrix │
└───────────────┘
│
▼
┌───────────────┐
│ Ввод │
└───────────────┘
│
▼
┌───────────────┐
│ calculateSum │
└───────────────┘
│
▼
┌───────────────┐
│ printMatrix │
└───────────────┘
│
▼
┌───────────────┐
│ Конец │
└───────────────┘
Описание блок-схемы:
Начало программы.
Вызов функции printMatrix, которая отображает матрицу на экран.
Функция main начинается.
Вызов setlocale, чтобы установить русскую локаль.
Вызов createMatrix для создания матрицы с размером N x (N + 1).
Ввод значений матрицы с цикла for.
Вызов calculateSum для вычисления суммы коэффициентов в каждой строке матрицы.
Вызов printMatrix для вывода матрицы с суммой коэффициентов на экран.
Конец программы.
#include <LiquidCrystal.h>
// Піни для підключення кнопки та LCD
const int buttonPin = 2;
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 6;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
// Змінні для збереження стану кнопки
int buttonState = 0;
int lastButtonState = 0;
int buttonPressCount = 0;
void setup() {
// Ініціалізація LCD
lcd.begin(16, 2);
// Налаштування піна кнопки як вхід з підтяжкою до живлення
pinMode(buttonPin, INPUT_PULLUP);
}
void loop() {
// Отримання стану кнопки
buttonState = digitalRead(buttonPin);
// Перевірка на натискання кнопки
if (buttonState != lastButtonState) {
// Якщо кнопку натиснуто
if (buttonState == LOW) {
buttonPressCount++; // Збільшення лічильника натискань
delay(50); // Затримка для уникнення дрібних перепадів стану кнопки
}
}
// Перевірка кількості натискань та відображення відповідного повідомлення на LCD
if (buttonPressCount == 1) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Hello");
} else if (buttonPressCount == 2) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("How are you?");
} else if (buttonPressCount == 3) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Thanks, I'm fine");
} else if (buttonPressCount >= 4) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Bye, see you again");
buttonPressCount = 0; // Скидання лічильника натискань
}
lastButtonState = buttonState; // Збереження стану кнопки для наступної ітерації
}
Цей код використовує бібліотеку LiquidCrystal для керування LCD дисплеєм. Кнопку під'єднано до піна 2 та використовується внутрішня підтяжка до живлення. Залежно від кількості натискань кнопки, відображається відповідне повідомлення на LCD дисплеї. Після четвертого натискання лічильник скидається.
1) 1,0661*10⁴
2) 1,2543*10⁴
3) 1,15773*10⁵