Сервис поиска текстовых документов
Предупреждение для правообладателей!
alert
Этот сайт является ПОИСКОВЫМ СЕРВИСОМ и НЕ ХРАНИТ какую либо информацию. А предоставляет лишь ССЫЛКИ на общедоступные рессурсы где физически расположена информация найденая по запросу пользователя.

Лаборат роб 34 Створення прогр рядкових(string)..

Дата публикации: 18.10.2013
Тип: Текстовые документы DOC
Размер: 66 Кбайт
Идентификатор документа: 132906459_230792713
Файлы этого типа можно открыть с помощью программы:
Microsoft Word из пакета Microsoft Office
Для скачивания файла Вам необходимо подтвердить, что Вы не робот


Львівський коледж Державного університету інформаційно-комунікаційних технологій Розглянуто та схвалено на засіданні циклової комісії природничо-математичних дисциплін Протокол № від 2012 р. Голова циклової комісії_____ Конончук О.М. Затверджую Заступник директора з навчальної – виробничої роботи _____________ Плешівський Я.М. “_____” ____________ 2012 р Інструкція до лабораторної роботи з інформатики на тему: Створення та реалізація програм з використанням даних символьного та рядкового (string) типу Викладачі Конончук П. П., Конончук О.М. Львів 2012 Лабораторна робота на тему: Створення та реалізація програм з використанням даних символьного та рядкового (string) типу. Мета: Навчитися складати та реалізовувати програми використанням даних символьного та рядкового (string) типу на мові Pascal. Теоретичні відомості Задача 1. У даному тексті замінити всі символи ":" на символи "-" і навпаки. Для виконання заміни в тексті одного символу іншим необхідно знайдений символ (або групу символів) спочатку вилучити процедурою insert, а потім з тієї ж самою позиції вставити бажаний символ (або групу символів). Зверніть увагу на те, що команди розгалуження повинні бути обов'язково вкладеними, тому що, якщо ми знайдемо символ ":" і виконаємо заміну, то на його місці з'явиться символ "-", який теж підлягає заміні . В результаті текст після закінчення роботи програми відтвориться у початковому вигляді. Program Example_1; Var i:word; {i - змінна циклу} St:string; {St - даний текст} Begin Write ('Введіть текст: '); Readln(St); For i:=1 to length(St) do If St[i] = ':' Then Begin Delete (St,i,1); Insert ('-',St,1); End Else If St[i]='-' Then begin Delete (St,i,1); Insert (':',St,1); End; Writeln ('Результуючий рядок: '); Writeln (St); End. Задача 2. Визначити, скільки разів у даному тексті зустрічається послідовність символів "абв". Організовуємо прохід по рядку за допомогою циклу з параметром, причому враховуємо, що необхідно перевірити три послідовно розташованих символи (зверніть увагу на можливість виходу за межі рядка!). Один з методів вибору кількох послідовних символів вже розглядався раніше (і-ий, і+1-ий та і+2-ий елементи), тому розглянемо інший метод, що полягає у використанні функції копіювання Copy. Нагадуємо, що ця функція містить у якості параметрів вихідний рядок, номер початку копіювання (виділення) та кількість вибраних символів, тобто для вибору трьох символів з будь-якого місця рядка St ця функція буде мати вид: Copy(St,і,3). Порівнюючи виділені (скопійовані) символи з еталоном, нарощуємо лічильник при виконанні поставлених умов. Програма, що реалізує описаний алгоритм, має наступний вигляд: Var i:byte; {i - змінна циклу} St:string; {St - даний текст} Count:byte; {Count - лічильник послідовностей} Begin Write ('Введіть текст: '); Readln (St); Count:=0; {Початкове значення лічильника} For i:=1 to length(St)-3 do If Copy (St,i,3) = 'абв' Then count:=count+1; Writeln ('Кількість шуканих послідовностей: ',count); End. Задача 3: Ввести ім’я, по батькові і прізвище. Перетворити їх до формату “прізвище-ініціали". Приклад: Введіть ім’я, по батькові і прізвище: Василь Алібабаєвич Хрюндіков Результат: Хрюндіков В.А. Алгоритм виконання задачі: знайти перший пропуск і виділити ім’я знищити ім’я з пропуском із основного рядка знайти перший пропуск і виділити по батькові знищити по батькові з пропуском із основного рядка “склеїти" прізвище, перші букви імені і прізвища, крапки, пропуски… program qq; var s, name, otch: string; n: integer; begin writeln(‘Введіть ім’я, по батькові і прізвище'); readln(s); n := Pos(' ', s); name := Copy(s, 1, n-1); { вирізати ім’я } Delete(s, 1, n); n := Pos(' ', s); otch := Copy(s, 1, n-1); { вирізати по батькові } Delete(s, 1, n); { залишилось прізвище } s := s + ' ' + name[1] + '.' + otch[1] + '.'; writeln(s); end. Х і д р о б о т и : Ознайомтесь з теоретичним матеріалом. Виконайте завдання за індивідуальними завданнями. У звітах складіть блок-схему алгоритму, запишіть програму, дайте відповіді на контрольні запитання. Закінчіть роботу. Здайте звіти. Контрольні запитання Як працює функція Copy(St,Poz,N)? Запишіть оператор, котрий запише у рядкову послідовність S2 початок рядкової змінної S1, аж до її 3-го символу включно. Відомо, що змінна А містить слово “авто”. Запишіть оператор конкатенації, котрий надасть змінній значення “автозавод”. Яку процедуру слід використати, щоб перевести символьний запис цілого числа, котрий зберігається у string–змінній Т, у числову форму? Запишіть її виклик. Яку процедуру слід використати, щоб перевести символьний запис дійсного числа, котре зберігається у рядковій змінній S, у числову змінну К? Запишіть її виклик. Яка функція переводить у числову форму байт довжини рядкової послідовності й повертає знайдене число як свій результат? Запишіть її. Чому дорівнює значення функції Length(‘colo_2’)? Яку функцію треба використати, щоб перевести символьний запис в ціле число? Яка функція з’єднує рядки в один рядок? Індивідуальні завдання: У даному тексті обчислити найбільшу кількість пробілів, що розташовані підряд. Дано деякий текст. Групи символів, які розділені пробілами (одним або кількома) та не містіть всередині пробілів, називатимемо словами. Вважатимемо, що текст завжди починається зі слова. Визначити кількість слів, довжина яких дорівнює k. Перевірити, чи є дані два слова оберненими одне до одного, тобто перше читається зліва направо так само, як друге справа наліво. У тексті замінити всі символи 1 на символи 0 та навпаки. Заміна виконується, починаючи із заданої позиції в тексті. У даній формулі порахувати кількість входжень символів "+" та кількість символів "-". Дано текст. Визначити, які символи зустрічаються у тексті частіше: "а" чи "о". Якщо якійсь з символів відсутній - повідомити про це. Дано деякий текст, у якому є хоча б одна кома. Визначити порядковий номер першої коми в тексті. Роздрукувати даний текст у зворотному порядку. Перевірити, чи є дані два слова оберненими одне до одного, тобто перше читається зліва направо так само, як друге справа наліво. Визначити, скільки разів у даному тексті зустрічається послідовність символів "аба". Дано текст. Відредагувати його таким чином, щоб всі символи "." Були замінені на "...", символи ":" на "-", символи "-" на ":". Скласти програму, яка кожну літеру "а", що зустрічається в тексті, замінює на групу символів "ку" (наприклад "ади" - "куди"). Нехай текст дано у вигляді одного слова, тобто в ньому відсутні пробіли. Скласти програму, яка перевіряє, чи є частиною заданого слова слово "рак". Відповіддю повинно бути "так" чи "ні" (наприклад, для слова "ракета" - "так", а для слова "карета" - "ні"). Дано деякий текст. Групи символів, які розділені пробілами (одним або кількома) та не містіть всередині пробілів, називатимемо словами. Вважатимемо, що текст завжди починається зі слова. Визначити кількість слів у тексті.

Не то что нужно?


Вернуться к поиску