Используя switch по длине введённого числа определить права сотрудника - C (СИ)
Формулировка задачи:
Для работы с базой данных сотрудник должен ввести пароль.Пароли,представляющие собой двузначные числа,означают,что сотруднику разрешен доступ только для просмотра данных;трёхзначные числа означают,что можно просматривать и вводить новые данные;четырёхзначные числа позволяют не только вводить новые данные,но и изменять существующие;пятизначные цифры соответствуют правам администратора. Напишите программу,которая по введённому числу будет выводить надпись,уведомляющую сотрудника о его правах.
Решение задачи: «Используя switch по длине введённого числа определить права сотрудника»
textual
Листинг программы
#include <iostream>
#include <cstdlib>
#include <clocale>
using namespace std;
int main(void)
{
setlocale(LC_ALL, "Rus");
unsigned n;
do {
cout << " Выберите действие:" << endl;
cout << " 1. Ввести пароль" << endl;
cout << " 2. Выход\n" << endl;
do {
cout << "Ввод: "; cin >> n;
if (n < 1 || n > 2) cerr << "[err] Некоректный ввод!" << endl;
} while (n < 1 || n > 2);
if (n == 1) {
system("cls"); long long pass;
cout << "**** Авторизация ****" << endl;
cout << "[info] Используйте числа от 0 до 9\n" << endl;
cout << "Введите пароль : "; cin >> pass;
size_t count = 0;
while (pass % 10) {
++count;
pass /= 10;
}
switch (count) {
case 2:
cout << "text 2\n" << endl; break;
case 3:
cout << "text 3\n" << endl; break;
case 4:
cout << "text 4\n" << endl; break;
case 5:
cout << "text 5\n" << endl; break;
default:
cerr << "[err] Не правильный пароль!\n" << endl; break;
}
system("pause"); system("cls");
}
} while (n != 2);
system("pause");
return 0;
}