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

Генератор паролей (нужна проверка) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ сформировать матрицу http://www.cyberforum.ru/cpp-beginners/thread390054.html
Здравствуйте товарищи! Нужно сформировать матрицу В(4х4) из матрицы А (4х4), заменив элементы главной и побочной диагоналей матрицы А на элементы умноженные на сумму всех элементов. Заранее спасибо)
C++ Упорядочивание массива Что не так?((( #include <iostream> using namespace std; int main() { int n,i,j,c; int a={}; cout<<"vvedi kolichestvo elementov"<<endl; cin>>n; cout<<"vvedi elementi massiva"<<endl; http://www.cyberforum.ru/cpp-beginners/thread390038.html
По результатам лыжных соревнований в трех группах сформировать сборную команду из 7 человек C++
По результатам лыжных соревнований в трех группах сформировать сборную команду из 7 человек
C++ Кто может написать коды этих задачек?
пожалуйста, напишите коды этих задачек: 1) Задан массив из k чисел. Отсортировать элементы массива по возрастанию 2) Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 1, если k-я строка матрицы симметрична, и значение 0 - в противном случае. 3) Дана строка, состоящая из групп нулей и единиц. Подсчитать количество символов в самой длинной группе. 4) Для...
C++ Работа с базой данных SQLITE3 [Русские символы] http://www.cyberforum.ru/cpp-beginners/thread390013.html
Здравствуйте. Есть программа: #include <stdio.h> #include <stdlib.h> #include "sqlite3.h" int main() { sqlite3* db; int rc;
C++ зашифровать текст На C++ как зашифровать текст,чтобы буквы выводились в любом порядке в слове. подробнее

Показать сообщение отдельно
vortexx1
 Аватар для vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
23.11.2011, 17:57     Генератор паролей (нужна проверка)
Здравствуйте. Написал простенький генератор паролей задаваемой пользователем длины. Все вроде правильно работает, просто, пожалуйста, посмотрите и скажите, где и почему я мудак.

Особое внимание, пожалуйста, обратите на работу с динамическим выделением памяти. Большое спасибо.

C++
1
2
3
4
5
6
7
8
9
10
11
12
class PasswordGenerator
{
public:
    void askParameters();
    void generate();
    void output();
    
    ~PasswordGenerator();
private:
    int length;
    char *pass;    
};
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
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
#include "PasswordGenerator.h"
 
void PasswordGenerator::askParameters()
{
    cout << "Enter length of the password: ";
    cin >> length;
}
 
void PasswordGenerator::generate()
{
    srand( time( 0 ) );
 
    pass = new char[ length ];
    
    const char numbers[ 10 ] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
    const char letters[ 26 ] = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
                                 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
                                 'u', 'v', 'w', 'x', 'y', 'z' };
                                 
    int random_array, random_symbol;
    
    for( int i = 0; i < length; i++ )
    {
        random_array = 1 + rand() % 2;
        
        switch( random_array ) {
            case 1:
                pass[ i ] = numbers[ 0 + rand() % 10 ];
                break;
            case 2:
                pass[ i ] = letters[ 0 + rand() % 26 ];
                break;
        }
    }    
}
 
void PasswordGenerator::output()
{
     for( int i = 0; i < length; i++ )
         cout << pass[ i ];
         
     cout << endl;
}
 
PasswordGenerator::~PasswordGenerator()
{
    delete [] pass;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <conio.h>
#include "PasswordGenerator.h"
 
int main()
{
    PasswordGenerator password;
 
    password.askParameters();
    password.generate();
    password.output();
    
    password.~PasswordGenerator();
 
    getch();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru