русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

З.1.2 Опис методу рішення


Дата добавления: 2015-06-12; просмотров: 500; Нарушение авторских прав


Символьний рядок у мові Cі представляється в пам'яті як масив символів, останнім елементом якого є символ ‘\0’ (байт із кодом 0) - ознака кінця рядку[8]. Рядок, як і будь-який інший масив можна обробляти або традиційним методом - з використанням операції індексації, або через вказівники, з використанням операцій адресної арифметики. Довжина рядку заздалегідь невідома, тому цикли повинні бути організовані не з лічильником, а до появи ознаки кінця рядку.

Функція повинна реалізовувати поставлене завдання та мати універсальний характер. Це означає, що функцію можна буде, наприклад, перенести без змін у будь-яку іншу програму, якщо специфікації функції задовольняють умовам завдання. Це також означає, що при помилковому завданні параметрів або при якихось особливих випадках у їхніх значеннях функція не повинна аварійно завершувати програму або виводити якісь повідомлення на екран, але повинна повертати якесь прогнозоване значення, за яким та функція, що викликала нашу, може зробити висновок про помилку або про особливий випадок.

 

Визначимо склад параметрів функції:

int substr (src, dest, num, len);

де

· src — рядок, з якого вибираються символи;

· dest — рядок, у який записуються символи;

· num — номер першого символу в рядку src, з якого починається підрядок (нумерація символів ведеться з 0);

· len —довжина вихідного рядку.

Встановимо такі можливі значення, що буде повертати функція: 1 (завдання параметрів правильне) і 0 (завдання неправильне). Ці значення при звертаннях до функції можна буде інтерпретувати як «істина» або «неправда» ("вірно" або "невірно").

Позначимо через Lsrc довжину рядку src. Тоді можливі такі варіанти при завданні параметрів:

· num+len <= Lsrc — повністю правильне завдання ( випадок 1 );

· num+len > Lsrc; num < Lsrc — правильне завдання, але довжина вихідного рядку буде менша, ніж len (випадок 2 );



· num >= Lsrc — неправильне завдання, вихідний рядок буде порожнім ( випадок 3 );

· num < 0 або len <= 0 — неправильне завдання, вихідний рядок буде порожнім ( випадок 4 ).

 

Функція повинна точно інтерпретувати задані параметри як правильні/неправильні та здійснювати вибір реакції на неправильне завдання параметрів. Можливий також випадок, коли вихідний рядок вийде більшої довжини, чим для нього відведено місця в пам'яті. Однак, оскільки функції невідомий розмір пам'яті, відведений для рядку dest, функція не може розпізнати і обробити цей випадок - так само поводяться і бібліотечні функції мови C [9].

 



<== предыдущая лекция | следующая лекция ==>
Умовні графічні позначення символів в схемах алгоритмів та програм | Опис алгоритму функції substr_mas()


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 3.75 сек.