МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Національний технічний університет України
«Київський політехнічний інститут»
Курсова робота
з курсу
«Обчислювальна техніка, алгоритмічні мови і програмне забезпечення»
Київ 2009
Зміст
Завдання. Математичне розшифрування завдання
Лістинг програми
Виведення результатів роботи програми
Опис роботи програми
Список літератури
1. Математичне розшифрування завдання
На квадратному аркуші картатого паперу розміру 8*8 кліток намальовано декілька прямокутників, кожний прямокутник складається з кліток, прямокутники не накладаються один на одного й не стикаються. Дана цілочисельна квадратна матриця порядку 8, у якій елемент рівняється «0», якщо відповідна клітка належить якому-небудь прямокутнику, і відмінний від «0» в іншому випадку. Визначити кількість прямокутників.
Матриці. Основні означення
Прямокутна таблиця чисел а (I, j), і = 1,2,…, m; (j = 1,2,…, n, складена з m рядків та n стовпців і записана у вигляді:
або
називається матрицею. Поняття матриці вперше ввели англійські математики У. Гамільтон і Д. Келі. Коротко матрицю позначають так:
Де – елементи матриці, причому індекс i в елементі означає номер рядка, а j – номер стовпця, на перетині яких стоїть даний елемент.
Добуток числа рядків m на число стовпців n називають розміром матриці і позначають mxn. Якщо хочуть вказати розмір mxn матриці А, то пишуть .
Матриця, в якої число рядків дорівнює числу стовпців, називається квадратною. Кількість рядків (стовпців) квадратної матриці називається її порядком. Матриця, у якої всього один рядок, називається матрицею-рядком, а матриця, у якої всього один стовпець, – матрицею-стовпцем. Дві матриці та називаються рівними, якщо вони однакових розмірів і мають рівні відповідні елементи:. Нульовою називається матриця, у якої всі елементи дорівнюють нулю. Позначається така матриця буквою О. В квадратних матрицях виділяють головну і побічну діагональ.
Для виконання завдання потрібно знаходити суму елементів матриці стовпця і рядка, на які вказують індекси елемента, і замінити цією сумою сам елемент матриці.
2. Лістинг програми
Private Sub Command1_Click()
Const n = 5
Dim i, j As Byte
Dim a (n, n) As Byte, m(56) As Byte
n1 = 0
n2 = 0
ch = 0
ch1 = 0
For i = 1 To n
For j = 1 To n
Randomize
a (i, j) = Rnd(1)
Next j
Next i
For i = 1 To n
m(i) = a (i, n – 1)
For j = 1 To n
Print a (i, j),
Next j
Print
Next i
Print «–»
For i = 1 To n
For j = 1 To n
If a (i, j) = 0 Then
n1 = n1 + 1
If n1 > 1 Then
a (i, j – 1) = 1
End If
Else
If n1 > 1 Then
a (i, j – 1) = 1
ch = ch + 1
End If
n1 = 0
End If
Next j
If n1 > 1 Then
ch = ch + 1
End If
n1 = 0
Next i
For i = 1 To n
If a (i, n) = 0 And m(i) = 0 Then
a (i, n) = 1
End If
Next i
Print «===============================»
For j = 1 To n
For i = 1 To n
If a (i, j) = 0 Then
n1 = n1 + 1
Else
If n1 > 1 Then
ch = ch + 1
End If
n1 = 0
End If
Next i
If n1 > 1 Then
ch = ch + 1
End If
n1 = 0
Next j
Print «–»
For i = 1 To n
For j = 1 To n
Print a (i, j),
Next j
Print
Next i
Print «*****************************»
Print ch
End Sub
Private Sub Command2_Click()
End
End Sub
3. Виведення результатів роботи програми
Після запуску програми в Visual Basic на моніторі з`являється вікно програми, на якому виведено дві кнопки: «розрахунок» і «кінець».
Для того щоб запустити програму, ми клацаємо на «розрахунок», і програма за допомогою оператора randomize починає складати довільну матрицю, в якій містяться лише одиниці та нулі.
Тобто, у цій матриці склалося три прямокутники. Для завершення програми натискаємо на кнопку «кінець».
4. Опис роботи програми
Формування значень елементів масиву випадковим чином і з клавіатури і виведення їх на екран.
Операції роботи з двовимірні масивами аналогічні операцій роботи з одномірні масивами, треба тільки не забувати про відмінності між масивами. Зазвичай при роботі з двовимірні масивами використовуються вкладені цикли.
Дуже часто значення елементів масиву вводяться з клавіатури. Цей спосіб завдання інформації занадто трудоємок при роботі з масивами великих розмірів. Для налагодження широкого класу алгоритмів такої введення інформації повинен бути замінений формуванням елементів масиву випадковим чином. Для цього використовують вбудовані засоби Турбо Паскаля: процедуру Randomize та функцію Random. Ви вже стикалися з цими коштами. Сьогодні ж наша задача створити процедуру введення елементів в масив і процедуру виведення елементів на екран.
Наведемо приклад заповнення масиву випадковими числами. Ця процедура повинна прийняти в якості вхідних параметрів масив, кількість рядків і стовпців, задані користувачем з клавіатури в основному розділі операторів. Так як наша процедура буде впливати на порожній вихідний масив, то його ми повинні передати по посиланню. Кількість рядків і стовпців достатньо передати копіями за значенням.
Procedure InsertMas1 (Var X: MyArray; n, m: integer);
Var
i, j: integer;
Begin
Randomize;
for i:= 1 to n do {пробегая последовательно строки массива}
for j:= 1 to m do {просмотрим каждую ее ячейку текущего столбца}
X [i, j]:= Random(50); {и запишем туда случайное число, которое сформирует компьютер в диапазоне [0..49]}
End; комп'ютер Procedure InsertMas1 (Var X: MyArray; n, m: integer);
Var
i, j: integer;
Begin
Randomize;
for i:= 1 to n do {пробегая последовательно строки массива}
for j:= 1 to m do {просмотрим каждую ее ячейку текущего столбца}
X [i, j]:= Random(50); {и запишем туда случайное число, которое сформирует компьютер в диапазоне [0..49]} End;
Тепер, щоб скористатися цією процедурою, досить викликати її в основному розділі програми, передавши їй параметри.
Розглянемо процедуру виведення елементів масиву на екран. Для того, щоб вивести наш масив на екран у вигляді таблиці, поставимо при переході до нової рядку оператор writeln і застосуємо формат виводу елементів (: 5).
Procedure PrintMas (X: MyArray; n, m: integer);
Var
i, j: integer;
Begin
for i:= 1 to n do {пробегая последовательно строки и столбцы массива}
begin
for j:= 1 to m do
write (X[i, j]:5); {выведем элемент массива на экран, выделив ему 5 знакомест}
writeln; {переход на новую строку}
end;
End;
Завдання. Наберіть програму-шаблон для роботи з двовимірні масивами. Як ви вже знаєте з попередньої теми, вона повинна містити дві процедури введення та процедуру виведення елементів заданого масиву. Основний розділ операторів повинен містити діалог з користувачем і захист програми від введення неприпустимих значень для кількості рядків і стовпців. Збережіть файл у відповідному каталозі на своїй дискеті.
Розгляньте процедуру, вирішальну наступну задачу.
Задача. Дана таблиця дійсних чисел. Порахуйте суму всіх чисел у таблиці.
Procedure Summa (A: MyArray; n, m: integer; Var S: real);
Var
i, j: integer;
Begin
S:= 0;
for i:= 1 to n do
for j:= 1 to m do
S:= S+A [i, j];
End.
Зверніть увагу, що всередині циклу з лічильником i організовано цикл з лічильником j. В результаті сумуються на початку числа 1‑й рядки (i = 1, при j = 1, 2,…, m), потім сумуються числа 2‑й рядки (i = 2, при j = 1, 2,…, m) і т.д.
У даній програмі в тілі одного циклу міститься інший цикл. Такі цикли, як Ви вже знаєте, називаються вкладеними. Причому цикл з лічильником i є зовнішнім, а цикл з лічильником j – внутрішнім. Не забувайте основне правило при написанні вкладених циклів: останній оператор внутрішнього циклу має або передувати, або збігатися з останнім оператором зовнішнього циклу. Вкладені цикли нагадують матрьошок, вкладених одна в іншу.
Список літератури
«Турбо Паскаль 7.1» – Бучко Д.І., Харків: «Харківська політехніка», 2005.
«Інформатика, алгоритмічні мови» – Олійник Н.В., Сидоренко Ю.В., Львів: «Замкова гора», 2004.
Web, Internet.
Другие работы по теме:
Генетичний код та його властивості 2
Назва реферату : Генетичний код та його властивості Розділ : Біологія Генетичний код та його властивості Генетичний код – це система триплетів нуклеотидів, які визначають амінокислотну послідовність поліпептидного ланцюга.
Розрахунок двошарнірної арки методом сил
Методика розрахунку двошарнірної арки із постійними жорсткостями. Кінематичний аналіз і визначення кількості невідомих методу сил. Вибір основної системи методу сил, запис канонічного рівняння. Побудова і перевірка епюр внутрішніх зусиль для заданої арки.
Власні значення і власні вектори матриці
Міністерство освіти і науки України Криворізький державний педагогічний університет Кафедра математики Курсова робота з математики Власні значення і власні вектори матриці
Знаходження оберненої матриці за формулою
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ЗАКАРПАТСЬКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ ФАКУЛЬТЕТ ІНФОРМАТИКИ Кафедра програмного забезпечення автоматизованих систем та фізико-математичних дисциплін
Теоремы Перрона-Фробеніуса та Маркова
Теоремы Перрона-Фробеніуса та Маркова В роботі дано елементарне доведення відомих теорем Перрона-Фробеніуса та Маркова для матриць другого порядку. Робота має певну методичну цінність і може бути використана на заняттях шкільних гурків та факультативів
Тривимірні перетворення
Наочне представлення про об'єкт та його зображення в тривимірному просторі. Порядок тривимірний зміни масштабу фігури, її зсуву та обертання. Особливості відображення елементів у просторі, просторовий перенос та тривимірне обертання навколо довільної осі.
Системи лінійних рівнянь
Визначення системи лінійних рівнянь та її розв’язання. Поняття рангу матриці, правило Крамера та види перетворень з матрицею. Способи знайдення оберненої матриці А–1 до невиродженої матриці А. Контрольні запитання та приклади розв’язування задач.
Паралельні проекції
Елементарний математичний апарат плоских геометричних проекцій. Ортографічне косокутне проектування на площину, застосування матриць. Розгляд проекцій картинної площини в лівосторонній системі координат спостерігача, погодження з екраном дисплея.
Представлення і перетворення фігур
Розгляд представлення і перетворення точок та прямих ліній. Правило здійснення обертання та відображення фігури на площині. Рівномірна і нерівномірна зміна масштабів. Двовимірний зсув і однорідні координати. Побудування матриці перетворення векторів.
Представлення і перетворення фігур
ПРЕДСТАВЛЕННЯ І ПЕРЕТВОРЕННЯ ТОЧОК Представлення точок здійснюється наступним чином: На площині У просторі Перетворення точок. Розглянемо результати матричного множення
Українські жартівливі та танцювальні пісні
Реферат на тему: Українські жартівливі та танцювальні пісні ЖАРТІВЛИВІ ПІСНІ Жартівливі й сатиричні пісні об'єднуються в одну групу близькістю характеру, загальним настроєм: вони жваві, веселі, іноді ущипливі, а то й сатиричні. Люди весело кепкують з надмірно боязких хлопців, які навіть не насмілюються розмовляти з дівчиною {«Да куди їдеш, Явтуше?», «Дівка в сінях стояла») (34):
Давньогрецькі математики
Математика виникла і розвивалася з практичних потреб людини. Наприклад, стародавні єгипетські вчені цікавилися насамперед тим, як застосовувати математичні знання у землевпорядкуванні, спорудженні храмів для богів, палаців і пірамід для фараонів, визначних воєначальників і жерців. На основі практики єгиптяни сформували правила обчислення площ найпростіших плоских фігур, об'ємів куба, прямокутного паралелепіпеда, піраміди з квадратною основою, зокрема зрізаної.
Синтез системи оперативної обробки мінімальної конфігурації
Еverest як програма для перегляду інформації про апаратні і програмні конфігурації комп'ютера, її структура та принцип роботи, значення та функціональні особливості. Обчислення середнього часу відповіді та вартості СОО. Методи діагностики Linux.
Теорія множин. Операції над множинами та їх властивості
Теоретичні основи теорії множин. Основні операції над множинами та їх властивості. Складання програми для обчислення результуючої множини за вихідним і спрощеним виразами. Виконання операцій над множинами, застосування їх властивостей, спрощення виразів.
Способи зберігання графів. Пошук в графі
Програмна робота з графами: операції їх зчитування, збереження та обробки у вигляді перевірки на симетричність та орієнтованість. Основи пошуку в графі в різних напрямках. Розбиття множини вершин на класи еквівалентності за відношенням зв'язності графу.
Господарські операції
Специфіка визначення терміну "господарська операція" та їх види. Характеристика принципу безперервності. Зміни в балансі, зумовлені господарськими операціями та приклади їх відображення в обліку. Визначення підсумку балансу на підставах наведених даних.
Плодоруйнівні операції
Р Е Ф Е Р А Т на тему “Продоруйнівні операції Плодоруйнівні операції – це комплекс оперативних прийомів, спрямованих на зменшення об’єму та розмірів плоду, що дає змогу видалити його через пологові шляхи матері. Залежно від передлежачої частини та положення плоду розрізняють: краніотомію – при запущених поперечних положеннях плоду і декотітацію – при запущених поперечних положеннях плоду відділення голівки плоду від тулуба; евентерацію – видалення внутрішніх органів; спондилотомію – розтин хребта і клейдотомію – розтин однієї або обох ключиць для зменшення обсягу плечового поясу.
Арифметично-логічні операції
АРИФМЕТИЧНО-ЛОГІЧНІ ОПЕРАЦІІ ADD R (A) (A)+(R) До вмісту акумулятора додати вміст регістра R A,B,C,D,E,H,L,M при цьому результат занести до акумулятора.
Валютні операції Котирування валют
На міжбанківському ринку або на валютній біржі операції з купівлі-продажу іноземної валюти здійснюються шляхом котирування валют. Котирування - це офіційно встановлений центральним банком ринковий курс (ціни) національной валюти до відповідних іноземних валют на день проведення операцій. Інакше кажучи, котирування валют - це встановлення ринкового курсу дня.
Журнал 1
Після всіх цих операцій необхідно заповнити , тобто взаємозв’язок регістрів журнально-ордерної форми обліку має такий вигляд: Журнали-сфери є основними регістрами обліку. Допоміжні відомості використовуються, якщо є потреба в аналітичних показниках, яких немає у самих журналах, а також недостатньо деталізовані або мають великий обсяг однорідної операції, що попередньо накопичуються у допоміжних відомостях.
Продоруйнівні операції краніотомія ембріотомія клейдотомія
Р Е Ф Е Р А Т на тему “Продоруйнівні операції (краніотомія, ембріотомія, клейдотомія)” Плодоруйнівні операції застосовують на мертвому плоді. При живому плоді їх виконують у рідкісних випадках, коли життя жінки в небезпеці і немає умов для розродження Іншим способом.
Табличний редактор Microsoft Excel
Теоретичні відомості 1.1. Табличний редактор Microsoft Excel Microsoft Excel – це складова частина пакето-прикладних програм Microsoft Office. Microsoft Excel – призначений для створення електронних таблиць і найбільшою перевагою є можливість досліджувати, аналізувати дані і виконувати обчислення.
Структура і склад по САПР
РЕФЕРАТ на тему: СТРУКТУРА І СКЛАД ПО САПР СТРУКТУРА І СКЛАД ПО САПР Програмне забезпечення САПР поділяється на загальносистемне, базове і прикладне.
Множини 3
Практичні заняття Множини Paskal дозволяє оперувати трьома множинами, як трьома типами даних. Для визначення типу множина використовується вираз:
Астрологія і медицина
Міністерство охорони здоровья України Житомирське фармацевтичне училище ім.Г.С.Протасевича фармакологія Реферат: Астрологія і медицина. 2001р.
Підготовка рук хірурга та обробка операційного поля
ПІДГОТОВКА РУК ХІРУРГА ТА ОБРОБКА ОПЕРАЦІЙНОГО ПОЛЯ Руки хірурга найбільш часто і най-раніше контактують з раною. Тому їх підготовці до операції приділяється велика увага. Існує безліч способів обробки рук — механічні, хімічні та змішані. Класичними, які зараз у їх оригінальному вигляді не використовуються, але елементи яких присутні майже в усіх сучасних способах, є спосіб Фюрбрінгера і його модифікація — спосіб Альфельда.
Цілі та дійсні типи мови Турбо Паскаль
Реферат на тему: Цілі та дійсні типи мови Турбо Паскаль Базовий тип цілих integer утворено цілими, які займають 2 байти в знаковому поданні. Тепер уже зрозуміло, чому їх діапазон від -32768 до 32767. Крім цього типу, в мові Турбо Паскаль є ще кілька типів для подання цілих. Укажемо їх імена, спосіб (знаковий/беззнаковий) та розміри подання в байтах, а також їх діапазони.