Skip to content

flydyk/grsu-dotnet-2013-alexej-perovskij

Repository files navigation

grsu-dotnet-2013-alexej-perovskij

Задача 1(Transport)

Реализовать консольное приложение, удовлетворяющее следующим требованиям:

  1. Использовать возможности ООП: классы, наследование, полиморфизм, инкапсуляция.
  2. Каждый класс должен иметь исчерпывающее смысл название и информативный состав.
  3. Наследование должно применяться только тогда, когда это имеет смысл.
  4. При кодировании следует придерживаться соглашения об оформлении кода code convention.
  5. Классы должны быть грамотно разложены в структуре проекта.
  6. Работа с консолью или консольное меню должно быть минимальным.
  7. Для хранения параметров инициализации можно использовать файлы.
  8. Возможно (не обязательно) следование подходящему по смыслу задачи паттерну проектирования.
  9. Приветствуется более детальная проработка предметной области.

Транспорт. Определить иерархию подвижного состава железнодорожного транспорта. Создать пассажирский поезд. Посчитать общую численность пассажиров и багажа. Провести сортировку вагонов поезда на основе уровня комфортности. Найти вагоны в поезде, соответствующие заданному диапазону параметров числа пассажиров.

Задача 2(Corcondance)

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

Peter Piper picked a peck of pickled peppers. A peck of pickled peppers Peter Piper picked. If Peter Piper picked a peck of pickled peppers, where is the peck that Peter Piper picked?

Слово "piper" встречается здесь 4 раза в строках 1, 2 и 3. Слово "pickled" встречается 3 раза в строках 1 и 3. Результат обработки этого текста представляется списком слов в алфавитном порядке, для каждого слова указывается частота его появления в тексте (количество вхождений) и список номеров строк, в которых встречается это слово. Если слово встречается в строке более одного раза, то номер этой строки указывается в списке только один раз:

a.............................3: 1 2

if............................1: 2

is............................1: 3

of............................3: 1 2

peck..........................4: 1 2 3

peppers.......................3: 1 2 3

peter.........................4: 1 2 3

picked........................4: 1 2 3

pickled.......................3: 1 3

piper.........................4: 1 2 3

that..........................1: 3

the...........................1: 3

where.........................1: 3

Требуется: осуществить обработку текстового файла, содержащего некоторый многостраничный текст. Будем считать, что одна страница текста состоит из N строк. Результ обработки – текстовый файл, содержащий предметный указатель встречающихся в тексте слов. В предметном указателе перечисляются слова в алфавитном порядке. Для каждого слова указывается количество его вхождений в текст и номера страниц, на которых встречатся это слово. При формировании предметного указателя, слова, начинающиеся с разных букв алфавита разделяются на группы:

А

a.............................120: 1 2 3 4 5 6 7 8 9 10 11 12

and............................89: 1 2 3 6 8 9 12

apple...........................3: 7 9

B

bag.............................2: 11 12

big.............................7: 5 7 10

C

cake............................1: 3

circle..........................3: 8 9

. . . и т.д.

Alexej Perovskij

About

Alexej Perovskij

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published