Выбрать главу

Большей частью опять же используется в циклах. Рассмотрим пример:

INT Age;

INT Man;

INT Tired is NO;

IF ( Age_of_Women > 30 )

DO {

SEX;

IF ( Man is Tired ) {

SUX;

LOVE is NO;

BREAK;

}

CONTINUE;

}

Если женщине за тридцать и ее мужу где столько же или больше, то для него начинаются трудные времена. Если он будет постоянно ссылаться на усталость, то женщину ждет облом, неудовлетворенность в любви и вообще SUX. А если не будет, но вы полагаете, что будет RULEZ? А вот и нет. Есть только продолжение, продолжение и продолжение.

8. Оператор SWITCH

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

DOUBLE Relax;

DO {WORK;

WHILE ( HEALTH is SO-SO )}

SWITCH ( MONEY ) {

CASE ($1000):

KANARY;

CASE ($500):

Relax_House;

CASE ($10):

BEER;

}

HEALTH is GOOD;

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

9. Оператор BREAK

BREAK - оператор аварийного выхода, чаще всего в негативном смысле (облом). Разберем пример:

CHAR WORK is Empty;

SEEK ( WORK );

FOUND;

SWITCH ( MONEY ) {

CASE ($10/Month):

BREAK;

CASE ($100/Month):

BREAK;

CASE ($1000/Month):

RULEZ;

}

Результат поисков работы может быть разным. Если зарплата меньше $1000 в месяц - SUX и BREAK (т. е. облом). Еще пример:

INT Glass;

IF ( SUX ) {

DO Glass BREAK; }

RULEZ;

Рецепт улучшения настроения - битье посуды совершенно непонятен мужчинам. Однако, представьте, что на месте Glass (бокала) могли бы оказаться вы...

10. Оператор GOTO

GOTO - оператор языка, которым пользователи Male C обмениваются с друг другом. Очень удобно: ваш шеф просит вас принести квартальный отчет, а вы посылаете его в $%# до переполнения его стека терпения. Другой случай: даже если вы очень торопитесь, советуем все же воспользоваться переходом, а не бежеать сломя голову прямо через дорогу.

В новых веяниях (Male C++) считается, что этот оператор лишний. Однако разберем пример:

#DEFINE HOUSE KEEPING #INCLUDE WASHING MACHINE

MAIN () {

FLOAT Thing is Dirty;

WHILE (Thing) {

Wash;

BAD;

GOTO HELL;

} HELL: Shop \!\! Barbeshop \!\! Love-story_reading; }

Понятно, что домашняя работа (в частности, стирка) бесконечна, и число грязных вещей (Thing) никогда не кончится. Поэтому необходимо использовать оператор безусловного перехода, которое в данном случае посылает эту работу в HELL. Когда его использовать, зависит от вашего настроения, однако если вы не хотите BAD с вашим мужчиной, старайтесь им не злоупотреблять.

Примечание: некоторые скажут, что в написанном примере можно было воспользоваться оператором BREAK. И что? Вы остановили работу, а не послали ее к черту и вам придется рано или поздно ее продолжить, причем наверняка переменная THING существенно увеличится.

Некоторые могут заметить странное определение метки "черта". Так ведь к черту посылается стирка, а вместо нее предлагается или поход по магазинам, или парикмахерская, или просто чтение любовных романов.

Еще один пример иллюстрирует тот факт, что женщина любит ушами:

CHAR Ask "Do you love me?"; Neverending:

IF ( Ask is 'Yes') GOTO Neverending;

11. Условные операторы

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

12. Примеры

1. Кандидат на брак.

#UNDEFINE MAN

#INCLUDE ALL

MAIN (Target is LOVE);

LONG CHAR Why = "Зачем вы девушки, NICE LOVE, неCONST у них LOVE";

INT MAN [ Boss, Friend, Nice ...];

INT LOVE [ SEX, Flirt, LOVE];

SEEK ( LOVE );

FOUND MAN;

IF ( Man[Boss] ) FOUND SEX;

IF ( Man[Friend] ) FOUND Flirt;

IF ( Man[Nice] ) DO Why;

ELSE New SEEK;

Примечание: могут сказать, а как же все же найти свою любовь. Ну, дорогие дамы, если вы считаете, что это задачу за вас смогут решить машины...

2. Муж вернулся из командировки...

INT Lover is IN_FRIDGE;

INT Husband is FOOL;

LONG CHAR Kill ( Lover must die! );

INT Furniture[Dresser, Bed, ...];

RETURN ( Husband );

Husband;

SEEK ( Lover );

IF ( Furniture[Any] ) FOUND {

SAY Kill;

SUX; }

ELSE RULEZ;

Муж, конечно, успокоится, не найдя любовника. Но что будет с любовником, который спрятался в холодильнике? И вправду удовольствия познаются через страдания.

13. Задачи.

Как вы уже поняли, Male C - универсальный язык программирования, посредством которого можно решать обширный круг повседневных задач. Единственный путь изучения языка - говорить на нем. Предлагаем несколько задач для самостоятельного решения:

1. Классический треугольник: вы любите его, он любит другую, а она любит вас. Варианты решений:

- вы добиваетесь его взаимности;

- вы добиваетесь ее взаимности;

- вы становитесь их взаимности;

- вы отвечаете взаимностью своей собаке.

Примечание: могут возразить, что классический треугольник выглядит по-другому. Однако мы полагаем, что если двое влюблены в одного, то это не треугольник, а угол:

------> 

/|\

|

|

2. Вариант без соперницы: Вы любите его, а он любит себя. Попробуйте сами найти все решения.

3. Вас шеф активно добивается вас. Варианты решения:

- вы отвергаете его домогания и теряете работу;

- вы уступаете ему и теряете свое достоинство;

- вы знакомите его со своим другом-бандитом и он теряет свое достоинство.

4. Ваш муж постоянно ходит налево. Варианты решения:

- уехать к маме;

- скалкой своротить ему скулу так, чтобы он мог смотреть только направо;

- самой сходить налево.

Множество других проблем вы сможете найти в известной книге, классике нашего дела "1001 проблема про это" а также в журнале "Все проблемы, которые вы хотели решить, но не имели для этого подходящего инструмента".

Примечание: Проблемы Male C- можно найти и в популярной газете "C-pid Info". и в передаче "Я C-ама. В передаче "LOVE C 1 взгляда" обсуждаются проблемы языка LOVE C версии 1. В журнале "5 How C" вы найдете более сложные задачи из языка версии 5.

14. Послесловие

В следующей книге мы разберем особенности реализации Male C+, Male C++, и вообще Male Cn+. К сожалению, мы не будем обсуждать проблемы любой реализации языка C- по понятным морально-этическим причинам.

сентябрь 1997

ПАЛЕК