Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
практика програмування.doc
Скачиваний:
23
Добавлен:
16.05.2015
Размер:
580.61 Кб
Скачать

Практична робота №9.

ТЕМА: ПРОГРАМУВАННЯ ЗАДАЧ З ВИКОРИСТАННЯМ

СИМВОЛЬНИХ ДАННИХ.

МЕТА: Оволодiти навиками pоботи з символьними

даними, особливостями їх вводу та виводу на ЕОМ.

Набути навиків програмування задач з використанням

стандартних підпрограм для опрацювання символьної інфор-

мації.

ЗАВДАННЯ ДЛЯ САМОСТIЙНОЇ ПIДГОТОВКИ

1.Вивчити способи описання символьних данних на мові програмування.

2.Вивчити способи вводу та виводу данних.

3.Визначити алгоритми опрацювання данних.

4.Скласти програму для розв”язання задачі відповідно з варіантом завдання,вказаним в таблиці 11.

ВИКОНАННЯ РОБОТИ

Приклад задачі.

Заданий текст слова , слова якої розділені символом “пропуск”.

1.1.Знайти кількість слів у тексті.

1.2. Надрукувати окремо з нового рядка кожне слово тексту.

1.3. Знайти і надрукувати найдовше слово тексту.

Program strings;

Uses Crt;

Var s, t: string;

I, k: Integer;

Procedure kol(s: string; var k: Integer); {процедура знаходження кількості слів у}

{тексті, текст містить хоча б одно слово}

var i, n: Integer;

begin k := 1; n := length(s);

for i := 1 to n do if s[i]=’’ then k:= k +1; end;

procedure druk(s:string); {процедура друкування слів тексту}

var n: integer; s1:string;

begin n:=pos(‘’,s);

while n<>0 do begin s1:= copy(s,1,n-1); writeln(s1); delete(s,1,n);

n:=pos(‘ ’,s); end; writeln(s) end;

procedure max_word(s:string; var s1:string); {процедура знаходження} {найбільшого слова тексту}

var m, n, max: integer; s2: string;

begin s1:=’ ’; max :=0; n:=pos(‘ ’,s);

while n<>0 do begin s2:=copy(s,1,n-1); m:=length(s2);

if m>max then begin max:=m; s1:=s2; end;

m:=length(s);

if m>max then s1:=s

end;

begin {Основна програма}

write(‘Введіть рядок:’); readln(s); writeln;

writeln(‘Результати: ‘); kol(s, k);

writeln(‘Кількість слів у тексті k=’, k); writeln;

writeln(‘Слова тексту:’); druk(s); writeln;

writeln(‘Найдовше слово тексту’); max_word(s, t); writeln(t);

end.

ЗАВДАННЯ:

1.СКЛАСТИ ПРОГРАМУ, ВВЕСТИ ПРОГРАМУ В ЕОМ НАЛАГОДИТИ ЇЇ.Таблиця 8.

№ варіанту

У М О В А З А Д А Ч I

1

Перевiрити наявнiсть в заданому виразi балансу

правих та лiвих круглих дужок.

2

Вiдредагувати заданий текст, вилучивши з нього лишнi пропуски,залишаючи тiльки по одному мiж словами.

3

Замiнити в заданому текстi символ ‘ы’ на символ ‘і’.

4

Визначити текстове значення поточного мiсяця.

5

Визначити текстове значення поточного дня.

6

Знайти найкоротше слово тексту.

7

Для кожного слова вказати його довжину.

8

Скласти програму для переведення арабських цифр в римські.

9

Підрахувати скільки букв ‘ a’ в заданому тексті.

10

Замiнити в заданому текстi символ ‘-‘ на символ ‘_’.

11

Вивести на екран перші літери кожного слова.

12

Видалити останнє слово тексту .

13

Для кожного слова вказати його довжину.

14

Вибрати із тексту всі числові значення і вивести на екран.

15

Вивести на екран друге слово тексту.