Обробка матриць - Інформатика, програмування

1.Постановка задачі 2. Розробка алгоритму 3. Розробка програми та інтерфейсу користувача

Тема курсової роботи "Обробка матриць".

Мета роботи - навчитися аналізувати завдання та визначити перелік питань, які вирішуватимуться в даній роботі, створювати список функціональних вимог до програми, тобто визначення того, що, власне, виконуватиме програма, що розробляється, не розглядаючи конкретну реалізацію цих функцій, у завданнях лексичного та синтаксичного аналізу, вміти визначати можливі помилки в записі операторів, описувати інтерфейс програми та ті функції, які вона виконуватиме.

Про стрімкий темп розвитку інформаційних технологій ми з вами читаємо та чуємо майже щодня. Ці темпи справді вражають. Однак у комп'ютерному світі залишається одна найважливіша область, зміни в якій відбуваються вкрай повільно. Програмування, кодування, складання вихідних текстів - ключовий елемент у створенні будь-якої програми сьогодні відбувається так само, як і сорок років тому. Розробник застосовує вкрай обмежений набір логічних конструкцій (умовний оператор та оператори присвоєння та циклу) та невелику кількість стандартних типів даних. Причому такий підхід не змінився, хоча змінилося вже не одне покоління мов програмування. Наприклад, на зміну Сі та Паскалю прийшла Java.

Delphi – це середовище розробки програм, орієнтованих працювати у операційних системах сімейства Windows. Програми Delphi створюються на основі сучасної технології візуального проектування. За допомогою Delphi можна створити зручний інтерфейс програми, який може входити різні меню, вікна для введення та виведення текстової інформації тощо. Такі віконні програми – основнийвид програм, що використовуються в операційних системах сімейства Windows.

Delphi лише спрощує процес створення інтерфейсу, але не замінює собою власне програмування. Програми в Delphi пишуться мовою Object Pascal, яка є наступником та розвитком мови Turbo Pascal.

Дана ціла матриця системи т х п. Визначити матрицю, що виходить з цієї перестановкою стовпців - одного з останнім. 2-го з передостаннім і т.д. У кожній матриці визначити кількість "особливих" елементів, вважаючи елемент "особливим", якщо в його рядку зліва від нього знаходяться менші елементи, а праворуч - більші. У матриці з найбільшою кількістю "особливих" елементів упорядкувати елементи рядків зі спадання.

Для введення та виведення даних використовувати компоненти Delphi.

На першому етапі виконання курсової роботи необхідно проаналізувати завдання та визначити перелік питань, які вирішуватимуться в даній роботі. Основне призначення цього етапу – створення списку функціональних вимог до програми, тобто визначення того, що, власне, виконуватиме програма, що розробляється, не розглядаючи конкретну реалізацію цих функцій. Для програми постановка завдання є найвищим рівнем абстракції, чи найзагальнішим поданням вимог до неї.

Розбираємо суть завдання і на цій основі розробляємо алгоритм програми, визначаючи в кожній матриці кількість «особливих» і впорядковуємо елементи рядків за спаданням і лише після цього знаходимо матрицю, що виходить перестановкою стовпців, згідно з завданням.

При розробці програм обробки типізованих файлів більше уваги слід приділити опису інтерфейсу програми та тим функціям, які вона виконуватиме.

У будь-якому випадку слід пам'ятати, що постановка завдання – це перший івідповідальний етап розробки, після якого складається алгоритм програми.

2. Розробка алгоритму

Перед тим як почати складати програму, треба попередньо придумати і продумати (найкраще, записати на папері) алгоритм її роботи, що представляє собою строгий, формальний опис процесу вирішення задачі, що не допускає неоднозначностей і двозначностей. Після того, як алгоритм готовий, на його основі і складається (кодується) програма.

Процес створення алгоритму – найважливіший. Якщо тут припустилися помилок, то усунути їх на етапі кодування дуже важко.

Алгоритм роботи програми полягає в наступному:

1) Введення розмірності матриці №1 та значень її елементів

2) Формуємо матрицю №2 із матриці №1 перестановкою стовпців - 1-го з останнім. 2-го з передостаннім і т.д. Для цього організуємо цикл за кількістю шпальт 2. Внутрішній цикл за кількістю рядків виконує занесення елемента в другу матрицю

3) У кожній матриці визначаємо кількість "особливих" елементів, вважаючи елемент "особливим", якщо в його рядку зліва від нього знаходяться менші елементи, а праворуч - більші. Для цього організовуємо два вкладені цикли (по рядках та стовпчиках матриці) та третій вкладений цикл по стовпчиках та перевіряємо на виконання умов «особливого елемента».

4) Порівнюємо кількість спеціальних елементів у обох матрицях. І робимо впорядкування елементів рядків зі спадання в тій матриці, в якій число спеціальних більше.

Схема алгоритму програми представлена ​​у Додатку А.