if odd(i) then writeln(g,s);

End;

Close(g);

Close(f);

writeln('У файл solution.txt записано ',i div 2,' рядків');

End.

5) Тест:

Вхідний файл

Program p10;

var f,g:text;

s,file_name:string;

i:integer;

Begin

writeln('введіть ім'я файлу');

Readln(file_name);

assign(f,file_name');

Reset(f);

assign(g,'solution.txt');

Rewrite(g);

i:=0;

While not EOF(f) do

Begin

i:=i+1;

Readln(f,s);

If odd(i) then writeln(g,s);

End;

Close(g);

Close(f);

writeln('У файл solution.txt записано ',i div 2,' рядків');

End.

 

Вихідний файл

Program p10;

s,file_name:string;

Begin

Readln(file_name);

Reset(f);

Rewrite(g);

While not EOF(f) do

i:=i+1;

If odd(i) then writeln(g,s);

Close(g);

writeln('У файл solution.txt записано ',i div 2,' рядків');

Варіанти завдань

 

1. Дописати до компонентів файлу Product.dat (шифр продукції, кількість одиниць) назву продукції з файла-довідника Asort.dat (шифр продукції, назва продукції).

2. Кожний цех заводу працює в три зміни. Створити підсумковий файл Rezult (номер цеху, загальна кількість робітників), якщо інформація про кількість робітників кожної зміни цеху зберігається у файлі Data (номер цеху, номер зміни, кількість робітників).

3. Дано символьні файли f і g. Записати у файл h у зворотному порядку спочатку парні компоненти файлу f, потім непарні компоненти файлу g.

4. У текстовому файлі знайти символ, що зустрічається найчастіше.

5. З файлу f, де знаходяться цілі числа переписати у файл g ті, що є більшими за середнє геометричне значення всіх модулів елементів вхідного файлу.

6. У файлі Data (номер накладної, код товару, кількість, вартість одиниці товару) відсортувати всі записи за номером накладної.

7. У файлах f та g зберігаються по одній цифрі, записаній англійською мовою. У файл h записати всі двозначні числа, що складаються з цих цифр.

8. З файлу Doc.dat (номер накладної, код товару, кількість, вартість одиниці товару) сформувати файл Code.dat, підсумувавши загальну кількість та загальну вартість товарів кожного коду.

9. Створити файл g, що містить текст файлу f, у якому кожна цифра повторена стільки разів, якому числу вона відповідає.

10. З файлу f переписати текст у файл g, зробивши у ньому всі рядки фіксованої довжини d, вирівнюючи їх за шириною.

11. Відомий файл f, компоненти якого є цілими числами. Одержати у файлі g усі компоненти файлу f, що є точними квадратами.

12. У текстовому файлі зберігається програма, записана на мові Turbo Pascal. Обчислити та дописати у кінець цього файлу кількість операторів присвоєння, використаних у програмі.

13. Компонентами файлів f та g є цілі числа. Не використовуючи допоміжних файлів обміняти місцями вміст цих файлів.

14. Скласти програму шифрування російськомовного текстового файлу, використовуючи шифр Цезаря з фіксованим зміщенням Z букв у алфавіті.

15. З текстового файлу f переписати весь вміст у файл g таким чином, щоб порядок рядків і символів у рядках був зворотним.

16. У текстовому файлі f замінити кожну цифру на наступну по порядку цифру (0®1®2®3®4®5®6®7®8®9®0).

17. Відомі текстовий файл f та рядок s. Одержати текстовий файл g, що складається з рядків файлу f, які містять як фрагмент рядок s. Вставку рядка s реалізувати у випадково обране місце кожного рядка файлу f.

18. У файлі f зберігається ціле число а, у файлі g - ціле число b. Записати у файл h числа ab та ba.

19. У файл f записано текст. Підрахувати число слів у цьому файлі.

20. З текстового файлу f переписати у файл g тільки симетричні рядки.

21. У файлі Ua.grn (табельний номер, місяць, заробітна плата) накопичена інформація про зарплату робітників відділу за рік. Сформувати файл підсумкових річних доходів кожного робітника.

22. Компонентами файлу f є n-елементні масиви дійсних чисел. Підрахувати для кожного масиву кількість впорядкованих елементів і записати у файл g.

23. У текстовому файлі зберігається програма на мові Turbo Pascal. Обчислити та дописати у цей файл кількість простих змінних дійсного та цілого типу цієї програми та загальну кількість байтів статичної пам’яті, що ці змінні займають.

24. Інформація про обслуговування транспортною компанією маршруту від міста А до міста В зберігається у файлі Path.dat (номер рейсу, час відправлення, кількість вільних місць). Сформувати файл з довідкою про кількість вільних місць по всіх рейсах на поточний час доби.

25. З текстового файлу одержати новий файл, зробивши глобальну контекстну заміну у всьому тексті рядка символів R1 на рядок R2.

 

Запитання для контролю та самоконтролю

 

1. Що таке файл, каталог, файлова система, таблиця розміщення файлів (FAT) диску?

2. Яка послідовність етапів обробки файлів засобами мови Turbo Pascal?

3. Які стандартні підпрограми використовуються для обробки файлів?

4. Які файлові типи використовуються у програмах на мові Turbo Pascal?

5. У чому полягає особливість послідовного та прямого доступу до файлів?

6. Чим пояснюється прямий доступ до компонентів типізованих файлів та послідовний доступ до компонентів текстових файлів?

7. Що таке вказівник читання/запису?

8. В чому особливість стандартних файлів Input та Output?

9. Як можна позиціювати вказівник читання/запису?

10. Якими підпрограмами реалізована у мові Turbo Pascal обробка файлів засобами операційної системи?

11. Що таке безтипові файли та як їх використовують?

12. Які існують правила щодо кількості одночасно відкритих файлів та щодо закриття файлів?


РЕКОМЕНДОВАНА ЛІТЕРАТУРА

 

 

1. Андерсон Р. Доказательство правильности программ: Пер. с англ. М., Мир, 1982. 163 с.
2. Бондарев В.М., Рублинецкий В.И., Качко Е.Г. Основы программирования. - Харьков, Фолио; Ростов н/Д: Феникс, 1997. - 368 с.
  Босуэлл Д., Фаучер Т. Читаемый код, или Программирование как искусство. - СПб., Изд-во Питер, 2012.. - 208 с.
3. Ван Тассел Д. Стиль, разработка, эффективность отладка и испытание программ. М., Мир, 1981. - 320 с., ил.
4. Зубов В.С. Программирование на языке Turbo Pascal. Изд. 3-е, испр. - М., Информационно-издательский дом Филинъ, 1997. - 320 с.
5. Зуев Е.А. Turbo Pascal. Практическое программирование. - М., Изд-во ПРИОР, 1998. - 336 с.
  Иванова Г. С. Технология программирования. . - М., Изд-во МГТУ им. Баумана, 2002. - 320 с.
6. Кнут Д.Э. Искусство программирования т 1-3 пер с англ уч. Пос. М., Изд дом Вильямс, 2000. – 720 с.:ил
7. Культин Н.Б. Turbo Pascal в задачах и примерах. - СПб., БХВ-Санкт-Петербург, 2000. - 256 с., ил.
8.  
9. Меженный О.А. Turbo Pascal: учитесь программировать. - М., Издательский дом “Вильямс”, 2001. - 448 с., ил.
10.  
11. Немнюгин С.А. Turbo Pascal. - СПб., Изд-во Питер, 2001. - 496 с., ил.
12. Сердюченко В.Я. Розробка алгоритмів та програмування на мові Turbo Pascal: Навчальний посібник для техн. вузів / Укр. мовою - Х.: ВКП Парітет ЛТД, 1995. - 352 с.
13.  

 


ЗМІСТ

 

ЗАГАЛЬНІ РЕКОМЕНДАЦІЇ 4

I. ОГЛЯД ЗАСОБІВ РОЗРОБКИ ПРОГРАМ... 5

1 Загальні поняття. 5

2 Системи програмування. 6

3 Загальний огляд технологій програмування. 8

3.1 Алгоритмічне (модульне) програмування. 8

3.2 Структурне програмування. 8

3.3 Подієво-орієнтоване програмування. 9

3.4 Об'єктно-орієнтоване програмування. 10

3.5 Візуальне програмування. 10

Запитання для контролю та самоконтролю.. 11

II. ОСНОВНІ ПОНЯТТЯ АЛГОРИТМІЗАЦІЇ 12

1. Алгоритми та їх властивості 12

2. Способи подання (опису) алгоритму. 13

3. Правила оформлення блок-схем алгоритмів. 13

4. Базові алгоритмічні конструкції 15

Запитання для контролю та самоконтролю.. 17

III. ЕТАПИ РОЗВ’ЯЗУВАННЯ ПРИКЛАДНИХ ЗАДАЧ.. 18

1. Постановка задачі 18

2. Побудова моделі 18

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

4. Вибір структур даних. 19

5. Розробка програми. 20

6. Тестування програми. 21

7. Аналіз результатів роботи програми. 23

8. Важливі та корисні технологічні правила. 24

Запитання для контролю та самоконтролю.. 25

IV. ПРАКТИКУМ З ПРОГРАМУВАННЯ. СИСТЕМА ПРОГРАМУВАННЯ TURBO PASCAL.. 26

Робота з інтегрованим середовищем розробника. 26

Запитання для контролю та самоконтролю.. 29

Тема №1 СТРУКТУРА ПРОГРАМИ. ЛІНІЙНА ПРОГРАМА. ВВЕДЕННЯ/ВИВЕДЕННЯ. ТИПИ ДАНИХ.. 30

Теоретичні відомості 30

Варіанти завдань. 35

Запитання для контролю та самоконтролю.. 37

Тема №2 ПРОГРАМИ РОЗГАЛУЖЕНОЇ СТРУКТУРИ.. 38

Теоретичні відомості 38

Варіанти завдань. 40

Запитання для контролю та самоконтролю.. 42

Тема №3 ЦИКЛИ З ПАРАМЕТРОМ... 43

Теоретичні відомості 43

Варіанти завдань. 45

Запитання для контролю та самоконтролю.. 46

Тема №4 ЦИКЛИ З НЕВІДОМИМ ЧИСЛОМ ПОВТОРЕНЬ.. 47

Теоретичні відомості 47

Варіанти завдань. 49

Запитання для контролю та самоконтролю.. 51

Тема №5 ВИКОРИСТАННЯ МАСИВІВ.. 52

Теоретичні відомості 52

Варіанти завдань. 54

Запитання для контролю та самоконтролю.. 56

Тема №6 СИМВОЛЬНИЙ ТИП ДАНИХ, РЯДКИ.. 57

Теоретичні відомості 57

Варіанти завдань. 60

Запитання для контролю та самоконтролю.. 61

Тема № 7 ВИКОРИСТАННЯ ДОПОМІЖНИХ ПРОГРАМ... 62

Теоретичні відомості 62

Варіанти завдань. 66

Запитання для контролю та самоконтролю.. 67

Тема № 8 ВИКОРИСТАННЯ МНОЖИН.. 69

Теоретичні відомості 69

Варіанти завдань. 71

Запитання для контролю та самоконтролю.. 73

Тема № 9 ОБРОБКА ЗАПИСІВ.. 74

Теоретичні відомості 74

Варіанти завдань. 78

Запитання для контролю та самоконтролю.. 80

Тема № 10 ОРГАНІЗАЦІЯ ОБРОБКИ ФАЙЛІВ.. 81

Теоретичні відомості 81

Варіанти завдань. 85

Запитання для контролю та самоконтролю.. 86

РЕКОМЕНДОВАНА ЛІТЕРАТУРА.. 87