Задача - генерирование лога на СИ
Нужно написать программку на Си или Си++ (консольно)
Есть некторые сайты S1,S2,....Sn ( пока пусть n=10 )
А есть еще известные сайты T1,T2,........Tm ( пока пусть m=1 )
Лог посещаемости для сайта выглядит следующим образом
Время\t IdUser\t названиесайта\n
А) время: UNIX_TINE – целое число, коло секунд с 1 янв. 1970г
Б)IdUser:Целое число, Либо 0 если аноним
В) Http://s1/News/1992/02/01 - нас тут интересует только S1, т.е название сайта до точки
Для
Ti известны возраст и половая принадлежность аудитории
Для Si таких данных нет
Тестовая аудитория
Допустим 100 000 – идентифицированы ( т.е IdUser известен )
10 000 – не идент (Айдиюзер=0)
на всех Si и Ti сайтах
Каждому идентифицированному юзеру назначаем пол и возраст, причем для всех юзеров распределение должно быть примерно в таком интервале (*)
(-беск, 15], [16,20],
[21,33], [33,45], [46,+беск) Девочек 60%
10% 25% 30% 25% 10% Мальчиков 40%
Это ДЛЯ ВСЕХ идентифицированных юзеров
А для сайта Т1 должна быть распределена своя аудитория ( которая нам по идее известна, т.е назначаем ее сами ) Допустим там 50% в интервале от 16 до 20 ну и оастльные в каком нибудь порядке
Так вот, что должно получится в итоге – Сформировать лог таким образом, чтобы постоянная аудитория по этому логу у T1 была “близка” к тому, что мы назначили.
( пользователь постоянный, если он заходит не менее К раз за Д дней, допустим раз в 3 дня) Лог будет за месяц. В логе возможны ( или должны быть ) белый Шум и прочие отклонения.
Но для начала, прежде чем заняться генерацией лога, нам очевидно нужно сгенерировать аудиторию из 100 000 – идентифицированых и 10 000 – не идент юзеров, т.е строки вида
Идюзер
ICQ: 380-945-346
срок: 4 дня