Наборщик в Delphi

Категория: Учебники по Delphi » Delphi XE

Ирония судьбы: запрограммировать игру Супернаборщик оказалось легче, чем простого Наборщика! Однако, начнём.

Как мы и договаривались, заведём пару массивов для подсчёта букв в сло­вах:

Var word, curWord: array[’A’..’Я’] of integer;

Вместо массива array[char] нам вполне хватит массива array^A'./Я'] - других букв в наших словах нет.

 

 

Супернаборщик в Delphi

Категория: Учебники по Delphi » Delphi XE

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

 

Мы сделаем себе небольшое послабление в правилах игры - не будем тре­бовать, чтобы число одинаковых букв в искомых словах не превышало числа этих букв в заданном слове, иначе говоря, любую букву этого слова можно использовать сколько угодно раз. Все остальные правила трогать не будем.

 

 

Разнобуквица, или БЕТка для слов в Delphi

Категория: Учебники по Delphi » Delphi XE

Предметом наших изысканий станут слова, которые состоят из разных букв, то есть ни одна буква в них не повторяется. Например, ШКОЛА, УЧЕНИК, УЧЕНИЦА - это именно такие слова, а вот слово КЛАСС не годится - в нём не одна, а две буквы С.

Из этих примеров видно, что найти несколько разнобуквенных слов со­всем не трудно, но наша задача - монументальная: найти все такие слова (точнее, все существительные) и наградить своим особым вниманием са­мое длинное из них.

 

Диаграммы Венна в Delphi

Категория: Учебники по Delphi » Delphi XE

Для наглядного представления логических связей (отношений) между множествами часто используют диаграммы Венна (Venn diagrams), в которых множества изображают кругами, эллипсами или замкнутыми кривыми, а элементы множества - точками.

 

Графические методы использовались в науке с давних времен. Так, еще в 13-ом веке Раймонд Луллий употреблял в своих работах по­добные круги. Найдем мы их и у немецкого математика Г.В. Лейб­ница. Чешский математик Бернард Больцано вместо кругов рисовал прямоугольники. В книге Алгебра логики круги применял немецкий математик Эрнест Шрёдер.

 

Операции над множествами в Delphi

Категория: Учебники по Delphi » Delphi XE

Пусть первое множество M:= [Red, Orange], второе N:= [Orange, Yellow], а результат выполнения операции - множество S.

+ оператор объединения множеств. В результате операции получается новое множество, которое содержит по одному разу все элементы исход­ных множеств:

S := M + N;    S = [Red, Orange, Yellow].

- оператор разности множеств (относительное дополнение). В результате операции получается новое множество, которое содержит элементы пер­вого множества, не принадлежащие второму множеству:

S := M - N; ^ S = [Red].

* оператор пересечения множеств. В результате операции получается новое множество, которое содержит элементы, принадлежащие обоим множествам:

S := M * N;    S = [Orange].