Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



ПОШУК СИМВОЛІВ

ФУНКЦІЇ ПЕРЕВІРКИ ДІАПАЗОНУ

На практиці досить широко використовуються функції перевірки приналежності символів якому-небудь діапазону, такі як isalnum, isalpha, isascii, isdigit і т.д., оголошені в заголовному файлі ctype.h. Синтаксис цих функцій має вигляд:

int isrange ( int c ) ;

Якщо параметр належить діапазону, то функція повертає число, більше нуля, а якщо ні, то – нуль. Нижче розглядається приклад використання цього виду функцій.

#include <ctype.h>

#include <iostream.h>

void main ()

{

char Age [4] ; // оголошення рядка із трьох символів, у якій зберігається вік

char S [81] ; // оголошення рядка повідомлень із вісімдесяти символів

unsigned int i ; // оголошення цілої змінної без знака - номер символу

for ( ; ; ) // нескінченний цикл

{

begin: // оголошення мітки – початок циклу

Chartooem ( "Ведіть свій вік, будь ласка ", S ) ;

cout << S ; // друк запрошення

cin.getline ( Age, 4 ) ; // уведення віку

for ( i=0 ; i<strlen ( Age ) ; i++) // для всіх символів рядка Age

{

if ( isalpha ( Age [ i ] ) ) // якщо i–й символ є буквою

{

Chartooem ( "\n\t\t Ви ввели букву, спробуйте знову \n\n", S ) ;

сout << S ; goto begin ; // друк повідомлення й перехід у початок циклу

}

if ( iscntrl ( Age [ i ] ) ) // якщо i–й символ є керуючим

{

Chartooem ( "\n\t\t Ви ввели керуючий символ, спробуйте знову \n\n", S) ;

cout<<S ; goto begin ; // друк повідомлення й перехід у початок циклу

}

if ( ispunct ( Age [ i ] ) ) // якщо i–й символ є символом пунктуації

{

Chartooem ( "\n\t\t Ви ввели символ пунктуації, спробуйте знову \n\n", S ) ;

cout<<S ; goto begin; // друк повідомлення й перехід у початок циклу

}

if ( ! isdigit ( Age [ i ] ) ) // якщо i–й символ не є цифрою

goto begin ; // перехід у початок циклу

}

Chartooem ( "\n\t\t Ваш вік: ", S ) ;

сout << S << Age << "\n\n" ; // друк віку

return 0 ; // вихід з функції

}

}

Тут користувачеві пропонується ввести свій вік. Функція cin.getline поміщає в рядок Age уведену послідовність ( до трьох) символів, після чого виконується перевірка всіх уведених елементів масиву на приналежність до літер, escape - послідовностей або символам пунктуації. Якщо результат відповідної перевірки позитивний, користувачеві пропонується ввести дані повторно. А якщо ні, то всі введені елементи рядки перевіряються на приналежність до цифрового набору даних. Якщо хоча б один із символів не задовольняє умові, що перевіряється, цикл уведення повторюється спочатку. Після коректного введення даних на екран виводиться повідомлення про вік користувача, і програма завершує роботу.

Одна із задач, що часто зустрічаються, при роботі з рядками – пошук окремого символу або навіть групи символів. Бібліотека string.h пропонує широкий набір стандартних функцій.


Читайте також:

  1. Абсолютизація формально-технічних пошуків у мистецтві ХХ ст.
  2. Багатомовна пошукова система
  3. Бібліографія. Інформаційно-пошукові мови бібліографічних фондів. Види каталогів: систематичні, предметні, абеткові.
  4. Будівельний підряд. Підряд на проектні та пошукові роботи.
  5. Визначення методу пошуку.
  6. ВІЛЬНИЙ ПОШУК (у тому числі ВАЛІДАЦІЯ) ® ПРОГНОСТИЧНЕ МОДЕЛЮВАННЯ ® АНАЛІЗ ВИКЛЮЧЕНЬ
  7. Вставка спеціальних символів.
  8. Евристичний пошук
  9. Етап 2. Пошук оновлень
  10. Зародження ” М. Стельмаха як письменника. Риси творчості та стильові пошуки.
  11. Засоби зберігання та пошуку документів
  12. Інтенсифікується пошук світового центру управління та інструментів регулювання глобальних світогосподарських процесів.




Переглядів: 432

<== попередня сторінка | наступна сторінка ==>
Функція strncmp | Функція strcspn

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.003 сек.