1. Напишіть заголовок програми (розділ опису змінних) мовою Паскаль, у якому використовуються змінні:
• Змінна К для збереження номера клітки в зоопарку.
• Змінна В для збереження назви біологічного виду тварин, що містяться в клітці.
• Змінна S для збереження прізвища доглядача зоопарку, відповідального за тварин у даній клітці.
2-3. Напишіть з використанням мови Паскаль команди, що виконують такі дії:
· присвоїти змінній Е збільшену вдвічі кількість символів у тексті, що є значенням змінної Р.
• Присвоїти змінній Е текст, що складається з третього, четвертого, п’ятого, шостого, сьомого і восьмого символів тексту, що є значенням змінної А, і перших трьох символів цього ж тексту.
• Присвоїти змінній Y кількість символів у тексті, утвореному склеюванням слова - значення змінної А з вирізкою перших десяти символів з тексту, що є значенням змінної Н.
• Перевіряється умова рівності тексту, утвореного приєднанням тексту із змінної К до цього ж тексту, і тексту, утвореного вирізкою із змінної Н перших R символів.
4. Написати програму для з’ясування, чи збігається третій символ
першого заданого тексту з п’ятим символом іншого заданого тексту.
6*. Задано речення. Складіть програму для з’ясування, чи містить це речення послідовність символів, що складається з перших п’яти символів даного речення більше одного разу.
7. Виконайте програму для заданих значень:
1) а=23
2) а=52
3) а=3
4) а=15
Var k,і,a,b:Byte; m, s : String;
Begin
Readln(a);
M:=’’; s:=’’;
K:= a div 10; b:=a mod 10;
If k=1 then s:=’X’ else if k=2 then s:=’XX’;
For i:=1 to b do s:=s+’I’;
S:=S+m;
Writeln(s);
End.
8. Складіть програму що визначає, чи складається заданий текст з яких- небудь букв, крім букв „в”, „а” і „к”.
9. Задано ціле число N (69 < N < 100). Вивести на екран фразу „...барабашек”. Наприклад: 73 барабашки.
10. Задано речення - набір англійських слів, розділених одним чи декількома пробілами. Визначити кількість слів у цьому реченні.
11*. Задано номер мобільного телефону. Складіть програму, що з'ясовує, чи є в цьому номері групи сусідніх цифр (від 0 до 9), що відрізняються на 1, розташованих по зростанню. Наприклад, у номері 37564384005 -вони є, а в номері 37654358005 - їх немає.
12. Задано текст довжиною не більше 250 символів, набраний тільки російськими малими літерами. Напишіть фрагмент програми, що містить розрахунковий блок і виведення результату, що виправляв би першу букву кожного речення в цьому тексті на велику.
10.Файли
В тих випадках, коли даних багато або їх треба довго зберігати , застосовують файли.
Файл – це сукупність даних одного типу.
Процедури і функції для роботи з файлами.
Процедура Assignзв’язує деякий зовнішній файл на диску з файловою змінною.
Наприклад :
Assign (class, ‘school.dat’);
Процедура Reset відкриває уже раніше існуючий файл даних на диску, ім.’я якого було перед цим пов’язане процедурою Assign з деякою файловою змінною, для його зчитування або запису в нього даних.
Наприклад :
Reset(class); відкриває уже існуючий файл school.dat
Процедура Rewrite створює новий файл і відкриває його. Якщо файл з таким ім.’ям уже існує, то його вміст знищується, а сам файл відкривається знову.
Наприклад :
Rewrite(class);
Створюється і відкривається файл на диску school.dat, який пов’язаний з файловою змінною class.
Процедура Close – закриває відкритий файл.
Наприклад :
Close (class);
Функція Eof набуває значення True, якщо досягнуто кінець файла, інакше набуває значення False.
Наприклад :
Eof (class);
Функція IOresult – використовується для пошуку помилок, які виникають при роботі з файлами. При безпомилковому виконанні останньої операції введення-виведення – функція IOresult набуває значення 0 інакше 1 . При цьому автоматичний контроль операцій введення - виведення повинен бути перед цим відключений за допомогою директиви {$I-}, після використання функції IOresult - автоматичний контроль введення - повинен бути знову підключений директивою {$I+}.
Приклад: Прочитати з текстового файла А всі записані в нього цілі числа, пертворити їх у дійсні і вивести в текстовий файл В по 4 числа в рядок.
Program example1;
VAr F1,F2:Text;
X:real;
I:integer;
Begin
{$I-} внутрішня перевірка правильності операції з файлом
assign(f1,’A’); зв’язок з файлом А, що містить цілі числа
reset(f1); відкрити файл для читання
{$I+} відключити внутрішню перевірку
if IOresult < > 0 then
writeln(‘нет файла’);
else begin
assign(f2,’B’); зв’язок з файлом В
rewrite(f2); відкрити файл для запису
repeat
for i:=1 to 4 do
if not SeekEof(f1) then
begin
read(f1,x);
write(f2,x:18); форматоване виведення
end;
writeln(f2); перехід на новий рядок
until SeekEof(f1); до тих пір поки не буде прочитаним кінець файла
close(f1);
close(f2);
end
end.
Запис даних в файл
Program Ex1;
Uses crt;
Var f1:file of srting;
I:string;
Begin
clrScr;
assign(f1,’test.dat’);
rewrite(f1);
writeln(‘введите данные’);
readln(i);
write (f1,i);
close(f1);
end.
Прочитати файл в рядок
Program Ex2;
Uses crt;
Var f1:file of srting;
S,I:string;
Begin
clrScr;
assign(f1,’test.dat’);
reset(f1);
read(f1,i);
write (f1,i);
s:=I;
end.
Завдання для самостійної роботи з теми "Файли"
1. Обчислити значення функції Y=5x2+2x-6. Результати записати у файл F1.pas
2. Написати текст програми про розклад руху міжміських автобусів. Запишіть у файл F1.pas інформацію про автобуси, що вирушають до Дніпропетровська.
Написати текст програми , що зчитує дані із файла F1.pas і виводить їх на екран .
3. Написати текст програми, що містить дані про успішність учнів вашого класу з шести предметів. Обрахувати середній бал кожного учня і вивести дані в файл F1.pas. Вивести у файл F2.pas список учнів, середній бал яких не менший 10 балів.
4. Написати текст програми, що містить дані про учнів вашого класу . Вивести у файл F3.pas список учнів, які народилися у тому ж місяці що і ви.
5. Написати текст програми, що містить дані про учнів вашої школи . Вивести у файл F4.pas, F5.pas, F6.pas, F7.pas відповідно список учнів, вік яких становить а) 16 років; б) які вчаться у 8 класі; в)які мають імя Микола г) імя яких починається літерою В .
6. Відомі дані про наявність книг в бібліотеці, які містяться у файлі *.pas. Структура файла: Назва книги (20 символів), Прізвище автора (12 символів), Кількість книг у бібліотеці, Вартість однієї книги, Рік видання.Написати текст програми, що зчитує дані із файлу *.pas, обраховує загальну вартість книг кожної назви окремо і записує результати обрахунку у файл **.pas.Файл **.pas має таку структуру: Назва книги, Рік видання, Загальна вартість книг цієї назви.Написати текст програми, що зчитує дані із файла **.pas і виводить на екран відомість вартості книг слідуючої форми
Відомість вартості книг
№з/п
Назва книги
Рік видання
Вартість (грн.)
Photoshop 6.0
Обрахувати загальну вартість всіх книг, що є у бібліотеці.
7. Відомі дані автопарку по перевезенню пасажирів, що знаходяться у файлі *.pas. Файл має таку структуру: Прізвище водія(10 символів), Назва авто (10 символів), Кількість рейсів за день, Довжина маршруту в км. Написати текст програми, що зчитує дані із файлу *.pas, обраховує загальну відстань, що проїхав водій за день та кількість витраченого бензину, якщо у середньому на 1 км шляху витрачається W літрів бензину і записує результати обрахунку у файл **.pas.Файл **.pas має таку структуру: Прізвище водія, Назва авто, Пройдений шлях, Витрати бензину. Написати текст програми, що зчитує дані із файла **.pas і виводить на екран відомість слідуючої форми
Відомість витрат бензину
№з/п
Прізвище
Авто
Шлях (км)
Витрати (л)
Іванов
Газель
Знайти загальну кількість та вартість витраченого бензину, якщо 1 л коштує 2,90 грн.