Как написать программу для паролей

Здравствуйте. Решил ради интереса написать программу, которая как-бы регистрирует пользователя. Необходимо ввести пароль. В случае если условия соблюдаются [Только заглавные и строчные буквы, цифры (обязательно, чтобы они были) и длина пароля не больше 20 символов], то пароль засчитывается. Если нет, то пароль не засчитывается. У меня есть несколько вопросов.

1. Строки 13-26. Например я ввожу 20 символов, жму Enter, затем Cntrl+Z и опять Enter. Почему в итоге у меня получается 21 символ. 21 символ это ‘n’? Но почему же он тогда оказался 21 элементом массива, если у меня по условию в массив вводятся только буквы и цифры. И второй вопрос. Как можно было бы улучшить эту программу? А то как по мне какая-то херотень громоздкая вышла. Хочется улучшить программу.

Спасибо!

#include int main() < int num = 0; //кол-во знаков в пароле int i; //счетчик int password[21]; //пароль int c; //символ int A = 0; //заглавные буквы int a = 0; //строчные буквы int d = 0; //цифры int check = 1; //t/f while ((c = getchar()) != EOF) < if (((c >= ‘0’ c = ‘a’ c = ‘A’ c = ‘A’ c = ‘a’ c = ‘0’ c else if (c!=’n’) check = 0; > if (check == 0) printf(«Fu!»); else if ((A >= 1) (a >= 1) (d >= 1)) < printf(«OK!n»); for (i = 0; i printf(«n»); system(«pause»); return 0; >

Доработанная версия.

Крутой заказ на фрилансе | Подбираем забытый пароль к Excel файлу с помощью Python


#include int main() < int num = 0; //кол-во знаков в пароле int i; //счетчик int password[21]; //пароль int c; //символ int A = 0; //заглавные буквы int a = 0; //строчные буквы int d = 0; //цифры int check = 1; //t/f while ((c = getchar()) != EOF) < if (((c >= ‘0’ c = ‘a’ c = ‘A’ c = ‘A’ c = ‘a’ c = ‘0’ c else if (c!=’n’) check = 0; > if (check == 0) printf(«Fu!»); else if ((A >= 1) (a >= 1) (d >= 1)) < printf(«OK!n»); for (i = 0; i else printf(«FU!»); printf(«n»); system(«pause»); return 0; >
#include int main() < int num = 0; //кол-во знаков в пароле int i; //счетчик int password[21]; //пароль int c; //символ int A = 0; //заглавные буквы int a = 0; //строчные буквы int d = 0; //цифры int check = 1; //t/f while ((c = getchar()) != EOF) < if (((c >= ‘0’ c = ‘a’ c = ‘A’ c = ‘A’ c = ‘a’ c = ‘0’ c else if (c!=’n’) check = 0; > if ((A >= 1) (a >= 1) (d >= 1) (check != 0)) < printf(«OK!n»); for (i = 0; i else printf(«FU!»); printf(«n»); system(«pause»); return 0; >

Читайте также:
Программа для создания блок схемы на русском

И да! Еще стоит учитывать, что в этом коде отображаются все мои знания синтаксиса языка. То етсь нужно именно в рамках моих знаний.

Код к задаче: «Программа для ввода пароля»

Листинг программы

#include #include #include #define MAX_PASSWORD_LENGTH (20) const char * REQUIRED_SYMBOLS[] = < «0123456789», «abcdefghijklmnopqrstuvwxyz», «ABCDEFGHIJKLMNOPQRSTUVWXYZ», NULL >; int test_password(const char * s, const size_t maxLength, const char ** dict) < if ( strlen(s) for ( ; *dict strpbrk(s, *dict); ++dict ) ; return ( *dict != NULL ); > return 1; > int main(void)

ГЕНЕРАТОР ПАРОЛЕЙ НА PYTHON ЗА 10 МИНУТ

Источник: studassistent.ru

Надежный пароль с помощью Python

При получении доступа к информационным ресурсам, особенно в условиях удаленной работы нам нередко приходится сталкиваться с придумыванием надежного пароля. А если ресурсов много (корпоративные, публичные, частные и т.п.), и по требованиям кибербезопасности пароли к разным информационным ресурсам тоже должны быть разными, как избежать их повторяемости и избавиться от муки креативности в данном вопросе?

Предлагаем поручить задачу генерации надежного пароля программе на языке Python (пусть у питона голова болит))).

Условия, предъявляемые различными ресурсами, к надежности пароля чаще всего следующие:

  • Пароль содержит не менее 12 символов
  • Пароль содержит хотя бы одну заглавную букву
  • Пароль содержит хотя бы одну строчную букву
  • Пароль содержит хотя бы одну цифру
  • Пароль содержит хотя бы один спецсимвол

Вот как это можно реализовать с помощью Python:

И при каждом запуске кода, вы будете получать уникальный пароль, соответствующий всем необходимым требованиям.

Источник: vc.ru

Как написать программу для паролей

Здраствуйте, я решил попробовать написать программу для сохранения и вывода паролей ,которые я введу.Эти пароли должны сохранятся в файле znak на диске Д.Вот код программы:

Читайте также:
Что такое компьютерная программа 1с

program p7_8; Type znak=record; login:string[100]; password:string[200]; name_pass:string[200]; kod:byte; end; Var res:znak; f:file of znak; n,i:byte; p_m:byte; Procedure create; Var x:char; begin write(‘Vi deistvitelno hotite ydalit stariy fail i sozdat noviy?y/n:’); readln(x); if(x=’n’) then writeln(‘Sozdanie otmeneno!’) else begin rewrite(f); n:=1; repeat writeln(‘Vvedite dannue o’,n,’m cheloveke’); writeln(‘login:’); readln(res.login); writeln(‘password:’); readln(res.password); writeln(‘Ot chego parol?’); readln(res.name_pass); writeln(‘nomer:’); readln(res.kod); write(f,res); write(‘Hotite prodolgit vvod dannih?y/n:’); readln(x); inc(n); until x<>’y’; close (f);readln; end; end; procedure shapka; begin writeln(‘_____________________________________________’); writeln(‘| # |name|znak zodiaka| data rogdeniya |’); writeln(‘_____________________________________________’); end; Procedure viev; var n:byte; begin read(f); n:=1; shapka; while not(eof(f)) do read(f,res); writeln(‘|’,n:3,res.login:15,’| ‘,res.password:20,’ | ‘,res.name_pass:20,’| ‘,res.kod:5,’ |’); inc(n); end; Procedure spisok; var n:byte; name_pass1 : string[20]; begin reset(f); writeln(‘Vvedite nazvanie parolia,naprimer «Origin»:’); readln(name_pass1); n:=1; Shapka; read(f,res); writeln(‘|’,n:3,res.login:15,’| ‘,res.password:20,’ | ‘,res.name_pass:20,’| ‘,res.kod:5,’ |’); inc(n); while not(eof(f)) do begin read(f,res); if(name_pass1[20]>res.name_pass) or(name_pass1=res.name_pass) and(name_pass1>res.name_pass[20]) then begin read(f,res); if(name_pass1[20]>res.name_pass) or(name_pass1=res.name_pass) and(name_pass1>res.name_pass[20]) then inc(n); end; end; if n=1 then write(‘ net cheloveka’); writeln(‘_____________________________________________’); close(f); readln; end; Begin assign(f,’D:znak.txt’); repeat writeln(‘ Menu:’); writeln(‘1.Vvod parolei’); writeln(‘2.Prosmotr faila’); writeln(‘3.Poisk parolei’); writeln(‘4.Dobavlenie parolei’); writeln(‘5.Exit’); writeln(‘ Viberite punkt menu’); readln(p_m); case p_m of 1:create; 2:viev; 3:spisok; 4:add; 5:writeln(‘Do vstrechi!’); else write(‘Neverno.Povtorite popitku!’); end; until p_m=5; readln; end.

Тут ток надо смотреть на процедуру список и креате. Эту прогу я переделал из своей же, программи которая должна делать тоже самое с знаками зодиака.

Вот я ввел 2 имени, 2 пароля и 2 кода ,но по запросу имени 2 пароля выводится сообщение что невозможно прочитать файл наоборот и выводится в таблице 1 пароль.Помогите мне пожалуйсто исправить вывод в этой программе.

Источник: www.programmersforum.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru