Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Demeta
0 / 0 / 3
Регистрация: 13.11.2016
Сообщений: 12
#1

Исправить код парсера так, чтобы он работал только с буквами английского алфавита - C++

29.11.2016, 13:23. Просмотров 146. Ответов 3
Метки нет (Все метки)

Есть программа, определяющая, расположены ли буквы во введенной строке в порядке, обратном алфавитному.
Рабочая, опирается на аски-таблицы, сравнивая коды введенных символов.
Как правильно дополнить ее условием, чтобы она работала ТОЛЬКО на буквы английского алфавита верхнего и нижнего регистра? Т.к. сейчас она сравнивает и цифры, и символы типа *, {, " и тд
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <stdio.h>
#include <clocale>
int main()
{
    Setlocale(LC_ALL, "Russian");
    int bukva, etalon = 0;
    std::cout << "Vvedite posledovatelnost’ simvolov, zakanchivaushuysa EOF (Ctrl+Z)\n";
    std::cin >> bukva;
    etalon += getchar();
    while ((bukva = (getchar())) != EOF)
        if (etalon > bukva)
        {
            etalon = bukva;
        }
        else
        {
            std::cout << "\n Posledovatelnost' ne v poryadke, obratnom alphavitnomy \n";
            return 0;
        }
    std::cout << "Posledovatelnost' v poryadke, obratnom alphavitnomy \n";
    return 0;
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2016, 13:23
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Исправить код парсера так, чтобы он работал только с буквами английского алфавита (C++):

Как заполнить массив буквами английского алфавита ?
26 букв Добавлено через 48 секунд с помощью цикла for и по порядку !...

Из строки удалить все символы, кроме пробелов, не являющиеся буквами английского алфавита
Разработать консольное приложение. 1. Во введенной строке после k-го символа...

Шифр Виженера: переписать код так, чтобы программа не только зашифровала, но и расшифровала текст
Текст он зашифрует но не расшифрует. А как сделать чтобы он зашифровал и ...

Исправить код программы по выводу алфавита
#include &lt;iostream&gt; using namespace std; int main() { char letter; for...

Переписать файл так, чтобы термины выделялись прописными буквами
Помогите, пожалуйста. Задали написать вот такую программу &quot;В текстовом файле...

Сделать так, чтобы предикат работал тоже шаблонно, в зависимости от типа значений, хранимых ей
Здравствуйте! Имеется некий предикат, например: bool isInteger (double...

3
MrGluck
Модератор
Эксперт CЭксперт С++
8024 / 4867 / 1425
Регистрация: 29.11.2010
Сообщений: 13,253
29.11.2016, 13:27 #2
Лучший ответ Сообщение было отмечено Demeta как решение

Решение

Цитата Сообщение от Demeta Посмотреть сообщение
Как правильно дополнить ее условием, чтобы она работала ТОЛЬКО на буквы английского алфавита верхнего и нижнего регистра?
isalpha
1
Demeta
0 / 0 / 3
Регистрация: 13.11.2016
Сообщений: 12
29.11.2016, 13:38  [ТС] #3
Как здесь правильно использовать isalpha? Вставляю это в цикл, и программа перестает корректно работать
0
MrGluck
Модератор
Эксперт CЭксперт С++
8024 / 4867 / 1425
Регистрация: 29.11.2010
Сообщений: 13,253
29.11.2016, 13:48 #4
C++
1
if (etalon > bukva && isalpha(bukva ))
Добавлено через 39 секунд
Я бы еще все буквы при сравнении приводил бы в один регистр. Например, с помощью std::tolower
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.11.2016, 13:48
Привет! Вот еще темы с решениями:

Переписать файл так, чтобы слова в кавычках выделялись прописными буквами
Ребята, помогите, пожалуйста, дописать программу. Нужно сделать так, что есть...

Как изменить код, чтобы он работал со строкой, содержащей пробелы?
А как мне в своем коде изменить чтобы вместо «_» при наборе предложения можно...

Превратить строку так, чтобы сначала в ней были напечатаны только буквы, а потом только цифры
Превратить строку так, чтобы сначала в ней были напечатаны только буквы, а...

Сортировка букв английского алфавита
Здравствуйте, помогите решить проблему не пойму в чём дело необходимо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru