- •Обчислювальна техніка та програмування Методичні вказівки
- •Обчислювальна техніка та програмування Методичні вказівки
- •3.Теоретичні відомості
- •4. Завдання до виконання комп’ютерного практикума Завдання 1. Обчислення арифметичного виразу
- •Завдання 2. Обчислення з використання умовного оператору
- •Завдання 3. Обчислення з використання оператору циклу
- •Завдання 4. Обчислення значення функції на вказаному відрізку з певним кроком
- •Завдання 5. Знаходження коренів квадратного рівняння
- •7. Порядок виконання комп’ютерного практикума
- •6.Заходи безпеки при виконанні комп’ютерного практикуму
- •8.Оформлення звіту та порядок його подання
- •9.Контрольні запитання для підготовки до комп’ютерного практикуму :
- •Комп’ютерний практикум 2 Масиви
- •3. Теоретичні відомості
- •3.3. Робота з компонентом StringGrid
- •4. Завдання до виконання комп’ютерного практикума Завдання 1. Введення значень масиву в програмі
- •6.Заходи безпеки при виконанні комп’ютерного практикуму
- •7. Порядок виконання комп’ютерного практикума
- •8.Оформлення звіту та порядок його подання
- •9.Контрольні запитання для підготовки до комп’ютерного практикуму :
- •Комп’ютерний практикум 3 Функції
- •2.Задачі:
- •3.Теоретичні відомості
- •4. Завдання до виконання комп’ютерного практикума Завдання 1. Створення функції користувача для розрахунку арифметичного виразу
- •Завдання 2. Створення функції користувача для обробки масивів
- •6.Заходи безпеки при виконанні комп’ютерного практикуму
- •7. Порядок виконання комп’ютерного практикума
- •8.Оформлення звіту та порядок його подання
- •9.Контрольні запитання для підготовки до комп’ютерного практикуму :
- •Комп’ютерний практикум 4 Файли
- •2.Задачі:
- •3.Теоретичні відомості
- •4. Завдання до виконання комп’ютерного практикума
- •1 Завдання. Запис інформації у файл
- •2 Завдання. Читання та запис масиву з/у файл
- •6.Заходи безпеки при виконанні комп’ютерного практикуму
- •7. Порядок виконання комп’ютерного практикума
- •8.Оформлення звіту та порядок його подання
- •9.Контрольні запитання для підготовки до комп’ютерного практикуму :
- •2. Задачі:
- •3.Теоретичні відомості
- •4. Завдання до виконання комп’ютерного практикума
- •6.Заходи безпеки при виконанні комп’ютерного практикуму
- •7. Порядок виконання комп’ютерного практикума
- •8.Оформлення звіту та порядок його подання
- •9.Контрольні запитання для підготовки до комп’ютерного практикуму :
- •Комп’ютерний практикум 6 Структури даних
- •3.Теоретичні відомості
- •4. Завдання до виконання комп’ютерного практикума
- •6.Заходи безпеки при виконанні комп’ютерного практикуму
- •7. Порядок виконання комп’ютерного практикума
- •8.Оформлення звіту та порядок його подання
- •9.Контрольні запитання для підготовки до комп’ютерного практикуму :
- •Література
2. Задачі:
навчитись застосовувати функції обробки рядків символів типу char*;
навчитись застосовувати функції обробки рядків символів типу AnsiString;
навчитись записувати рядки символів у файл;
розробити програму за варіантом;
проаналізувати отримані результати;
оформити звіт.
3.Теоретичні відомості
Символьний рядок (char *) – це послідовність символів, яка знаходиться в подвійний лапках. Символьний рядок є масивом символів, кожен символ – елемент масиву. Кожен рядок символів закінчується символом «\0», який вказує на кінець рядка. Прототипи стандартних функцій обробки символьних рядкiв знаходяться в заголовному файлі string.h. Стандартнi функції працюють тiльки з рядками символiв, а не з масивами символiв.
В С++ Builder тип рядка AnsiString реалізований, як клас, який об’явлено у файлі vcl/dstring.h. Це рядки з нульовим символом в кінці. При об’яві змінні типу AnsiString заповнюються порожніми рядками.
Для AnsiString визначені операції відношення: ==, !=, >, <, =, >=, <=. Порівняння відбувається з урахуванням регістру. Порівнюються коди символів., починаючи з першого, і якщо чергові символи не однакові, рядок, який вміщує символ з меншим кодом вважається меншим. Якщо всі символи співпали, але один рядок довший, то він вважається більшим.
Для AnsiString визначені операції присвоєння =, += і операція конкатенації (+). Визначена також операція індексації []. Індекси починається з одиниці, наприклад, якщо s1=”Четвер”, то s1[1]=’Ч’, s1[2]=’е’,…
Тип AnsiString використовується для ряду властивостей компонентів С++ Builder. Наприклад, для таких як властивість Сaption в мітках, розділів меню та ін.
Приклад 1.
Label->Caption=Edit1->Text+” “ + Edit2->Text;
Таблиця 5.1 - Деякі функції обробки символьних рядків типу *char
Назва функції |
Призначення |
strlen() |
Визначає довжину рядка str. |
strcat() |
До рядка str1 дописується рядок str2 (конкатенація рядків). |
strncat() |
Дописує kol символів рядка str2 до рядка str1 (конкатенація рядків). |
strchr() |
Шукає в рядку str перше розміщення вказаного символу. |
strrchr() |
Шукає в рядку str останнє розміщення вказаного символу. |
strcmp() |
Порівнює рядки str1 та str2. Результат від’ємний, якщо str1<str2; дорівнює нулю, якщо str1==str2 і більше нуля, якщо str1>str2. Порівнюються коди символiв. |
strcnmp() |
Порівнює перших kol символів в рядках str1 та str2. Аналогiчно strcmp. |
strcpy() |
Копіює байти рядка str2 в рядок str1. |
strncpy() |
Копіює kol символів рядка str2 в рядок str1. |
strlwr() |
Перетворює літери верхнього регістра в рядку на відповідні літери нижнього регістра. |
strupr() |
Перетворює літери нижнього регістра в рядку на відповідні літери верхнього регістра. |
strstr() |
Шукає в рядку str1 підрядки str2. Повертає вказівник на цей елемент в рядку str1, з якого починається підрядок str2. |
Таблиця 5.2. - Деякі функції обробки символьних рядків типу AnsiString
Назва функції |
Призначення |
Length() |
Визначає довжину рядка |
Pos() |
Шукає перше входження підрядка. Якщо пошук успішний функція повертає індекс першого символу знайденого входження. Якщо підрядок не знайдено повертає нуль. |
SubString() |
Визначає підрядки, параметри: початковий і кінцевий індекс. |
Delete() |
Видаляє підрядок, параметри: початковий індекс і кількість символів, які слід видалити. |
Insert() |
Вставляє в рядок підрядок, початковий і заданий індекс. |
AnsiUpperCase() |
Перетворює рядок символів у верхній регістр. |
AnsiLowerCase() |
Перетворює рядок символів у нижній регістр. |
