С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/34: Рейтинг темы: голосов - 34, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 01.10.2009
Сообщений: 7

Генератор пароля

01.10.2009, 00:19. Показов 7174. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста написать генератор паролей в С++, условие: 26 символов - ограничение, должен состоять из малых английских букв, ограничение длинны пароля 6 символов.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.10.2009, 00:19
Ответы с готовыми решениями:

Генератор пароля
Напишите функцию, которая случайным образом генирирует пароль из 8 символов. В пароле должны присутствовать только латинские буквы и цифры ...

Генератор пароля
Добрый вечер. Нужно написать программу-генератор паролей. Программа должна выполнять следующие действия: a) Ввод идентификатора...

Как реализовать генератор пароля?
условия: 1.выбор длина 2.Выбор букв(заглавные или нет \ или оба) 3. Выбирать Число или нет 4.Выбирать символы или нет //...

17
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
01.10.2009, 00:23
C++
1
2
3
4
char pass[7];
for(int i=0;i<6;i++)
pass[i] = (rand() % ( 'z'-'a' +1)) +'a';
pass[6]=0;
1
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
01.10.2009, 00:59
Лучший ответ Сообщение было отмечено как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
template <typename T>  
struct ch
{
    ch(T a, T b) : a_(a), b_(b) { srand(static_cast<unsigned>(time(NULL))); }
 
    T operator()() const 
    {
        return rand() % (b_ - a_ + 1) + a_;
    }
 
    T a_, b_;
};
 
std::string generate(size_t len)
{
    std::string s;
    s.resize(len);
    std::generate(s.begin(), s.end(), ch<char>('a', 'z'));
    return s;
}
std::string s = generate(6);
3
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
01.10.2009, 01:17
Rififi, вряд ли автор вопроса поймет твой код,но мне он нравится)
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
01.10.2009, 09:42
Не удержался
0
0 / 0 / 0
Регистрация: 01.10.2009
Сообщений: 7
01.10.2009, 14:26  [ТС]
XuTPbIu_MuHTAu все понятно спасибо. Rififi тоже понятно, и спасибо за разные варианты кода.

Добавлено через 5 минут
имеется ввиду спасибо обоим.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
01.10.2009, 14:52
у меня там ошибочка оказывается - надо перед первой строкой дописать template <typename T>
1
0 / 0 / 0
Регистрация: 01.10.2009
Сообщений: 7
01.10.2009, 15:19  [ТС]
Ясно.
0
0 / 0 / 0
Регистрация: 01.10.2009
Сообщений: 7
12.10.2009, 19:14  [ТС]
Ошибка у меня в билдере шестом такая "" [Linker Fatal Error] Fatal: Unable to open file 'BCBCLXIDE.BPI' "" при попытке запустить исходный код с формой, тобишь прогу. что делать?
0
0 / 0 / 0
Регистрация: 01.10.2009
Сообщений: 7
12.10.2009, 23:46  [ТС]
Проблему решил.

Добавлено через 25 минут
Еще ребят 1 раз помогите пожалуйста, задача
Написать программу-генератор паролей
Программа должна выполнять следующие действия:
Ввод идентификатора пользователя с клавиатуры. Данный идентификатор представляет собой последовательность символов a1,a2...aN, где N – количество символов идентификатора (может быть любым), ai - i – ый символ идентификатора пользователя.
Формирование пароля пользователя b1,b2,,,bM для данного идентификатора, где M – количество символов пароля, и вывод его на экран. Алгоритм получения символов пароля bi указан далее.



требование к генератору:
Количество символов пароля 9
1. b1,b2...b1+Q это случайная цифра.
2. Оставшиеся символы пароля, кроме b9, - случайные малые буквы русские алфавита.
3. b9 это случайные символы из множества {!,”,#,$,%,&,’,(,),*}, где Q=Nmod5;
0
0 / 0 / 0
Регистрация: 01.10.2009
Сообщений: 7
13.10.2009, 18:45  [ТС]
Уже не надо, почистите тему пожалуйста.
0
mica
06.07.2011, 03:52
Похоже, рано или поздно все приходят к этой задаче о_О
Может стоило создать новую тему, но я терпеть-ненавижу дублировать одно и тоже десятки раз.. тем более что вопрос аналогичный.

Нужно создать ряд всех возможных комбинаций из введенных пользователем символов.

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

собсна вопрос:
Как вывести все возможные комбинации от 5 до 10-и символов из массива символов (и прописать все варианты в другой массив.. но это я наверное уже осилю))?
Гугль меня не спас

Заранее спасибо за подсказку.
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,854
06.07.2011, 05:17
Цитата Сообщение от mica Посмотреть сообщение
все возможные комбинации от 5 до 10-и символов
ВСЕ???? комбинациии
в латинском алфавите 26 букв количество комбинаций 26 в 10 степени
если использовать большие и малые буквы и цифры 62 в 10
если использовать только то что ввел пользователь и то 10 в 10
Или я чего-то не понял?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
06.07.2011, 09:57
mica, эту тему почитайте...
0
mica
06.07.2011, 13:42
Цитата Сообщение от ValeryS Посмотреть сообщение
ВСЕ???? комбинациии
в латинском алфавите 26 букв количество комбинаций 26 в 10 степени
если использовать большие и малые буквы и цифры 62 в 10
если использовать только то что ввел пользователь и то 10 в 10
Или я чего-то не понял?
все комбинации но не из всех символов...

пользователь вводит необходимые 10 и идет работа только с ними


easybudda, сейчас изучу, спасибо!
Higher
 Аватар для diagon
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
06.07.2011, 14:08
Не проще ли STL использовать...
C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <algorithm>
int main(){
    std::string line;
    std::getline(std::cin, line);
    do  std::cout << line << std::endl; while (next_permutation(line.begin(),line.end()) );
    return 0;
}
0
3012 / 1446 / 262
Регистрация: 16.03.2008
Сообщений: 6,449
Записей в блоге: 2
06.07.2011, 15:57
Цитата Сообщение от mica Посмотреть сообщение
Нужно создать ряд всех возможных комбинаций из введенных пользователем символов.
Может быть как то так
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
static int size = 3; // размер словаря
static int lenght = 2; // размер последовательности
 
// опеределяем использовался ли данный символ
int exists(char *var, char c)
{
    while (*var!='\0')
    {
        if (*var==c) return 1;
        ++var;
    }
    return 0;
}
// посик и вывод последовательностей
void printVar(char *a,int level, int len ,char *var)
{
    char *tmp = a;
    for(tmp=a;(*tmp)!='\0';++tmp)
    {
        *(var+level)='\0';
        if (exists(var,*tmp)==0)
        {
            *(var+level-1)=*tmp;
            if (level==len)
                printf("%s\n",var);
            else
                printVar(a,level+1,len,var);
        }
    }
}
 
int main()
{
    char *arr= "abcd";
    char var[lenght+1];
    var[lenght]='\0';
    printVar(arr,1,lenght,var);
    return 0;
}
Добавлено через 3 минуты
lenght можно не протаскивать качестве параметра это пережиток попыток
0
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,854
06.07.2011, 21:37
Цитата Сообщение от mica Посмотреть сообщение
пользователь вводит необходимые 10 и идет работа только с ними
в результате 10! комбинаций
есть еще один прикол при решении в лоб
если ввести
ааа
то
комп честно отарабанит тебе 6 раз ааа
поскольку честно будет перестовлять все буквы
есть два решения(по крайней мере я так вижу)
1решение
сгенерить все последовательности
повторы выбросить
2 решение
подсчитать количество разных символов введеных пользователем
провести частотный анализ (сколько раз повторяется каждый символ)
из полученого результата генерить последовательности
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.07.2011, 21:37
Помогаю со студенческими работами здесь

Разработать генератор одноразового пароля
Помогите пожалуйста разработать генератор одноразового пароля на основе псевдослучайного выбора символов из данных, введенных...

Генератор пароля. Оцените его компактность и непредсказуемость
Сделал за 10 минут генератор. Оцените компактность и непредсказуемость(рандомность) пароля, пожалуйста :) #include&lt;conio.h&gt; ...

Создать генератор паролей в котором можно указать длину пароля и количество паролей
Помогите пожалуйста! Задание: Нужно создать генератор паролей в котором можно указать длину пароля и количество паролей то есть длина...

Оценка безопасности пароля путем перебора пароля из словаря
Разработать программное обеспечение для оценки степени безопасности паролей пользователей. Я уже скачал пару словарей паролей из...

Зопрос пароля, смена пароля
Привет всем. Подскажите как попроще задать в программе запрос пароля перед исполнением определенного кода, а при необходимости вдальнейшем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru