Другие языки программирования и технологии
как сделать де кодировщик символа в C++?
Добрый день, господа программисты. Такая проблема, нужна программа в C++ для вывода кода введенного символа и наоборот. Пропустил несколько занятий, вот теперь пытаюсь наверстать. Благодарю
Для Visual Studio.
#include < iostream >
#include < windows.h >
#include < string >
using namespace std;
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
system("color 0A");
//Получение кода по символу
char c;
for (;;)
{
cout << "Введите один символ ";
string s;
getline(cin, s);
if (s.size() == 1)
{
c = s[0];
break;
}
else
{
cout << "Ошибка. Введено более 1 символа. Повторите ввод" << endl;
}
}
cout << "Код введённого символа " << static_cast < unsigned > (c) << endl;
//Получение символа по коду
unsigned cd;
for (;;)
{
cout << "введите код символа ";
cin >> cd;
bool valid = !!cin;
if (valid && cin.rdbuf()->in_avail() == 1)
{
if (cd >= 0 && cd <= 255)
{
break;
}
}
else
{
if (!valid)
{
cin.clear();
}
if (cin.rdbuf()->in_avail() != 1)
{
cin.ignore(cin.rdbuf()->in_avail(), '\n');
}
cout << "Ошибка. Введено не число или нет символа с указанным номером. Повторите ввод" << endl;
}
}
cout << "Символ " << static_cast < char > (cd) << endl;
system("pause");
return 0;
}
#include < iostream >
#include < windows.h >
#include < string >
using namespace std;
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
system("color 0A");
//Получение кода по символу
char c;
for (;;)
{
cout << "Введите один символ ";
string s;
getline(cin, s);
if (s.size() == 1)
{
c = s[0];
break;
}
else
{
cout << "Ошибка. Введено более 1 символа. Повторите ввод" << endl;
}
}
cout << "Код введённого символа " << static_cast < unsigned > (c) << endl;
//Получение символа по коду
unsigned cd;
for (;;)
{
cout << "введите код символа ";
cin >> cd;
bool valid = !!cin;
if (valid && cin.rdbuf()->in_avail() == 1)
{
if (cd >= 0 && cd <= 255)
{
break;
}
}
else
{
if (!valid)
{
cin.clear();
}
if (cin.rdbuf()->in_avail() != 1)
{
cin.ignore(cin.rdbuf()->in_avail(), '\n');
}
cout << "Ошибка. Введено не число или нет символа с указанным номером. Повторите ввод" << endl;
}
}
cout << "Символ " << static_cast < char > (cd) << endl;
system("pause");
return 0;
}
Это всё, что было пройдено за несколько занятий? Начинаю понимать, почему люди идут в универ. Лафа полнейшая, а в конце ещё и корочку дарят
Преобразование в тип кода символа: unsigned(c)
Преобразование наоборот: char(c)
Преобразование наоборот: char(c)
Если ты пропустил несколько занятий, надо скачать (или купить) книгу и изучать самостоятельно. Желательно это сделать, даже если бы ты не пропустил несколько занятий. Думаешь, три строки кода заменять несколько часов лекции?
Похожие вопросы
- Как сделать нарисованное поле интерактивным в C#?
- Как сделать добавление удаление редактирование EF C#
- Как сделать многопоточное воспроизведение звука в c#
- C++ Как изменить программу, чтобы после каждого заданного символа вставлялся (не заменялся) символ "\n".
- VS 2010 C++ error LNK2019: ссылка на неразрешенный внешний символ
- C#. Как сделать, чтобы программа проверяла тип введённой переменной?
- Не могу сделать калькулятор C++
- Как сделать Random в C#
- как в delphi сделать чтобы при нажатии на определенную кнопку выводился другой символ??
- C# Как сделать сохранение игры и запуск сохраненной игры?
Далее, с чего вы взяли что было пройдено "всего несколько " занятий?
И да, я пропустил довольно много, и не без причины, и пытаюсь нагнать материал. Но опять же, это совершенно не ваше дело.
Хорошего вам дня