Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
#1

Генератор паролей - C++

29.03.2014, 10:06. Просмотров 1691. Ответов 26
Метки нет (Все метки)

нужно сгенерировать пароль хотя что бы большие латинские буквы,
Коды английских символов - «A»=65,…,«Z»=90, «a»=97,…, «z» =122.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdlib.h>
main()
{
int x;
char a[20],i;
printf("vvesti dlinu parolya \n");
scanf("%d",&x);
printf("\n");
for(i=0;i<x+1;i++)
 {
  a[i]=rand()%(25+65);
 }
for(i=0;i<x;i++)
{
printf("%3c",a[i]);
}
getchar();
getchar();
}
вот что выдеат...
0
Миниатюры
Генератор паролей  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2014, 10:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Генератор паролей (C++):

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

Генератор паролей - C++
1. В таблице 1 найти требования, которым должен удовлетворять генератор паролей, соответствующий Вашему варианту. 2. Написать...

Генератор паролей - C++
Привет юзерам cyberforum'а. Требуется следующее: Написать программу - генератор паролей. Программа должна выполнять следующие...

Генератор паролей - C++
Здравствуйте! Мне нужна ваша помощь! Мне нужно, чтобы пароли которые я генерирую, записывались в шаблон Word, Excel и Блокнот (по...

генератор паролей - C++
кто нибудь может показать программку генератор паролей?

Генератор паролей - C++
Кто может чётко написать коментарии для генератора паролей Просто я учусь программировать на С++ и вот решил разбирать несложные коды ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Петррр
5956 / 3393 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
29.03.2014, 10:21 #2
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
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <string>
 
std::string genpass(size_t size)
{
    std::string pass;
    pass.reserve(size);
    for (size_t i = 0; i < size; i++)
    {
        char mode = std::rand() % 3;
        char ch = 0;
        switch (mode)
        {
            case 0:
                ch = rand() % 26 + 'a';
                break;
                
            case 1:
                ch = rand() % 26 + 'A';
                break;
                
            case 2:
                ch = rand() % 10 + '0';
                break;
        }
        pass.push_back(ch);
    }
    return pass;
}
 
int main()
{
    std::srand(std::time(0));
    std::cout << genpass(12U) << std::endl;
    return 0;
}
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
29.03.2014, 10:23 #3
Цитата Сообщение от Abdull2401 Посмотреть сообщение
a[i]=rand()%(25+65);
что сия аллегория означает? и чем отличается от
C++
1
a[i]=rand()%90;
0
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
29.03.2014, 10:24  [ТС] #4
Петррр, здесь получается ты сам выбираешь какие символы генерировать так??? если нажал 0 то маленькие если 1 то большие если 2 то цифры??
0
Петррр
5956 / 3393 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
29.03.2014, 10:24 #5
Abdull2401, режим того, какой вид символов генерируется, тоже делается рандом.
0
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
29.03.2014, 10:30  [ТС] #6
ValeryS, я синтаксис читал чтобы от 65 до 90 только символы крутиил
если по твоему смотреть то он будет по идее все 90 символов мне выдавать а мне надо только от 65 до 90

Добавлено через 1 минуту
Петррр, а почему rand()%3 он поидее только 3 символа будет крутить???

Добавлено через 38 секунд
Петррр, а ннет понял понял

Добавлено через 26 секунд
Петррр, здесь имеется ввиду что он по case проходить рандомно будет так?

Добавлено через 1 минуту
Петррр, кстати прога че то не пашет
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
29.03.2014, 10:30 #7
Цитата Сообщение от Abdull2401 Посмотреть сообщение
если по твоему смотреть
по моему, смотреть
я твое же выражение упросил
смотри
rand()%(25+65)
сначала действие в скобках 25+65=90
rand()%90
вот я и спрашиваю чем отличается?
Цитата Сообщение от Abdull2401 Посмотреть сообщение
я синтаксис читал чтобы
не важно что ты считал, важно что получилось
0
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
29.03.2014, 10:32  [ТС] #8
ValeryS,
C++
1
2
3
v1 = rand() % 100;         // v1 in the range 0 to 99
v2 = rand() % 100 + 1;     // v2 in the range 1 to 100
v3 = rand() % 30 + 1985;   // v3 in the range 1985-2014
Добавлено через 27 секунд
ValeryS, как я понял ты так указываешь диапазон...
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
29.03.2014, 10:33 #9
Цитата Сообщение от Abdull2401 Посмотреть сообщение
v3 = rand() % 30 + 1985;
разница есть
Цитата Сообщение от Abdull2401 Посмотреть сообщение
rand()%(25+65);
0
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
29.03.2014, 10:34  [ТС] #10
ValeryS, аа точно... капец глупо получилось...

Добавлено через 1 минуту
ValeryS, все заработало, только он выдает одни и те же символы...
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
29.03.2014, 10:35 #11
Цитата Сообщение от Abdull2401 Посмотреть сообщение
аа точно... капец глупо получилось...
вот вот
убери скобки и от одной ошибки избавишься

вторая ошибка, введи размер пароля больше 20
0
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
29.03.2014, 10:38  [ТС] #12
ValeryS, разницы нету, все равно одни и те же символы выдает...
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
29.03.2014, 10:38 #13
Цитата Сообщение от Abdull2401 Посмотреть сообщение
все заработало, только он выдает одни и те же символы...
нужно настроить генератор
прочитай про функцию srand
http://lord-n.narod.ru/download/book...C/18/srand.htm
0
Abdull2401
0 / 0 / 0
Регистрация: 02.05.2013
Сообщений: 38
29.03.2014, 10:39  [ТС] #14
ValeryS,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdlib.h>
main()
{
int x;
char a[5],i;
printf("vvesti dlinu parolya \n");
scanf("%d",&x);
printf("\n");
for(i=0;i<x+1;i++)
 {
  a[i]=rand()% 25+65;
 }
for(i=0;i<x;i++)
{
printf("%3c",a[i]);
}
getchar();
getchar();
}
решил проверить ввожу длину 6 все равно одни и те символы...
0
ValeryS
Модератор
6631 / 5038 / 466
Регистрация: 14.02.2011
Сообщений: 16,849
29.03.2014, 10:39 #15
Цитата Сообщение от Abdull2401 Посмотреть сообщение
разницы нету, все равно одни и те же символы выдает...
а я не про символы
введи хотя бы 50 и программа упадет
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2014, 10:39
Привет! Вот еще темы с ответами:

Генератор паролей - C++
Представляю Вам генератор паролей на C++. Спасибо пользователю nammidd за помощь в изменении расширения выходного файла. Описание:...

Генератор уникальных паролей - C++
реализовать генератор уникальных паролей на С++ при помощи средств ООП

Дописать генератор паролей - C++
Привет Всем !!! Мне нужно для этого генератора: 1) добавить ограничение ввода букв в (длину пароля и количество паролей); 2)...

Генератор паролей (нужна проверка) - C++
Здравствуйте. Написал простенький генератор паролей задаваемой пользователем длины. Все вроде правильно работает, просто, пожалуйста,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.03.2014, 10:39
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru