Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Названия цветов 9 страница




int

L, // Длина нити

S_etalon=1500000, // Заданная площадь (мм2)

S, // Площадь прямоугольника

a,b,s; // Текущие стороны и площадь

//--------------------------------------------------------------------

while(true) // Внешний цикл по длинам нити

{ // Начало внешнего цикла

L=L+1000; // Текущее значение нити в мм

//--------------------------------------------------------------------

S=0; // Начальное значение..

//..для каждого размера

for(a=1; a<L/2; a++) // Заголовок оператора цикла

{ // Начало внутреннего цикла

b=(L/2) - a; // Текущие значения сторон

s=a * b; // Текущее значение площади

if (s<=S) // Выбираем большее значение

break; // Выход из внутреннего цикла

S=s; // Запоминаем лучшее значение

} // Конец внутреннего цикла

//--------------------------------------------------------------------

if (S>=S_etalon) // Выбираем большее значение

{

Alert("Подходит нить длиной ",L1000," м.");// Сообщение

break; // Выход из внешнего цикла

}

} // Конец внешнего цикла

//--------------------------------------------------------------------

return; // Оператор выхода из функции

}

//--------------------------------------------------------------------

Здесь внутренний цикл работает подобно тому, как и в решении предыдущей задачи. Оператор break используется для выхода из цикла for, когда достигнуто максимальное значение площади для нити заданной длины. Необходимо особо подчеркнуть, что оператор break, указанный во внутреннем цикле for, передаёт управление оператору, следующему за закрывающей фигурной скобкой цикла for, прекращая таким образом работу цикла. Это явление не оказывает никакого влияния на исполнение внешнего оператора цикла while.

В момент, когда срабатывает оператор break во внутреннем цикле for, управление передаётся оператору if:

if (S >= S_etalon) // Выбираем большее значение

{

Alert("Подходит нить длиной ",L1000," м.");// Сообщение

break; // Выход из внешнего цикла

}

В операторе if производится проверка: является ли найденная площадь больше или равной заданному по условию задачи минимально допустимому значению 1.5 м 2? Если это так, то решение найдено и продолжать вычисления нет смысла; управление передаётся в тело оператора if. Исполняемую часть оператора if составляют всего два оператора, первый из которых выводит на экран сообщение о найденном решении:

Подходит нить длиной 5 м.

С помощью второго оператора - break - осуществляется выход из внешнего цикла while и последующий выход из программы. Ниже представлена функциональная схема алгоритма, реализованного в программе area.mq4.


Рис. 46. Функциональная схема программы, в которой реализуется возможность специального выхода из внутреннего и внешнего цикла (area.mq4).

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

Обратите внимание, Условием в заголовке внешнего цикла while является (true), т. е. запись, не содержащая переменной, значение которой в процессе выполнения программы могло бы измениться. Это значит, что выход из цикла while по Условию, указанному в заголовке, никогда не произойдёт. В этом случае использование оператора break является единственной возможностью для выхода из цикла.

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

Использование оператора break для передачи управления за пределы оператора switch рассматривается в разделе Переключатель switch.

Оператор continue

 

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

Формат оператора continue

 

Оператор continue состоит из одного слова, заканчивается знаком ";" (точка с запятой).

continue; // Оператор continue

Правило исполнения оператора continue

 

Оператор continue прекращает исполнение текущей итерации ближайшего оператора цикла while или for. Результатом выполнения оператора continue является переход к следующей итерации ближайшего оператора цикла while или for. Оператор continue может использоваться только в составе тела указанных операторов цикла.

Рассмотрим вариант практического использования оператора continue.

Задача 16. На первой ферме имеется 1000 овец. Ежедневно количество овец на первой ферме увеличивается на 1%. Если в конце месяца на первой ферме количество овец превышает 50 000, то 10% овец переводят на вторую ферму. Через какое время количество овец на второй ферме достигнет численности 35 000? (Считать, что в месяце 30 рабочих дней.)

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

Рассматриваемый алгоритм реализован в скрипте sheep.mq4. Здесь оператор continue используется для расчётов во внешнем цикле.

//--------------------------------------------------------------------

// sheep.mq4

// Предназначен для использования в качестве примера в учебнике MQL4.

//--------------------------------------------------------------------

int start() // Специальная ф-ия start()

{

//--------------------------------------------------------------------

int

day, // Текущий день месяца

Mons; // Искомое количест. месяцев

double

One_Farm =1000.0, // Количество на 1 ферме

Perc_day =1, // Ежедневный подъём, %

One_Farm_max=50000.0, // Пороговое значение

Perc_exit =10, // Ежемесячный вывод, %

Purpose =35000.0, // Необх. колич. на 2 ферме

Two_Farm; // Количество на 2 ферме

//--------------------------------------------------------------------

while(Two_Farm < Purpose) // Внешний цикл по истории

{ // Начало тела внешн. цикла

//--------------------------------------------------------------

for(day=1; day<=30; day++) // Цикл по дням месяца

One_Farm=One_Farm*(1+Perc_day/100);//Накопление на 1й ферме

//--------------------------------------------------------------

Mons++; // Считаем месяцы

if (One_Farm < One_Farm_max) // Если меньше допустимого,.

continue; //.. то овец не переводим

Two_Farm=Two_Farm+One_Farm*Perc_exit/100;//Количес. на 2 ферме

One_Farm=One_Farm*(1-Perc_exit/100);// Остаток на 1 ферме

} // Конец тела внешнего цикла

//--------------------------------------------------------------------

Alert("Цель будет достигнута через ",Mons," мес.");//Вывод на экран

return; // Выход из функции start()

}

//--------------------------------------------------------------------

В начале программы, как обычно, описаны и прокомментированы переменные. Собственно расчёт выполняется в цикле while, а после его окончания выводится соответствующее сообщение. Расчёты во внешнем цикле while будут происходить до тех пор, пока не будет достигнута цель, а именно, пока общее количество овец на второй ферме не достигнет ожидаемого значения 35 000.

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

В зависимости от текущего количества овец на первой ферме выполняется одно из двух вычислений:

если количество овец на первой ферме превышает пороговое значение 50 000, то необходимо 10% овец с первой фермы перевести на вторую ферму;

в противном случае - овец с первой фермы на вторую не переводить и продолжать разведение овец на первой ферме.

Разветвление алгоритма осуществляется с помощью оператора if:

if (One_Farm < One_Farm_max) // Если меньше допустимого,.
continue; //.. то овец не переводим

Эти строки кода можно охарактеризовать так: если количество овец на первой ферме меньше порогового значения 50 000, то исполнить оператор, составляющий тело оператора if. При первой итерации количество овец на первой ферме оказывается меньше порогового значения, поэтому управление будет передано в тело оператора if, т.е. оператору continue. Исполнение оператора continue означает следующее: закончить текущую итерацию ближайшего выполняемого цикла (в данном случае это цикл в операторе while) и передать управление в заголовок оператора цикла. При этом следующие программные строки, также являющиеся составной частью тела оператора цикла while, выполняться не будут:

Two_Farm = Two_Farm+One_Farm*Perc_exit/100;//Количес. на 2 ферме
One_Farm = One_Farm*(1-Perc_exit/100); // Остаток на 1 ферме

В этих строках осуществляется расчёт достигнутого количества овец на второй ферме и остаточное количество овец на первой ферме. На первой итерации выполнять эти расчёты нельзя, т.к. ещё не достигнуто пороговое количество овец 50 000 на первой ферме. Сущность оператора continue как раз и состоит в том, чтобы "переступить" через эти строки, не исполнять их в текущей итерации.

В результате исполнения оператора continue управление передаётся в заголовок оператора цикла while. Далее происходит проверка условия в операторе цикла и начинается следующая итерация. Выполнение цикла будет продолжаться по тому же алгоритму до тех пор, пока количество овец на первой ферме не достигнет порогового значения. При этом на каждой итерации накапливается значение Mons.

На некотором этапе расчётов количество овец на первой ферме достигнет или превысит пороговое значение 50 000 голов. В этом случае, при исполнении оператора if условие (One_Farm < One_Farm_max) окажется ложным, поэтому управление в тело оператора if передано не будет. Это значит, что оператор continue не исполнится, а управление будет передано на первую из двух последних строк тела цикла while: сначала будет вычислено количество овец на второй ферме, а затем остаточное количество овец на первой ферме. После этих вычислений очередная итерация цикла while закончится, и управление снова будет передано в заголовок цикла. Ниже представлена функциональная схема алгоритма, реализованного в скрипте sheep.mq4.


Рис. 47. Функциональная схема программы, в которой оператор continue прерывает итерации внешнего цикла (sheep.mq4).

На схеме наглядно видно, что в зависимости от исполнения условия в операторе if, управление либо сразу передаётся в заголовок цикла while (в результате исполнения continue), либо сначала выполняются некоторые операторы, а потом управление всё равно передаётся в заголовок цикла while. В обоих случаях выполнение цикла при этом не заканчивается.

Обратите внимание, наличие оператора continue в теле цикла не обязательно приводит к окончанию текущей итерации. Это происходит только в том случае, если он исполняется, т.е если ему передано управление.

На каждой очередной итерации в операторе цикла while, будет рассчитываться новое достигнутое значение переменой Two_Farm. Как только это значение превысит заданную величину (35 000), условие в операторе цикла while окажется ложным, поэтому вычисления в теле цикла while больше выполняться не будут, а управление будет передано ближайшему оператору, следующему за оператором цикла:

Alert("Цель будет достигнута через ",Mons," мес.");//Вывод на экран

Результатом исполнения функции Alert() будет строка следующего вида:

Цель будет достигнута через 17 мес.

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

Представленный алгоритм предусматривает нормальный выход из цикла while. В более общем случае выход из цикла может происходить и в результате исполнения оператора break (специальный выход). Однако ни тот, ни другой способ завершения цикла никак не связаны с прерыванием текущей итерации с помощью оператора continue.

В правиле исполнения оператора continue используется выражение "ближайшего оператора". Ошибочно полагать, что это означает близость программных строк. Посмотрим на код скрипта sheep.mq4. Оператор for находится "ближе" к оператору continue, чем заголовок цикла while. Однако это не имеет никакого значения: оператор continue никак не связан с циклом for, потому что находится за его пределами, вне его тела. В общем случае программа может содержать множество вложенных операторов цикла. Оператор continue всегда находится в теле какого-то из них. Но одновременно с этим оператор continue, являясь составной частью внутреннего оператора цикла, естественно, находится и внутри внешнего оператора цикла. Выражение "прекращает исполнение текущей итерации ближайшего оператора цикла" следует понимать так, что его действие распространяется на ближайший оператор цикла, внутри тела которого он находится. Чтобы проиллюстрировать это, несколько изменим условия задачи.

 

Задача 17. На первой ферме имеется 1000 овец. Ежедневно количество овец на первой ферме увеличивается на 1%. В тот день, когда количество овец на первой ферме достигает 50 000, 10% овец переводят на вторую ферму. Через какое время количество овец на второй ферме достигнет численности 35 000? (Считать, что в месяце 30 рабочих дней.)

Решение задачи 17 реализовано в скрипте othersheep.mq4. В данном случае оператор continue используется для расчётов во внешнем и внутреннем циклах.

//--------------------------------------------------------------------

// othersheep.mq4

// Предназначен для использования в качестве примера в учебнике MQL4.

//--------------------------------------------------------------------

int start() // Специальная ф-ия start()

{

//--------------------------------------------------------------------

int

day, // Текущий день месяца

Mons; // Искомое количест. месяцев

double

One_Farm =1000.0, // Количество на 1 ферме

Perc_day =1, // Ежедневный подъём, %

One_Farm_max=50000.0, // Пороговое значение

Perc_exit =10, // Разовый вывод, %

Purpose =35000.0, // Необх. колич. на 2 ферме

Two_Farm; // Количество на 2 ферме

//--------------------------------------------------------------------

while(Two_Farm < Purpose) // До достижения цели

{ // Начало тела внешн. цикла

//--------------------------------------------------------------

for(day=1; day<=30 && Two_Farm < Purpose; day++)// Цикл по дням

{

One_Farm=One_Farm*(1+Perc_day/100);//Накопл. на 1 ферме

if (One_Farm < One_Farm_max) // Если меньше допустимого,.

continue; //.. то овец не переводим

Two_Farm=Two_Farm+One_Farm*Perc_exit/100;//Накопл. на 2 ферме

One_Farm=One_Farm*(1-Perc_exit/100); //Остаток на 1 ферме

}

//--------------------------------------------------------------

if (Two_Farm>=Purpose) // Если цель достигнута,..

continue; //.. то месяцы не считаем

Mons++; // Считаем месяцы

} // Конец тела внешнего цикла

//--------------------------------------------------------------------

Alert("Цель будет достигнута через ",Mons," мес. и ",day," дн.");

return; // Выход из функции start()

}

//--------------------------------------------------------------------

Для решения задачи необходимо анализировать количество овец для каждого дня. С этой целью строки:

if (One_Farm < One_Farm_max) // Если меньше допустимого,.

continue; //.. то овец не переводим

Two_Farm=Two_Farm+One_Farm*Perc_exit/100;//Накопл. на 2 ферме

One_Farm=One_Farm*(1-Perc_exit/100); //Остаток на 1 ферме

перенесены во внутренний цикл, организованный по дням месяца. Очевидно, что перевод некоторого количества овец на вторую ферму в данном случае происходит не в конце месяца, а в тот день, когда количество овец на первой ферме достигает заданного значения. Смысл использования здесь оператора continue тот же: "переступить" через строки, в которых выполняются вычисления, связанные с переводом овец с одной фермы на другую, т.е. не выполнять эти строки. Обратите внимание, цикл while, построенный по дням месяца, не прерывается независимо от факта перевода овец, потому что действие оператора continue распространяется на ближайший оператор цикла, в данном случае - на оператор цикла for.

В качестве Условия в операторе цикла for используется сложное выражение:

for(day=1; day<=30 && Two_Farm<Purpose; day++)// Цикл по дням

Использование операции && ("и") означает, что цикл будет выполняться до тех пор, пока будут справедливы оба условия:

месяц ещё не закончился, т.е переменная day остаётся в пределах от 1 до 30 включительно;

количество овец на второй ферме не достигло заданного, т.е. переменная Two_Farm меньше Purpose (35 000).

Если же хотя бы одно из условий не выполняется (становится ложным), цикл прекращается. Когда выполнение цикла for закончено (по любой из причин), управление передаётся оператору if:

if (Two_Farm >= Purpose) // Если цель достигнута,..
continue; //.. то месяцы не считаем
Mons++; // Считаем месяцы

Использование в этом месте кода оператора continue имеет простой смысл: продолжать считать месяцы только в том случае, если количество овец на второй ферме меньше ожидаемого. Если же цель уже достигнута, то значение переменной Mons не изменяется, а управление (в результате исполнения continue) передаётся в заголовок ближайшего оператора цикла, в этом случае - оператора цикла while.

Использование операторов continue во вложенных циклах отражено на рис. 48.


Рис. 48. Функциональная схема алгоритма, построенного на вложенных циклах. В теле каждого из циклов имеется свой оператор continue (othersheep.mq4).

В данном примере каждый из циклов (внешний и внутренний) содержит один оператор continue, действие которого распространяется только на "свой" ближайший цикл, а на события в другом цикле не влияет. В общем случае в теле цикла могут использоваться несколько операторов continue, каждый из которых может прерывать текущую итерацию в результате выполнения какого-либо условия. Количество операторов continue в теле цикла не ограничено.

Оператор switch

 

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

Формат оператора switch

 

Оператор switch состоит из заголовка и исполняемого тела. Заголовок содержит название оператора и Выражение, обрамлённое круглыми скобками. Тело оператора содержит один или несколько вариантов case и один вариант default.

Каждый из вариантов case состоит из ключевого слова case, Константы, ":" (знака "двоеточие') и операторов. Количество вариантов case не ограничено.

Вариант default состоит из ключевого слова default,: (знака двоеточие) и операторов. Обычно вариант default указывается в теле оператора switch последним, но он может находиться и в любом другом месте тела или вообще отсутствовать.

switch ( Выражение ) // Заголовок оператора
{ // Открывающая фигурная скобка
case Константа: Операторы // Один из вариантов case
case Константа: Операторы // Один из вариантов case
...
[ default: Операторы] // Вариант без параметра
} // Закрывающая фигурная скобка

Значениями Выражения и Параметров могут быть только значения целого типа. В качестве Выражения может использоваться константа, переменная, вызов функции или выражение. Каждый вариант case может быть помечен целой константой, символьной константой или константным выражением. Константное выражение не может включать переменные или вызовы функций.

Правило исполнения оператора switch

 

Передать управление первому из операторов, следующих за ":" (знаком двоеточия) того варианта case, значение Константы которого совпадет со значением Выражения, и далее последовательно исполнить все операторы, составляющие тело оператора switch. Проверка условия равенства Выражения и Константы производится в направлении сверху вниз и слева направо. Совпадение значений Констант разных вариантов case не допускается. Оператор break прекращает исполнение оператора switch и передаёт управление оператору, следующему за оператором switch.

Легко понять, что запись case Константа: представляет просто метку, на которую передаётся управление; и начиная с этой метки исполняются все операторы, составляющие тело оператора switch. Если же алгоритм программы предполагает исполнение группы операторов, соответствующих только одному из вариантов case, то последним в списке операторов, соответствующих одному варианту case, следует указать оператор break. Проследим работу оператора switch на примере.

Примеры применения оператора switch

Задача 18. Составить программу, в которой реализуются следующие условия: если курс поднялся выше заданного уровня, то выдать сообщение, в котором словами обозначено превышение над уровнем (до 10 пунктов); в остальных случаях сообщить, что курс не превышает заданный уровень.

Решение задачи с использованием оператора switch (эксперт pricealert.mq4):

//--------------------------------------------------------------------

// pricealert.mq4

// Предназначен для использования в качестве примера в учебнике MQL4.

//--------------------------------------------------------------------

int start() // Спец. функция start

{

double Level=1.3200; // Задан. уровень цены

int Delta=NormalizeDouble((Bid-Level)Point,0); // Превышение

if (Delta<=0) // Цена не выше уровня

{

Alert("Цена ниже уровня"); // Сообщение

return; // Выход из start()

}

//--------------------------------------------------------------------

switch(Delta) // Заголовок switch

{ // Начало тела switch

case 1: Alert("Плюс один пункт"); break;// Варианты..

case 2: Alert("Плюс два пункта"); break;

case 3: Alert("Плюс три пункта"); break;

case 4: Alert("Плюс четыре пункта"); break;//Здесь представлено

case 5: Alert("Плюс пять пунктов"); break;//10 вариантов case,

case 6: Alert("Плюс шесть пунктов"); break;//но в общем случае

case 7: Alert("Плюс семь пунктов"); break;//количество case

case 8: Alert("Плюс восемь пунктов");break;//не ограничено

case 9: Alert("Плюс девять пунктов");break;

case 10: Alert("Плюс десять пунктов");break;

default: Alert("Более десяти пунктов"); // С case не совпало

} // Конец тела switch

//--------------------------------------------------------------------

return; // Выход из start()

}

//--------------------------------------------------------------------

В данном варианте решения задачи используется оператор switch, в каждом варианте case которого используется оператор break. В зависимости от значения переменной Delta управление передаётся на один из вариантов case, в результате чего исполняются операторы, соответствующие этому варианту: функция Alert() и оператор break. Оператор break прекращает исполнение оператора switch, т.е. передаёт управление за его пределы, а именно - оператору return, завершающему работу специальной функции start(). Таким образом, в зависимости от значения переменной Delta, срабатывает один из вариантов case, а остальные варианты оказываются не затронутыми.

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


Рис. 49. Функциональная схема оператора switch в эксперте pricealert.mq4.

На функциональной схеме хорошо видно, что благодаря наличию в каждом варианте case оператора break, после исполнения операторов любого из вариантов управление передаётся за пределы оператора switch. Подобный принцип построения алгоритма с применением оператора switch использован и в файле stdlib.mq4, поставляемом в составе клиентского терминала (..\experts\libraries\stdlib.mq4).

Рассмотрим другой случай, не предусматривающий использование break в каждом варианте case.

Задача 19. Дано 10 баров. Сообщить номера всех баров, начиная с n-го.

Закодировать решение этой задачи достаточно просто (скрипт barnumber.mq4):

//--------------------------------------------------------------------

// barnumber.mq4

// Предназначен для использования в качестве примера в учебнике MQL4.

//--------------------------------------------------------------------

int start() // Специальная функция start()

{

int n = 3; // Заданный номер

Alert("Номера баров, начиная с ", n,":");// Не зависит от n

//--------------------------------------------------------------------

switch (n) // Заголовок оператора switch

{ // Начало тела switch

case 1: Alert("Бар 1"); // Варианты..

case 2: Alert("Бар 2");

case 3: Alert("Бар 3");

case 4: Alert("Бар 4"); // Здесь представлено 10..

case 5: Alert("Бар 5"); //..вариантов case, но в..

case 6: Alert("Бар 6"); //..общем случае количество..

case 7: Alert("Бар 7"); //..case не ограничено

case 8: Alert("Бар 8");

case 9: Alert("Бар 9");

case 10: Alert("Бар 10");break;




Поделиться с друзьями:


Дата добавления: 2014-12-29; Просмотров: 388; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.141 сек.