Головна » Статті » С++ » Приклади програм |
Пошук символа в стрічці через вказівник С++
Для введеного користувачем рядка з клавіатури (максимальна довжина рядка 80 символів) программа повинна визначити, за допомогою вказівників, чи коректно розставлені дужки (круглі, фігурні, квадратні) чи ні. Перемішування дужок (приклад "(}") вважаєтся некоректним варіантом.
#include <iostream> #include <cstdio> #include <cstring> using namespace std; int main() { char a[80]; //Оголошення змінної строчного типу gets(a); //Запис стрічки в змінну char * A; //Оголошення вказівника типу char A=a; //Запис у вказівник адреси змінної а int s=strlen(a); //Знаходження довжини введеного рядка int * S; S=&s; //Створення вказівника на змінну s for(int i=0; i<*S; i++) { //Перевірка чи правильно закрита кругла дужка if(*(A+i)=='(' && *(A+i+1)!=')' && (*(A+1+i) != '(') && (*(A+1+i) != '{') && (*(A+1+i) != '[') ) { cerr<<"WARRNING"; //Виведення повідомлення про помилку } //Перевірка чи правильно закрита фігурна дужка else if(*(A+i)=='{' && *(A+i+1)!='}' && (*(A+1+i) != '(') && (*(A+1+i) != '{') && (*(A+1+i) != '[')) { cerr<<"WARRNING"; //Виведення повідомлення про помилку } //Перевірка чи правильно закрита квадратна дужка else if(*(A+i)=='[' && *(A+i+1)!=']' && (*(A+1+i) != '(') && (*(A+1+i) != '{') && (*(A+1+i) != '[')) { cerr<<"WARRNING"; //Виведення повідомлення про помилку } } }; | |
Переглядів: 181 | | |
Всього коментарів: 0 | |