Контакти

Варіанти завдань з дисципліни практикум на ЕОМ. Практикум з розв'язання задач на ЕОМ: Навчально-методичний посібник. Списки суміжних вершин графа

Практикум на ЕОМ, Методи рішення лінійних систем і знаходження власних значень, Частина 1, Богачев К.Ю., 1998.

Цей посібник містить опису алгоритмів, пропонованих до реалізації на ЕОМ студентам механіко-математичного факультету МДУ на заняттях але практикум на ЕОМ ". Для всіх алгоритмів наводиться необхідне теоретичне обгрунтування, відповідні розрахункові співвідношення та рекомендації але їх практичного здійснення на ЕОМ (організація процесу обчислень. Зберігання даних і результатів в пам'яті ЕОМ і т.п.).

МЕТОДИ РІШЕННЯ ЛІНІЙНИХ СИСТЕМ, ЗАСНОВАНІ НА УНІТАРНИХ перетворення матриці.
Кожен з викладених вище методів вирішення лінійних систем може бути представлений у вигляді послідовності елементарних перетворень матриці (див., наприклад, таке уявлення в §4 для методу Гаусса). Кожне з перетворень задається деякою матрицею Р, так що застосування цього пре освіти еквівалентно множенню (зліва) вихідної матриці А на матрицю Р. Таким чином, кожен крок наведених вище алгоритмів є перехід від матриці А до матриці А \u003d РА. Про число обумовленості цієї нової матриці А \u003d РА можна лише стверджувати, що до (РА)< к(Р)к(А). Поэтому может случиться так. что в процессе проведения преобразований число обусловленности матрицы возрастает и на каждом шаге метод будет вносить все большую вычислительную погрешность. В результате может оказаться, что исходная матрица имела приемлемое число обусловленности, однако после нескольких шагов алгоритма она уже имеет слишком большое число обусловленности, так что последующие шаги алгоритма приведут к появлению очень большой вычислительной погрешности.

Виникає ідея підбирати матриці перетворення Р так. щоб число обумовленості матриці в процесі перетворень не зростала. Лемма 1.5 вказує нам приклад таких матриць: якщо матриця перетворення Р унітарна (ортогональна в матеріальному випадку), то щодо спектральної норми до (РА) \u003d до (А).

Викладені нижче метод обертань і метод відображень є алгоритми підбору унітарних матриць перетворень Р, таких, що в результаті всіх цих перетворень вихідна матриця А приводиться до трикутного вигляду. Система з трикутною матрицею потім вирішується, наприклад, зворотним ходом методу Гауса. Незважаючи на те. що трудомісткість цих методів більше, ніж методу Гаусса (відповідно в 3 і 2 рази), ці методи набули широкого поширення в обчислювальній практиці завдяки своїй стійкості до накопичення обчислювальної похибки.


безкоштовно скачати електронну книгу в зручному форматі, дивитися і читати:
Завантажити книгу Практикум на ЕОМ, Методи рішення лінійних систем і знаходження власних значень, Частина 1, Богачев К.Ю., 1998 - fileskachat.com, швидке і безкоштовне скачування.

  • Практикум на ЕОМ, Методи рішення лінійних систем і знаходження власних значень, Частина 2, Богачев К.Ю., 1998.
  • Математика і Конструювання, 1 клас, Навчальний посібник для загальноосвітніх організацій, Волкова С.І., 2016
  • Математика, Усні вправи, 1 клас, Навчальний посібник для загальноосвітніх організацій, Волкова С.І., 2016

Наступні підручники і книги.

оголошення

Контест 1: Python (в anytask)

10 вереснязаняття 2

Бібліотека numpy. Векторизация обчислень.

Важливі статті документації numpy:

Контест 2: Numpy (в anytask)

17 вереснязаняття 3

Організація коду в Python.

Функції, модулі, класи.

Контест 3: Класи (в anytask)

24 вереснязаняття 4

Метричні методи класифікації.

Обговорення першого практичного завдання.

Введення в обробку зображень.

Візуалізація в Python.

01 жовтнязаняття 5

Підготовка текстових звітів. Система TeX.

8 жовтнязаняття 6

Обробка винятків. Мененджера контексту. Тестування.

Підготовка коротких виступів.

15 жовтнязаняття 7

Ітератори і генератори.

Вимоги до звіту по практичних завдань

Звіт повинен бути самодостатнім документом в форматі PDF, Підготовленим в системі LATEX. Студенти, добре виконали звіти по минулим завданням, отримують можливість здавати звіти в форматі HTML або PDF, підготовлені за допомогою jupyter notebook.

Звіт повинен давати перевіряючому відповіді на наступні питання:

  • До якого курсу відноситься завдання?
  • Яке завдання виконано?
  • Ким виконано завдання?
  • У чому полягала завдання?
  • Що було зроблено? Що не було зроблено?
  • Дано чи правильні відповіді на всі теоретичні питання завдання?
  • Проведено всі необхідні експерименти? Отримано чи осмислені ВИСНОВКИ?
  • Виконано творча частина завдання?
  • Користувався чи студент чиєюсь допомогою? Якщо так, то в якому обсязі?
  • Який літературою користувався студент?

Деякі елементи хорошого звіту:

  • Обсяг звіту: 5--20 сторінок;
  • Текст звіту не повторює повної формулювання завдання;
  • Структура звіту відповідає пунктам завдання;
  • Використовуються векторні шрифти;
  • Графіки оформлені належним чином;
  • Шкала для графіків обрана правильно;
  • На різних графіках результати для однакових методів відображаються одним і тим же кольором;
  • Між розташуванням графіків і місцями їх згадки в тексті щодо невелику відстань (На тій же або на сусідній сторінці);
  • На сторінках не повинно бути багато пустого місця;
  • У більшості випадків графіки / таблиці / псевдокоду алгоритмів не повинні займати більшу частину однієї сторінки звіту;
  • Всі числа в тексті / таблицях вказані з необхідним числом значущих цифр;
  • В більшості випадків в звіті не повинно бути ніякого коду;
  • Для всіх експериментів описаний обраний дизайн експериментів, а також зроблені висновки з отриманих результатів;

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

БАШКИРСЬКА державний університет

Практикум на ЕОМ

Завдання для С ++

Частина 1

укладач:

Риков В.І. Практикум на ЕОМ. Завдання для З ++ .. Частина 1. / Видання Башкирського ун-ту. - Уфа 2006. - №№ c.

Робота присвячена методології програмування на мові С ++.

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

Методика програмування і кодування програм для кожного типу завдань викладена у вигляді закінчених прикладів.

Робота використовується при виконанні лабораторних і практичних робіт з дисципліни «Практикум на ЕОМ».

1 Введення 5

1.1 Перша програма 5

2 Довідка по C ++ 5

2.1 Основні типи даних 5

3 Прості типи даних 6

3.1 Модельна задача Оператори введення, циклу. Вкладення структур 6

3.2 Структура псевдокоду 7

3.3 Реалізація керуючих структур 7

3.4 Модельна задача Цілі числа. Оператори for, while, if 8

4 Масиви 10

4.1 Модельна задача Завдання масивів. Машинний нуль 10

4.2 Модельна задача Вкладення керуючих структур 18

5 Процедури і функції 20

5.1 Модельна задача Приклад функції 20

5.2 Перевантаження функції 21

5.3 Передача параметрів в функцію 21

5.4 Передача адреси масиву в функцію 22

6 Вектори і матриці 24

6.1 Модельна задача багатовимірні масиви, введення з файлу 24

7 Обробка символьної інформації 29

7.1 Рішення Знайти найдовше симетричне слово заданого пропозиції 31

8 Рекурсія 33

8.1 Рішення обчислення факторіала цілого позитивного числа 33

8.2 Рішення Рекурсивні функції. Робота з рядками. 36

8.3 Рішення Побудувати синтаксичний аналізатор для поняття дужки. 38

9 Форма звіту з лабораторної роботи 41

10 Варіанти для лабораторних робіт 42

1. Введення

Початкові відомості з програмування викладені в документі «Середовище Microsoft Visual C ++ і налагодження програм».

1.1Первая програма

Програма «2 + 3». У програмі після запрошення вводяться два числа. Для введення кожного числа потрібно набрати його на клавіатурі і натиснути клавішу Enter.

#include "iostream.h"

char * Rus (const char * text);

int main (int argc, char * argv)

// coutreturn 0;

char * Rus (const char * text)

дане навчальний посібник містить комплект лабораторних робіт з дисципліни "Практикум з розв'язання задач на ЕОМ". Практикум з розв'язання задач на ЕОМ вивчається в дев'ятому та десятому семестрах і є складовою частиною безперервної комп'ютерної підготовки студентів. З одного боку, він спирається на знання, отримані при вивченні класичних математичних дисциплін (алгебра, геометрія, математичний аналіз, теорія ймовірностей), а з іншого боку, на знання основ інформатики і обчислювальної техніки, придбані в процесі навчання дисциплін: інформатика, програмування, програмне забезпечення ЕОМ. Основна мета практикуму - сформувати у студентів практичних умінь та навичок у вирішенні прикладних задач на персональних комп'ютерах. У посібнику велика увага приділяється розбору прикладів рішення задач. Додаються питання і завдання для самостійного рішення. Для самоперевірки в посібнику наведено два варіанти типових контрольних робіт в рамках досліджуваного матеріалу.

Наведений нижче текст отриманий шляхом автоматичного вилучення з оригінального PDF-документа і призначений для попереднього перегляду.
Зображення (картинки, формули, графіки) відсутні.

Міністерство освіти і науки РФ Федеральне агентство з освіти РФ Московський державний обласної університет Єлецький державний університет імені І. А. Буніна тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В. Москва - Єлець 2005 УДК Друкується за рішенням редакціон- 002 но-видавничої ради Елец- ББК кого державного уні 22.18 версітета ім. І.А. Буніна прото Т19 кол № 5 від 30 листопада 2005 року Рецензенти: доктор фізико-математічекіх наук, професор кафедри алгебри і геометрії Меренков Ю.Н. (ЄГУ ім. І.А. Буніна); доктор фізико-математичних наук, професор, провідний співробітник Обчислювального центру ім. А.А. Дородніцина - РАН Дікусар В.В. (Москва); кандидат фізико-математичних наук, старший викладач ка Федри рівнянь в приватних похідних і теорії ймовірностей Малю- твань О.П. (ВДУ, Воронеж) тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В. Т19 Практикум з розв'язання задач на ЕОМ: Навчально-методичне посо- біє. - Єлець: ЄГУ ім. І.А. Буніна, 2005. - 194 с. ISВN 5-7017-0825-Х При вивченні дисципліни «Практикум з розв'язання задач на ЕОМ» студенти стикаються з труднощами, пов'язаними з відсутністю необ Дімою літератури з окремих тем в бібліотеці. Даний навчальний по- посібник містить комплект лабораторних робіт з дисципліни. Велика увага приділяється розбору прикладів рішення задач. Додаються по-тання і завдання для самостійного рішення. Для самоперевірки в посо- біі наведені два варіанти типових контрольних робіт в рамках ізучае- мого матеріалу. Дане навчально-методичний посібник адресований студентам денного та заочного відділень фізико-математичних факультетів університетів. УДК 002 ISВN 5-7017-0825-Х ББК 22.18 © ЄГУ ім. И.А.Бунина, 2005 © тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В., 2005 © МГОУ, 2005 © видавництво МГОУ, 2005 Практикум з розв'язання задач на ЕОМ Зміст ВСТУП 5 ЧАСТИНА I Програмування на мові високого рівня 9 семестр Мова програмування Pascal. теоретичний матеріал 7 1. Арифметика дійсних чисел Вичіс- 2 години 25 лення за формулами 2. Розгалуження 2 годин 27 3. Найпростіша целочисленная арифметика 2 години 31 4. Найпростіші цикли 2 години 35 5. Найпростіші графічні побудови 2 години 39 6. Покроковий введення даних і виведення результатом 2 години 42 7. Сполучення циклу і розвилки 2 годині 46 8. Обробка послідовностей символів 2 годині 51 9. Обчислення із зберіганням послідовно- 2 годині 56 стей значень 10. Вкладені цикли 2 годині 59 11. Вкладені цикли в матричних задачах 2 години 62 12. Використання процедур 2 години 66 13. Файли 4 години 69 14. Обчислення із зберіганням послідовно- 4 години 75 стей, число членів яких залежить від результат- них даних 15. Контрольна робота №1 2 години 79 16. Цілі числа 4 години 81 17. Системи числення 4 години 88 18. Геометрія 6 \u200b\u200bгодин 96 19. Сортування масивів і файлів 4 години 99 10 семестр 20. Багаточлени 2 години 101 21. Перетворення і побудова матриць 4 години 103 22. Матрична алгебра 4 години 105 23. Чисельні методи 10 годин 110 24. Випадкові числа 4 годин 124 25. Обчислення з деякою точністю 4 години 127 26. Графіка 2 години 130 27. Графіка і рух 6 годин 137 28. ІГРИ 2 години 144 ЧАСТИНА II Математичні обчислення в MathCAD Математичні обчислення в MathCAD. Теоретичний матеріал. 146 29. Введення в MathCAD 4 години 162 3 тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В. 30. Контрольна робота №2 2 години 164 31. MathCAD Завдання лінійної алгебри 10 годин 166 32. MathCAD Завдання математичного аналізу 10 годин 167 33. MathCAD Звичайні диференціальні 10 годин 168 рівняння 34. MathCAD Завдання математичної статі- 4 години 170 стіки ВИСНОВОК 171 БІБЛІОГРАФІЯ 172 ДОДАТОК Робоча програма з дисципліни 174 «Практикум з розв'язання задач на ЕОМ» ВСТУП Практикум з розв'язання задач на ЕОМ вивчається в дев'ятому та десятому семестрах і є складовою частиною безперервної комп'ютерної під- готовки студентів. З одного боку, він спирається на знання, отримані при вивченні класичних математичних дисциплін (алгебра, геомет- рія, математичний аналіз, теорія ймовірностей), а з іншого боку, на знання основ інформатики і обчислювальної техніки, придбані в процесі навчання дисциплін: інформатика, програмування, про- програмним забезпечення ЕОМ. Основна мета практикуму - сформувати у студентів практичних умінь та навичок у вирішенні прикладних задач на персональних компью- терах. Перед студентами ставляться наступні завдання: закріпити і поглибити навички програмування для ПЕОМ (мова програмування Pascal); поглибити і систематизувати уявлення про застосування нових інформаційні технології в додатках математики; отримати досвід побудови найпростіших математичних моделей і їх реалізації на ЕОМ (обчислювальний експеримент); навчитися вирішувати на ПЕОМ класичні задачі геометрії, алгебри, матричної алгебри, а також сортування масивів і файлів; отримати навички рішення на ПЕОМ задач, що відносяться до специаль- ним розділах математики та інформатики: чисельні методи; слу чайні числа; графіка і рух; комп'ютерні ігри. Дане навчально-методичний посібник складається з двох частин: перша частина являє собою набір з двадцяти семи лабораторних робіт, орієнтованих на програмування на мовах високого рівня, вто- раю частина розрахована на обчислення в математичних пакетах і складається з п'яти лабоаторних робіт. Всього посібник містить тридцять дві лабора- торних роботи, кожна з яких включає приклади вирішення завдань і завдання для самостійного рішення. 4 Практикум з розв'язання задач на ЕОМ Для організації самоперевірки в посібник включені дві контрольні роботи, розраховані на два варіанти кожна. Обидві частини містять теоретичний матеріал, що відповідає їх те- матики. Навчально-методичний посібник засноване на матеріалі, що вивчається сту- дентами в рамках дисципліни: «Практикум з розв'язання задач на ЕОМ» протягом ряду років. При складанні завдань використовувався збірник задач наступних авто- рів: С.А. Абрамов, Г.Г. Гнездилова, Е.Н. Капустіна, М.І. Селюн. Автори навчально-методичного посібника висловлюють подяку пре- подавача і ассітсентам кафедри обчислювальної математики і ин- форматікі ЄГУ імені І.А. Буніна за допомогу в постановці лабораторних робіт. ЧАСТИНА I Програмування на мові високого рівня Теоретичний матеріал: Мова програмування Pascal Мова Паскаль створений Н. Віртом в 1971 році. Він відіграє особливу роль і в практичному програмуванні та в його вивченні. Існує багато вер- сій мови Паскаль. Будь-яка програма на Паскалі є текстовим фай- лом з власним ім'ям і расшіреніем.pas. Вона має вигляд послідовно ності символів латинських і російських букв, арабських цифр, знаків опе- рацій, дужок, розділових знаків і деяких додаткових символів. Схематично програма представляється у вигляді послідовності вось- ми розділів: 1. заголовок програми (починається зі слова program); 2. опис зовнішніх модулів, процедур і функцій; 3. опис міток; 4. опис констант (починається зі слова const); 5. опис типів змінних (починається зі слова var); 6. опис змінних; 7. опис функцій і процедур; 8. розділ операторів (починається зі слова begin). Чи не в кожній програмі обов'язково присутні всі розділи. Кожному дий розділ починається зі службового слова, призначення якого зафік- сіровано так, що його не можна вживати для інших цілей. Програма за- канчівалісь службовим словом end, після якого ставиться крапка. Опи сания величин і оператори відокремлюються один від одного крапкою з комою. Для позначення величин використовуються імена. Вони складаються з латинських букв і цифр, причому першим символом повинна бути буква. Ім'я програм- ми вибирається автором і складається за тим же правилом. Постійні величини бувають числовими або символьними. Значення символьних ве- 5 тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В. личин полягають в апострофи. Постійні величини описуються в розділі констант за схемою: const<имя>=<константа>. Дані, обробляти ваемие програмою, можуть бути різних типів. Тип визначає область допустимих значень, а також оператори і функції, застосовні до вели- чині. У Паскалі є кілька вбудованих простих типів зі стандартному іменами. Скалярний тип - тип, значення якого можна перерахувати в некото- ром списку. Для них визначено порядкова функція ord (x) - номер зна чення х в списку (для цілочисельного х ord (x) \u003d x), pred (x) - значення в списку, що передує х, succ (x) - значення в списку, наступне за х. Упорядкований тип - тип, значення якого впорядковані в звичайному сенсі. До них застосовні операції відносини<,>,<=,>=,<>. Для логіче- ських величин виконується нерівність false :<тип>. Імена в списку розділяються запя- тієї. Над цілими величинами (тип integer) визначені операції: *, div (розподіл без остачі), mod (розподіл із залишком), +, - (наведені в порядку стар- шинства). Над речовими величинами (тип real) визначено: *, +, -, /, а також функції при матеріальному або цілому аргументі: abs (x), sqr (x), sin (x), cos (x), arctan (x) , ln (x), exp (x), sqrt (x), int (x), random. Вони дають веще- жавного результат. Над логічними величинами (тип string) визначені операції: not - заперечення, and - кон'юнкція, or - диз'юнкція. Логічна функція odd (x) приймає значення true, якщо целочисленное х є непарних, false - якщо парних. Безліч всіх символів утворюють символьні величини (тип char) які є впорядкованими. Вирази - це конструкції, які задають правила обчислення значень змінних. Вони будуються з змінних, констант, функцій за допомогою операцій і дужок. Основні конструкції. Дотримання - реалізовується за допомогою складеного оператора: begin<последовательность операторов> end. Розвилка - реалізовується за допомогою умовного оператора і оператора варіанта (вибору). Структура умовного оператора: if<логическое выражение> then<оператор 1> else<оператор 2> Оператор варіанту має форму: 6 Практикум з розв'язання задач на ЕОМ case<выражение> of<список констант 1>:<оператор 1>; <список констант 2>:<оператор 2>; ……………… <список констант N>:< оператор N > end. Для реалізації циклів є три оператора. Якщо число повторень з- Вестн заздалегідь, то використовують цикл з параметром: 1) for<параметр>:= <выражение 1> to<выражение 2> do<оператор>, 2) for<параметр>:= <выражение 1> downto<выражение 2> do<оператор>; в інших випадках використовують цикл з передумовою: while<логическое выражение> do<оператор>, (Дію: обчислюється значення логічного виразу, Ес- чи воно істинне, то виконується оператор, після чого знову обчислюється значення логічного виразу, в іншому випадку дія заканчіва- ється); або цикл з умовою поста: repeat<последовательность операторов> until<логическое выражение>, (Дію: виконується послідовність операторів, далі обчислюється значення логічного виразу, ес- чи воно істинне, то дія закінчується, в іншому випадку знову виконується послідовність операторів). Масиви. Складові типи величин утворюються з інших типів, при цьому істотну роль грає метод освіти або структура состав- ного типу. Часто використовується складовою тип - масив. Масив - це по- отже, що складається з фіксованого числа однотипних еле ментів. Всі елементи масиву мають загальне ім'я і розрізняються індексу- ми. Індекси можна обчислювати. При описі масивів використовуються слова: array і of. В описі масиву вказується тип його елементів і ти- пи індексів: type<имя массива>\u003d Array [<список типов индексов>] of<тип элементов>. Число індексів називається розмірністю масиву. Про- рощення до елементу масиву здійснюється за допомогою завдання імені змінної, за яким слід укладений у квадратні дужки список індексів елемента. Приклад. Розглянемо задачу упорядкування членів числової последова- ності по будь-якою ознакою (по зростанню). Використовуємо метод, що носить назву «бульбашка». Для цього будемо розглядати пари еле ментів послідовно зліва направо і переставляти елементи в парі, якщо вони стоять неправильно. На початку дамо деякої логічної змінної значення p: \u003d true, якщо при перегляді пар була хоча б одна пе- рестановка змінимо значення логічної змінної. Цикл заканчівает- ся, якщо після чергового перегляду виконується умова: p \u003d true. 7 тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В. Програма: Program bubble; const a: array of integer \u003d (19,8,17,6,15,4,13,2,11,0); var b, I: integer; p: Boolean; begin clrscr; for I: \u003d 1 to 10 do while (a [I]: 3); writeln; writeln; repeat p: \u003d true; for I: \u003d 10 downto 2 do if a [I] (<список описаний формальных параметров>). Опис параметрів має вигляд<список имен>: <тип> або var<список имен>: <тип>. У першому випадку говорять про параметри-значеннях, у другому - про параметрах-змінних. У найпростішому випадку заголовок процедури з- тримає тільки її ім'я. Оператор виклику процедури має вигляд:<имя процедуры> (<список выражений>). Зазначені вираження називають фактичними параметрами. Їх список повинен точно відповідати списку описів формальних параметрів процедури. Під час виклику процедури кожному параметру-значенню присвоюється значення соответ- ствующего фактичного параметра, і тому їх зазвичай використовують для передачі вхідних даних. Змінні-параметри слід використовувати для представлення результатів процедури. 8 Практикум з розв'язання задач на ЕОМ Функція - це підпрограма, яка визначає єдине скалярний, речовий або строкове значення. Відмінності функції від процедури: заголовок функції починається зі службового слова function і за- канчівалісь зазначенням типу значення функції; розділ операторів функції повинен містити хоча б один опера- тор привласнення імені функції; звернення до функції - НЕ оператор, а вираз виду<имя функции> (<список фактических параметров>). Функції та процедури можуть використовувати своє ім'я у власному опи саніі, т. Е. Можуть бути рекурсивними. Робота з файлами. Файл (послідовність) - це одна з найбільш фундаментальних структур даних. Програмна організація компьюте- рів, їх зв'язок із зовнішніми пристроями засновані на файлової структурі. Файли дозволяють вирішити дві проблеми: 1) можливість формування і збереження значень для подальші- ного використання іншими програмами (наприклад, в програмах багаторазової обробки інформаційних систем, таких як платеж- ні відомості, різні АСУ, бази даних, необхідність длітельно- го зберігання інформації очевидна ); 2) взаємодія програм з зовнішніми пристроями введення-виведення: дисплеєм, принтером, АСП і т.п. У Паскалі ці проблеми знімаються за допомогою структурованих дан них файлового типу. Файловий тип даних в програмі задається наступним чином: type<имя файлового типа>\u003d File of<тип компонентов> В якості типу компонентів файлу дозволяється використовувати будь-який тип даних, крім файлового. Наприклад: type intfile \u003d file of integer; refile \u003d file of real; chfile \u003d file of char; ran \u003d 1..10; st \u003d set of ran; vector \u003d array of real; compl \u003d record; re, im: integer; end; setfile \u003d file of st; vecfile \u003d file of vector; compfile \u003d file of compl; Опис файлової змінної задається звичайним способом в розділі 9 тарів І.М., Терехов Ю.П., Масіна О.Н., Скоков А.В. описів. Наприклад: Var f: intfile; або var f: file of integer. Файлова змінна є буфером між Паскаль-програмою і зовнішнім пристроєм і повинна бути логічно з ним пов'язана. Зв'язок здійсню- ствляется оператором мови Паскаль: assign (<имя файловой переменной>,"<имя устройства>") Як правило, файли для зберігання даних пов'язані з пристроєм зовнішньої пам'яті на магнітних носіях (дисковод) і звуться зовнішні файли. Якщо, наприклад, файл з ім'ям primer.dat логічно пов'язаний з дісково- будинок А :, то всі дані , що поміщаються в файл, будуть зберігатися на цьому дис- ковом накопичувачі, а установка «вікна» між програмою і файлом буде визначатися через файлову змінну f оператором assign (f, "primer.dat") Якщо зовнішнім пристроєм є принтер, то зв'язок здійснюється оператором assign (f, "1st:"). Тут 1st - логічне ім'я друкувального устрой- ства. Нижче Привітне логічні імена зовнішніх пристроїв введення-виведення: con - консоль; trm - термінал; kbd - клавіатура; 1st - принтер; aux - бу- фер мережі; usr - драйвер користувача. Після здійснення зв'язку файлова змінна f ототожнюється з відповідним файлом. для роботи з файлом його необхідно відкрити, а після закінчення роботи - закрити. Файл відкривається для читання операто- ром reset (f), для запису - операт криком rewrite (f). Читання і запис даних здійснюється відомими командами read / write, тільки на початку списку поміщається ім'я файлової змінної: read (f,<список ввода>); readln (f,<список ввода>); write (f,<список вывода>); writeln (f,<список вывода>). Закриття файлу здійснюється командою close (f). Умовно файл можна представити у вигляді стрічки, у якій є початок, а кінець нe фіксується. Компоненти файлу записуються на цю стрічку послідовно, дpyr за одним: ... M. F0 F1 F2 F3 K. ^ T.M. Тут т.м. - поточний маркер, який вказує на робочу позицію (вікно) файлу; м.к. (Маркер кінця файлу) - спеціальний код, автоматично фор міруемий слідом за останнім елементом файлу. Такого роду файли називаються файлами послідовного доступу. У початковій версії Паскаля файлів прямого доступу, для яких можна безпосередньо «дістати» будь-яку компоненту, не передбачено; проте, в Турбо-Паскалі елементи прямого доступу є (наприклад, через функ- цію seek). Команда rewrite (f) - відкрити файл для запису - встановлює файл в початковий стан режиму запису; поточний маркер встановлюється на 10



Сподобалася стаття? поділіться їй