Ввод пароля с отображением звездочки вместо символа - Turbo Pascal
Формулировка задачи:
Составить программу, обеспечивающую ввод пароля с отображением вместо символа «*».
Примечание: в результате на экране должно отображаться диалоговое окно, содержащее сообщение: «Введите пароль». Если пароль введен не верно, выводится соответствующее сообщение, если ошибка ввода повторяется, то отказ в доступе. Если пароль введен, верно, то ведется запуск любой программы.
Решение задачи: «Ввод пароля с отображением звездочки вместо символа»
textual
Листинг программы
- uses
- crt;
- const
- z:string='qwerty';
- var
- a:char;
- b:string;
- c:integer;
- begin
- c:=2;
- repeat
- ClrScr;
- write('Enter password:');
- b:='';
- repeat
- a:=ReadKey;
- write('*');
- if a<>chr(13) then b:=b+a;
- until a=chr(13);
- writeln;
- if b<>z then
- begin
- writeln('wrong pssword');
- dec(c);
- delay(10000);
- end;
- until(c=0)or(b=z);
- if c>0 then
- begin
- writeln('Start any program . . . ');
- end
- else
- begin
- writeln('wrong access . . .');
- end;
- delay(10000);
- end.
Объяснение кода листинга программы
- Подключается библиотека crt.
- Определяется константа z, которая содержит строку
qwerty
. - Определяются переменные a, b и c. Переменная a типа char, переменная b типа string, а переменная c типа integer.
- Значение переменной c устанавливается равным 2.
- Запускается цикл repeat, который будет выполняться до тех пор, пока значение переменной c не станет равным нулю или пока значение переменной b не станет равным константе z.
- Внутри цикла в консоль выводится сообщение
Enter password:
. - Переменная b сбрасывается в пустую строку.
- Запускается цикл repeat, который будет выполняться до тех пор, пока введенный пользователем символ не станет равным символу перевода строки (chr(13)).
- Если введенный пользователем символ не равен символу перевода строки, то к строке b добавляется введенный пользователем символ.
- После получения символа перевода строки, в консоль выводится сообщение
*
. - Цикл повторяется до тех пор, пока введенный пользователем символ не станет равным символу перевода строки.
- Если введенный пользователем пароль совпадает с константой z, то выводится сообщение
wrong access . . .
. - Если введенный пользователем пароль не совпадает с константой z, то уменьшается значение переменной c на единицу и выводится сообщение
wrong pssword
. - Если значение переменной c равно нулю, то выводится сообщение
Start any program . . .
. - Программа завершается после задержки в 10 секунд.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д