- •Загальні рекомендації
- •. Огляд засобів розробки програм
- •1 Загальні поняття
- •2 Системи програмування
- •3 Технології програмування
- •3.1 Алгоритмічне (модульне) програмування
- •3.2 Структурне програмування
- •3.3 Подієво-орієнтоване програмування
- •3.4 Об'єктно-орієнтоване програмування
- •3.5 Візуальне програмування
- •Запитання для контролю та самоконтролю
- •. Основні поняття алгоритмізації
- •1. Поняття алгоритму. Властивості алгоритму
- •2. Способи подання (опису) алгоритму
- •3. Правила оформлення блок-схем алгоритмів
- •4. Базові алгоритмічні конструкції
- •Запитання для контролю та самоконтролю
- •. Етапи розв’язування прикладних задач
- •1. Постановка задачі
- •2. Побудова моделі
- •3. Розробка алгоритму
- •4. Вибір структур даних
- •5. Розробка програми
- •6. Тестування програми
- •7. Аналіз результатів роботи програми
- •8. Корисні технологічні правила програмування
- •Запитання для контролю та самоконтролю
- •V. Практикум з програмування. Turbo pascal
- •Робота з інтегрованим середовищем розробника
- •Запитання для контролю та самоконтролю
- •Тема №1 структура програми. Лінійна програма. Введення/виведення. Типи даних Теоретичні відомості
- •Var перелік імен змінних та їх типів;
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №2 програми розгалуженої структури Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №3 цикли з параметром Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №4 цикли з невідомим числом повторень Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №5 використання масивів Теоретичні відомості
- •Var Ім'я : array[поч_індекс . . Кін_індекс] of Тип_даних;
- •Var Ім'я:array[поч_індекс1..Кін_індекс1,
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №6 символьний тип даних, рядки Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 7 використання допоміжних програм Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 8 використання множин Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 9 обробка записів Теоретичні відомості
- •Var Ім’я_запису : Ім’я_типу;
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 10 організація обробки файлів Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Рекомендована література
Приклад
Записати усі непарні компоненти текстового файлу в новий файл.
f, g - текстові файли: f - вхідний файл, g - результуючий файл.
Файл f зчитується по рядках, лічильник рядків i збільшується на одиницю. Якщо i - непарне число, то цей рядок записується у файл g.
3) Алгоритм:
Вибираємо типи даних: f, g - текстові файли; s - рядок; i - ціла.
Текст програми:
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;
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,' рядків');
Варіанти завдань
Дописати до компонентів файлу Product.dat (шифр продукції, кількість одиниць) назву продукції з файла-довідника Asort.dat (шифр продукції, назва продукції).
Кожний цех заводу працює в три зміни. Створити підсумковий файл Rezult (номер цеху, загальна кількість робітників), якщо інформація про кількість робітників кожної зміни цеху зберігається у файлі Data (номер цеху, номер зміни, кількість робітників).
Дано символьні файли f і g. Записати у файл h у зворотному порядку спочатку парні компоненти файлу f, потім непарні компоненти файлу g.
У текстовому файлі знайти символ, що зустрічається найчастіше.
З файлу f, де знаходяться цілі числа переписати у файл g ті, що є більшими за середнє геометричне значення всіх модулів елементів вхідного файлу.
У файлі Data (номер накладної, код товару, кількість, вартість одиниці товару) відсортувати всі записи за номером накладної.
У файлах f та g зберігаються по одній цифрі, записаній англійською мовою. У файл h записати всі двозначні числа, що складаються з цих цифр.
З файлу Doc.dat (номер накладної, код товару, кількість, вартість одиниці товару) сформувати файл Code.dat, підсумувавши загальну кількість та загальну вартість товарів кожного коду.
Створити файл g, що містить текст файлу f, у якому кожна цифра повторена стільки разів, якому числу вона відповідає.
З файлу f переписати текст у файл g, зробивши у ньому всі рядки фіксованої довжини d, вирівнюючи їх за шириною.
Відомий файл f, компоненти якого є цілими числами. Одержати у файлі g усі компоненти файлу f, що є точними квадратами.
У текстовому файлі зберігається програма, записана на мові Turbo Pascal. Обчислити та дописати у кінець цього файлу кількість операторів присвоєння, використаних у програмі.
Компонентами файлів f та g є цілі числа. Не використовуючи допоміжних файлів обміняти місцями вміст цих файлів.
Скласти програму шифрування російськомовного текстового файлу, використовуючи шифр Цезаря з фіксованим зміщенням Z букв у алфавіті.
З текстового файлу f переписати весь вміст у файл g таким чином, щоб порядок рядків і символів у рядках був зворотним.
У текстовому файлі f замінити кожну цифру на наступну по порядку цифру (01234567890).
Відомі текстовий файл f та рядок s. Одержати текстовий файл g, що складається з рядків файлу f, які містять як фрагмент рядок s. Вставку рядка s реалізувати у випадково обране місце кожного рядка файлу f.
У файлі f зберігається ціле число а, у файлі g - ціле число b. Записати у файл h числа ab та ba.
У файл f записано текст. Підрахувати число слів у цьому файлі.
З текстового файлу f переписати у файл g тільки симетричні рядки.
У файлі Ua.grn (табельний номер, місяць, заробітна плата) накопичена інформація про зарплату робітників відділу за рік. Сформувати файл підсумкових річних доходів кожного робітника.
Компонентами файлу f є n-елементні масиви дійсних чисел. Підрахувати для кожного масиву кількість впорядкованих елементів і записати у файл g.
У текстовому файлі зберігається програма на мові Turbo Pascal. Обчислити та дописати у цей файл кількість простих змінних дійсного та цілого типу цієї програми та загальну кількість байтів статичної пам’яті, що ці змінні займають.
Інформація про обслуговування транспортною компанією маршруту від міста А до міста В зберігається у файлі Path.dat (номер рейсу, час відправлення, кількість вільних місць). Сформувати файл з довідкою про кількість вільних місць по всіх рейсах на поточний час доби.
З текстового файлу одержати новий файл, зробивши глобальну контекстну заміну у всьому тексті рядка символів R1 на рядок R2.