Написать программу, печатающую символы от A
до введенного с клавиатуры символа (последний возможный: Z
).
Для каждого символа вывести номер, сам символ, шестнадцатеричный, восьмеричный и двоичный код этого символа. Предусмотреть обработку ошибок.
В чём нужна помощь: как проверить, если было введено что угодно, кроме единственного символа A..Z
(например, Aa
- это неверный ввод)? То есть как проверить, лежит ли что-либо в буфере... или, может, более хороший и универсальный подход есть?
Нужна реализация именно с использованием потоков, так как лабораторка основана на этом (вторая часть задания - обработка исключений с использованием if (!cin)
и т. д., и т. п.).
Мне нужно не очищать поток через cin.clear()
или cin.ignore()
, а конкретно заранее проверять, введено ли то, что требуется, и ничего более.
Собственно, имеющийся на данный момент код:
#include <iostream>
#include <bitset>
#include <iomanip>
using namespace std;
int main()
{
char cEnd, cStart;
int cNo = 1;
while (1)
{
cout << "Vvedite simvol ('A' dlya vihoda): ";
cin >> cEnd;
if ((cEnd >= 'A') && (cEnd <= 'Z'))
{
for (cStart = 'A'; cStart != cEnd + 1; cStart++, cNo++)
{
cout << setw(2) << cNo << ' ' << cStart << ' ';
cout << ios::hex << cStart << ' ';
cout << ios::oct << cStart << ' ';
cout << bitset<8>(cStart) << "\n";
}
cin.clear();
cin.ignore();
}
else
{
cout << "Neverniy vvod\n";
system("pause");
system("cls");
continue;
}
cNo = 1;
if (cEnd == 'A')
break;
}
return 0;
}
Вероятно, вам нужна функция peek()
, которая как раз и смотрит - есть ли что в буфере, и что именно?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Я начал писать проект с нуля, поэтому я хотел реализовать DependencyInjectionВыбрал Grace, потому что он уже реализован на старом проекте, его писал не я, так...
Столкнулся с тем, что DOTween неравномерно изменяет значение
Пытаюсь реализовать форму регистрации для БДПосле запуска Winform выдает ошибку
Пишу админ бота для Телеграма и мне нужно проверить пользователя на админ права, и если он не просто участник а админ, то код должен работать,...