Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
асвт.курсовая.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
1 Мб
Скачать
☆

Пример работы алгоритма:

Рассчитаем количество N всех возможных наборов входных данных:

3 – количество возможных событий, 4 – количество возможных мест действия, третий множитель – это количество возможных вариантов выборки 3 из 5 типажей и последний множитель – это количество возможных вариантов выборки 3 из 6 имён. Имена не слишком сильно влияют на разнообразие результирующего текста, поэтому основное разнообразие вносится первыми тремя множителями. Их произведение равно 120, т.е. данный алгоритм способен сгенерировать 120 практически не повторяющихся текстов. Если учесть последний множитель, то количество не повторяющихся текстов будет равно 2400, однако многие из них будут различаться лишь именами персонажей.

Рассмотрим один из возможных наборов входных данных:

Здесь чёрным цветом отмечены нажатые пользователем кнопки. Привожу пример выходных данных, генерируемых данным алгоритмом, при рассмотренном выше наборе входных данных (для удобства чтения в тексте расставлены табуляции, однако при выводе текста в виде бегущей строки они будут отсутствовать, т.к. в этом случае табуляции лишь мешают восприятию текста):

Весной 1914 года доблестный 45-й артиллерийский полк ехал эшелоном во Вршовицы. Дорога была спокойной и долгой. Машинист, напившись ореховки, спокойно кемарил у себя в кабине. Ничто не предвещало беды. Солдаты в вагонах маялись бездельем.

В центре вагона сидел толстый бородач – денщик Балоун и поглощал кнедлики с кислой капустой, которыми он разжился в полевой кухне.

Вдалеке от всех, не обращая внимания на происходящее, сидел полковой писарь Швейк , с интересом читая третий том научных трудов Гюйгенса, посвящённый дифракции электронов на кристаллических решётках.

Лукаш потягивал чай с ромом и, как всегда, находясь в жутком настроении, вымещал свою злость на подчинённых: «Эй, ты, свинья» - орал он на Швейка - «ну-ка сбегай в полевую кухню и принеси мне коньяку, не то отдам тебя под трибунал!».

Но вдруг, совершенно неожиданно, всё вокруг начало взрываться и солдатам на голову посыпалась шрапнель. А виной всему были пьяные немецкие наводчики артиллерии, которые с перепоя приняли этот полк за банду африканских зусулов и вдарили по ним из всех стволов.

Прогремевший рядом с Лукашом взрыв, а так же алкоголь, ударивший ему в голову, сбили его с ног. Он рухнул на землю, сильно ударившись при этом головой, в результате чего у него помутился рассудок. Бравый писарь Швейк тут же забился под сидение . Денщик Балоун , не найдя никакого укрытия, забился по пояс в котёл из-под кнедликов, да так забился, что даже застрял в нём.

Очередной разрыв снаряда вывел котёл, в котором сидел Балоун , из равновесия, и этот котёл начал кататься по вагону , словно перекати поле. Швейк ещё глубже забился под сидение .Тем временем подпоручик, увидев ужасную неорганизованность своих подчинённых, попытался поднять боевой дух солдат. И единственным решением этой задачи, пришедшим в его голову, помутнённую алкоголем и ударом о землю, было: Поднявшись с земли и вытянувшись во весть рост заорать на Балоуна : «Ты, чешская скотина, обещаю тебе, что не пройдёт и недели, как ты будешь болтаться в петле!». На это Балоун ответил: «Осмелюсь доложить, герр Лукаш , что я занят – я застрял».

Совсем забывшись в своём героическом порыве, подпоручик Лукаш уже не обращал внимания на свистящие у него над головой осколки снарядов, за что и поплатился - ему оторвало голову шрапнелью. Так и не справившись с равновесием, Балоун на всём ходу вылетел в котле из вагона и при этом задавил своим весом взвод французов, сидевших в засаде у дороги, чтобы пустить эшелон под откос.

После того, как разрывы снарядов затихли, Балоун был опубликован на страницах фронтовой газеты, как пример героизма и находчивости, Швейк , находясь в полевом госпитале, подхватил дизентерию, от которой и умер, а Лукаш был посмертно приговорён к казни через повешенье за саботаж на поле боя.

Рассказ содержит 2802 символа, и выбранного размера буфера для хранения этого текста вполне достаточно.