Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.83/29: Рейтинг темы: голосов - 29, средняя оценка - 4.83
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116

Как должен выглядеть образец класса «Населенный пункт»

03.09.2014, 20:29. Показов 6724. Ответов 77
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
надо было у препода спросить это, просто прочитал в методичке это уже дома, вот задание:
Кликните здесь для просмотра всего текста
Лабораторное задание
Разработать консольное приложение, в котором должен быть реализован простой класс в соответствии с вариантом задания.
Требования к классу:
– Класс должен содержать конструктор без параметров. В конструкторе должны инициализироваться переменные класса значением по умолчанию.
– Класс должен содержать два или более конструкторов с параметрами. В конструкторах должны инициализироваться переменные класса значениями, которые переданы в параметрах конструктора. Если для какой-либо переменной класса в параметрах конструктора не предусмотрен параметр, то переменная должна инициализироваться значением по умолчанию.
– Класс должен содержать деструктор. В деструкторе все переменные класса должны быть затерты (присвоены недействительные значения).
– Класс должен содержать три или более методов класса (функций). Методы должны быть реализованы в трех секциях: public, protected и private. В каждом методе должно быть обращение к одной или более переменной класса.
– Класс должен содержать три или более (в соответствии с вариантом задания) переменных класса. Переменные класса должны быть реализованы в трех секциях: public, protected и private.
– Класс должен содержать одну или более переменную со строковыми данными. Строковые данные должны задаваться только с использованием массива символов (char str1[100] или wchat_t str2[200]).
– В классе должны быть реализованы два метода: Input и Output. Метод Input должен выполнять ввод данных класса с клавиатуры. Метод Output должен печатать на экране данные класса. Методы должны располагаться в секции public

и вариант
Кликните здесь для просмотра всего текста
10. Класс «Населенный пункт» (название, количество жителей, географические координаты, виды общественного транспорта и т.д.).

так то все это элементарно, просто даже не представляю какие можно сделать переменные и методы в private и protected??? т.е. основные переменные из самого варианта (название, количество...) они в public, а какие должны быть еще переменные и методы в private и protected я без понятия...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.09.2014, 20:29
Ответы с готовыми решениями:

Вывести время отправления и номера маршрутов, проходящих через данный населенный пункт
Мне нужно написать программу: Создать массив, в котором записать информацию о маршрутах автобусов: номер маршрута, перечень населенных...

Как должен выглядеть код уравнения p=a(a+1)*(a+2).(a+n-1)
Вообще не вдупляю как это уравнение выглядит в коде P=a(a+1)*...*(a+n-1)

Как должен выглядеть POST и GET запросы к нужному ресурсу?
Всем привет! Пишу приложение, используя библиотеку cURL и застрял на том, что не могу определить как должен выглядеть POST и GET...

77
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
04.09.2014, 18:15  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от 0x10 Посмотреть сообщение
Имя файла лучше передать параметром. Еще лучше передать сразу поток, но сейчас не об этом.
не забывайте изначально речь шла вообще о том чтобы каждый раз вбивать всю эту хрень вручную, так что уж можно не полениться и присобачить сюда запрос хотя бы имени файла с данными... дабы не запрашивать для каждого экземпляра класса эти имена в мейне
Цитата Сообщение от 0x10 Посмотреть сообщение
Далее. Эта же строчка.
Указатель filename указывает на строковую константу - "". Т.е. указатель нужно заменить на честный буфер фиксированого размера.
суть от этого не меняется, а ошибок это не вызывает...
ошибки вызывают строки внутри while
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
04.09.2014, 18:17
Цитата Сообщение от GetHelp Посмотреть сообщение
суть от этого не меняется, а ошибок это не вызывает...
Упадет во время выполнения.

Считывание из файла уже прокомментировал.
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
04.09.2014, 18:26  [ТС]
хорошо пускай так

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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#include <iostream>
#include <fstream>
#include <vector>
 
using namespace std;
 
class town
{
private:
    char name[100];
    char* getname() { return name; }
    double latitude;
    double longitude;
    vector<char[100]> transport;
public:
    town()
    {
        strcpy(name, "");
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport.clear();
    }
    town(char _name[100])
    {
        strcpy(name, _name);
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport.clear();
    }
    town(char _name[100], size_t _population, double _latitude, double _longitude, vector<char[100]> _transport)
    {
        strcpy(name, _name);
        population = _population;
        latitude = _latitude;
        longitude = _longitude;
        transport = _transport;
    }
    ~town()
    {
        strcpy(name, "");
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport.clear();
    }
    bool Input()
    {
        char filename[100];
        cout << "filename: ";
        cin >> filename;
        sprintf(filename, "input\\%s", filename);
        ifstream stream(filename);
        if (!stream.is_open()) return false;
        while (!stream.eof())
        {
            char str[100];
            stream.getline(str, 100);
            sscanf(str, "name=%s", name);
            stream.getline(str, 100);
            sscanf(str, "population=%d", &population);
            stream.getline(str, 100);
            sscanf(str, "latitude=%f", &latitude);
            stream.getline(str, 100);
            sscanf(str, "longitude=%f", &longitude);
        }
    }
    bool Output()
    {
        cout << "name=" << name << "\n";
        cout << "population=" << population << "\n";
        cout << "latitude=" << latitude << "\n";
        cout << "longitude=" << longitude << "\n";
        cout << "transport=";
        for (auto t : transport) cout << t;
    }
protected:
    size_t population;
    size_t getpopulation() { return population; }
};
 
int main()
{
    return cin.get();
}
во 1 вываливается какая то уж совсем странная ошибка: "error C2106: =: левый операнд должен быть левосторонним значением" указывающая на какой то совершенно левый файл xutility
во 2 по прежнему не знаю как транспорт считать

Добавлено через 3 минуты
з.ы. и вообще мне кажется что sscanf это как то не по плюсовому
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
04.09.2014, 18:35
Первая проблема, которую вижу, в строке 38. Откуда вектору знать как правильно копировать обычные массивы.
Цитата Сообщение от GetHelp Посмотреть сообщение
з.ы. и вообще мне кажется что sscanf это как то не по плюсовому
Учитывая, что нельзя использовать std::string, тут будет чисто сишный код, который парсит строки.
Цитата Сообщение от GetHelp Посмотреть сообщение
во 2 по прежнему не знаю как транспорт считать
Вручную обходить строку, запоминать позиции разделителей (запятых) и копировать куски строки между ними в результирующую строку.
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
04.09.2014, 18:43  [ТС]
Цитата Сообщение от 0x10 Посмотреть сообщение
Первая проблема, которую вижу, в строке 38. Откуда вектору знать как правильно копировать обычные массивы.
не обычные массивы, а еще один вектор, у векторов же вроде перегружен оператор присваивания... на крайняк можно использовать что то типа assign, но мне кажется тут это не нужно...
Цитата Сообщение от 0x10 Посмотреть сообщение
Учитывая, что нельзя использовать std::string, тут будет чисто сишный код, который парсит строки.
вообще в методичке не написано что совсем нельзя юзать string, юзаю же я vector (ой боюсь только не заставил бы он меня это переделывать...), так что думаю в данном локальном случае можно заюзать и string, в методичке написано юзать массивы символов только для переменных класса, а не для локальных...
Цитата Сообщение от 0x10 Посмотреть сообщение
Вручную обходить строку, запоминать позиции разделителей (запятых) и копировать куски строки между ними в результирующую строку.
щас буду думать...
0
04.09.2014, 18:56

Не по теме:

Цитата Сообщение от GetHelp Посмотреть сообщение
РРРРР... да что за бред вы несете !!! какие нафиг значения по умолчанию??? вы можете изъясняться хоть немного более развернуто???
Тебе надо в каждом сообщении ему плюсов наставить уже хотя бы за то, что он это (процитированное) терпит.
Не говоря уже про то, что ни в одном из своих сообщений он не сказал ничего неправильного.
Цени это.

0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
05.09.2014, 16:52  [ТС]
Цитата Сообщение от GetHelp Посмотреть сообщение
во 1 вываливается какая то уж совсем странная ошибка: "error C2106: =: левый операнд должен быть левосторонним значением" указывающая на какой то совершенно левый файл xutility
пожалуйста помогите мне с этой ошибкой, ибо никак даже не могу дальше продвинуться из за нее, совершенно не понятно откуда она взялась и что это за файл...
0
1123 / 794 / 219
Регистрация: 15.08.2010
Сообщений: 2,185
05.09.2014, 18:30
Цитата Сообщение от GetHelp Посмотреть сообщение
пожалуйста помогите мне с этой ошибкой,
0x10 в предыдущем сообщении достаточно точно указал место ошибки. Если сомневаетесь, закомментируйте подозрительные строки по очереди.

Не по теме:

ну и неплохо бы последовать совету DrOffset

0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
05.09.2014, 18:35  [ТС]
Цитата Сообщение от КОП Посмотреть сообщение
0x10 в предыдущем сообщении достаточно точно указал место ошибки. Если сомневаетесь, закомментируйте подозрительные строки по очереди.
закомментил эту строку, вылезла другая ошибка: "error C3074: массив может инициализироваться только с помощью списка инициализатора", тоже указывает на какой то левый файл...
0
19506 / 10109 / 2464
Регистрация: 30.01.2014
Сообщений: 17,834
05.09.2014, 18:43
GetHelp, это из-за vector<char[100]>.
Раз ты все равно используешь C++11, то
1) Подключи #include <array>
2) Замени vector< char[100] > на vector< array<char, 100> > (в двух местах)
3) Замени for (auto t : transport) cout << t; на for (auto t : transport) cout << t.data();
1
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
06.09.2014, 11:58  [ТС]
DrOffset,
1, 2 строки велено именно в виде такого массива представлять... вектор я уже юзаю чтобы не париться с динамическими массивами при загрузке списка транспорта
3 совсем уже глупость, там t будет иметь тип char*
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
06.09.2014, 12:02
Цитата Сообщение от GetHelp Посмотреть сообщение
3 совсем уже глупость
Третий пункт справедлив при условии выполнения первых двух.
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
06.09.2014, 12:13  [ТС]
Цитата Сообщение от 0x10 Посмотреть сообщение
Третий пункт справедлив при условии выполнения первых двух.
ну так или иначе мне не подходят первые 2 по заданию... лучше помогите с ошибками пожалуйста, я уже запарился не понимаю откуда они лезут

Добавлено через 9 минут
еще раз последняя версия кода:
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#include <iostream>
#include <fstream>
#include <vector>
 
using namespace std;
 
class town //Класс «Населенный пункт»
{
private:
    char name[100]; //название
    char* getname() { return name; }
    double latitude; //широта
    double longitude; //долгота
    vector<char[100]> transport; //виды общественного транспорта
public:
    //конструктор без параметров
    town()
    {
        strcpy(name, "");
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport.clear();
    }
    //конструктор с параметром задающим название
    town(char _name[100])
    {
        strcpy(name, _name);
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport.clear();
    }
    //конструктор с параметрами задающими все поля
    town(char _name[100], size_t _population, double _latitude, double _longitude, vector<char[100]> _transport)
    {
        strcpy(name, _name);
        population = _population;
        latitude = _latitude;
        longitude = _longitude;
        transport = _transport;
    }
    //деструктор
    ~town()
    {
        strcpy(name, "");
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport.clear();
    }
    //метод Input выполняет ввод данных из файла
    bool Input()
    {
        char filename[100]; //имя файла
        cout << "filename: "; //запрос имени файла
        cin >> filename; //чтение имени файла из потока
        sprintf(filename, "input\\%s", filename); //добавление папки в которой лежит файл
        ifstream stream(filename); //открытие потока
        if (!stream.is_open()) return false; //если поток не открылся выход
 
        //читаю название
        char str[100];
        stream.getline(str, 100);
        sscanf(str, "name=%s", name);
        stream.getline(str, 100);
 
        //читаю население
        sscanf(str, "population=%d", &population);
        stream.getline(str, 100);
 
        //читаю широту
        sscanf(str, "latitude=%f", &latitude);
        stream.getline(str, 100);
 
        //читаю долготу
        sscanf(str, "longitude=%f", &longitude);
        stream.getline(str, 100);
 
        //читаю виды транспорта
        char tmp[100];
        sscanf(str, "transport=%s", tmp);
        memset(str, 0, 100);
        strcpy(str, tmp);
        char* _tmp = str;
        while (char* pos = strchr(_tmp, ','))
        {
            size_t index = 0;
            for (auto c = _tmp; c < pos; c++) tmp[index++] = (*c);
            transport.push_back(tmp);
            memset(tmp, 0, 100);
            _tmp = pos + 1;
        }
        if (*str != ' ')
        {
            size_t index = 0;
            memset(tmp, 0, 100);
            for (auto c = str; c < strchr(str, ' '); c++) tmp[index++] = (*c);
            transport.push_back(tmp);
        }
    }
    //метод Output печатает на экране данные класса
    bool Output()
    {
        cout << "name=" << name << "\n";
        cout << "population=" << population << "\n";
        cout << "latitude=" << latitude << "\n";
        cout << "longitude=" << longitude << "\n";
        cout << "transport=";
        for (auto t : transport) cout << t;
    }
protected:
    size_t population; //количество жителей
    size_t getpopulation() { return population; }
};
 
int main()
{
    return cin.get();
}
ошибки: error C2106: =: левый операнд должен быть левосторонним значением
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
06.09.2014, 12:18
Для выполнения копирования/присваивания вектор требует, чтобы это элементы поддерживали оператор присваивания. Очевидно, для типа char[100] это не так.
Что делать? Отказаться от использования вектора, объявить обычный двумерный массив, копировать значения вручную, и рядом в классе хранить размерность.
1
19506 / 10109 / 2464
Регистрация: 30.01.2014
Сообщений: 17,834
06.09.2014, 13:35
Цитата Сообщение от GetHelp Посмотреть сообщение
3 совсем уже глупость, там t будет иметь тип char*
Нуну.
Цитата Сообщение от GetHelp Посмотреть сообщение
1, 2 строки велено именно в виде такого массива представлять...
Вообще говоря, array<char, 100> внутри себя как раз и содержит char[100]. Это оболочка, предназначенная специально для таких случаев как твой.
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
06.09.2014, 15:00  [ТС]
ладно уж печаль пытаюсь сделать через обычный массив, так теперь такой вопрос: а вообще так можно сделать динамический массив статических массивов? что то типа char* transport[100] или надо делать тогда уж вот так char** transport?
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
06.09.2014, 15:36
Либо char**, что наиболее привычный и общий вариант, либо как-то так.
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
typedef char String[100];
 
int main() {
    String* strings = new String[10];
    std::cout << sizeof(strings[0]) << std::endl;
}
1
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
06.09.2014, 17:46  [ТС]
а все решил короче вообще сделать оба массива статическими т.к. все равно во 2 лабе требуются строки через указатели (то бишь динамические), вот там уже все массивы и переделаю в динамические... а тут сойдут и статические че изощряться то

Добавлено через 21 минуту
короче вот конечный вариант, корявый конечно, но вроде работает...
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#include <iostream>
#include <fstream>
 
using namespace std;
 
class town //Класс «Населенный пункт»
{
private:
    char name[100]; //название
    char* getname() { return name; }
    double latitude; //широта
    double longitude; //долгота
    char transport[10][100]; //виды общественного транспорта
    size_t transport_count; //количество видов общественного транспорта
public:
    //конструктор без параметров
    town()
    {
        strcpy(name, "");
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport_count = 0;
    }
    //конструктор с параметром задающим название
    town(char _name[100])
    {
        strcpy(name, _name);
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
        transport_count = 0;
    }
    //конструктор с параметрами задающими все поля
    town(char _name[100], size_t _population, double _latitude, double _longitude, char _transport[10][100], size_t _transport_count)
    {
        strcpy(name, _name);
        population = _population;
        latitude = _latitude;
        longitude = _longitude;
        transport_count = _transport_count;
        for (int i = 0; i < transport_count; i++)
            strcpy(transport[i], _transport[i]);
    }
    //деструктор
    ~town()
    {
        strcpy(name, "");
        population = 0;
        latitude = 0.0;
        longitude = 0.0;
    }
    //метод Input выполняет ввод данных из файла
    bool Input()
    {
        char filename[100]; //имя файла
        char tmp[100] = "input\\", str[100];
        cout << "filename: "; //запрос имени файла
        cin >> filename; //чтение имени файла из потока
        strcat(tmp, filename); //добавление папки в которой лежит файл
        ifstream stream(tmp); //открытие потока
        if (!stream.is_open()) return false; //если поток не открылся выход
 
        //читаю название
        stream.getline(str, 100);
        sscanf(str, "name=%s", name);
 
        //читаю население
        stream.getline(str, 100);
        sscanf(str, "population=%d", &population);
 
        //читаю широту
        stream.getline(str, 100);
        sscanf(str, "latitude=%lf", &latitude);
 
        //читаю долготу
        stream.getline(str, 100);
        sscanf(str, "longitude=%lf", &longitude);
 
        //читаю виды транспорта
        stream.getline(str, 100);
        sscanf(str, "transport=%s", tmp);
        memset(str, 0, 100);
        strcpy(str, tmp);
        char* _tmp = str;
        while (char* pos = strchr(_tmp, ','))
        {
            size_t index = 0;
            memset(tmp, 0, 100);
            for (; _tmp < pos; _tmp++)
                tmp[index++] = (*_tmp);
            strcpy(transport[transport_count++], tmp);
            memset(tmp, 0, 100);
            _tmp = pos + 1;
        }
        if (*_tmp != 0)
        {
            size_t index = 0;
            memset(tmp, 0, 100);
            for (; _tmp < strchr(str, 0); _tmp++)
                tmp[index++] = (*_tmp);
            strcpy(transport[transport_count++], tmp);
        }
    }
    //метод Output печатает на экране данные класса
    bool Output()
    {
        system("cls");
        cout << "name=" << name << "\n";
        cout << "population=" << population << "\n";
        cout << "latitude=" << latitude << "\n";
        cout << "longitude=" << longitude << "\n";
        cout << "transport=";
        for (int i = 0; i < transport_count; i++)
        {
            if (i < transport_count - 1)
                cout << transport[i] << ",";
            else
                cout << transport[i];
        }
        cout << "\n\n";
        return true;
    }
protected:
    size_t population; //количество жителей
    size_t getpopulation() { return population; }
};
 
int main()
{
    setlocale(LC_ALL, "RUSSIAN");
    town t[3];
    for (auto i : t)
    {
        i.Input();
        i.Output();
    }
    return cin.get();
}
исходные файлы:

town1.txt
Кликните здесь для просмотра всего текста
town=Москва
population=11500000
latitude=55,75
longitude=37,61
transport=метро,автобусы,трамваи


town2.txt
Кликните здесь для просмотра всего текста
town=Санкт-Петербург
population=4880000
latitude=59,89
longitude=30,26
transport=метро,трамваи,тролейбусы


town3.txt
Кликните здесь для просмотра всего текста
town=Пенза
population=517311
latitude=53,19
longitude=45,00
transport=автобусы,тролейбусы


Добавлено через 12 секунд
з.ы. спасибо всем за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.09.2014, 17:46

Как должен выглядеть класс, который будет работать в заданном цикле?
Как должен выглядеть класс, который будет работать в этом цикле? for (const auto &amp; entry : fs::directory_iterator(path)) { ...

Как правильно должна выглядеть ортодоксально каноническая форма класса?
Как правильно должна выглядеть ортодоксально каноническая форма класса? Я не совсем уверен. В классе должны быть конструктор, деструктор,...

Как должен выглядеть DataSource
Здравствуйте.Хочу подключиться к СУБД Оракл с использованием АДО.НЕТ.На компьютере установлена СУБД Oracle Database 10g Express Edition,...

Как должен выглядеть деструктор
class A { public $a; public function __construct($a) { $this-&gt;a = $a; } ...

Как должен выглядеть код программы?
К каждому из классов, которые приведены ниже, добавить по одному полю и методу, построить иерархию классов и реализовать механизм...


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

Или воспользуйтесь поиском по форуму:
78
Ответ Создать тему
Новые блоги и статьи
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки. Добавлены следующие реквизиты типа Булево: - Буквы; - Цифры; - Символы. Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru