Условия:
Этот тест расскажет о вашем программировании больше, чем вы сами хотели бы знать.
Переменная I представляет собой полное слово с фиксированной точкой. I принимает значения 1 либо 2. Если I оказалось равным 1, замените его на 2 и наоборот.
Сравните ваше решение с десятью предложенными. Найдите одно или несколько наиболее похожих на ваше и прочитайте в разделе "категории" краткую характеристику. Вы можете кодировать на любом языке, но для сравнения предпочтительнее всего использовать PL/1.
РЕШЕНИЯ
1. IF I='2' THEN I=1;
ELSE I=2;
2. IF I=2 THEN I=1;
IF I=1 THEN I=2;
3. IF I=1 THEN GOTO SKIP;
I=1;
GOTO DONE;
SKIP: I=2;
DONE:
4. J=2;
IF I=2 THEN J=1;
I=J;
5. DECLARE SWITCH LABEL;
. . .
IF I=1 THEN SWITCH=ONE;
IF I=2 THEN SWITCH=TWO;
GOTO SWITCH;
ONE: I=2;
GOTO DONE;
TWO: I=1;
DONE:
6. DECLARE ONETWO(2) FIXED BIN(31) INIT (2,1);
. . .
I=ONETWO(I);
7. I=3-I;
8. I=I-(I/2*2)+1;
9. IF I=2
THEN DO;
I=1;
END;
ELSE DO;
I=2;
END;
10. IF I=1 THEN I=2;
IF I^=2 THEN DO;
PUT LIST('ПЛOXOE I - ЗAMEHEHO HA 1');
I=1;
END;
Полная версия теста (смотрите КАТЕГОРИИ в конце)
7. I=3-I; // ооочень красиво, но без проверки, да :)
ОтветитьУдалитьЯ такой же вариант выбрал -)
ОтветитьУдалить