Циклы
Switch (n)
Break;
Switch (n)
Break;
Switch (n)
Break;
Switch (n)
Break;
Switch (n);
Break;
Break;
Break;
Switch (month)
String input;
Int month;
. . . . . . . . . . . . . . . . .
Break;
Break;
Break;
Break;
Switch (n)
Оператор;
Оператор;
. . . . . . . . . . . . . . . . .
Break;
Оператор;
Оператор;
Break;
Оператор;
Оператор;
Оператор;
Switch (селектор)
Это цифра ноль
Break;
Break;
Switch (i)
I=Integer.parseInt(input);
String input;
Int i;
Это неизвестная цифра
Это цифра один или два
Для того, чтобы после выполнения нужной ветви оператора switch другие операторы не выполнялись, каждая ветвь должна заканчиваться оператором break:
input=JOptionPane.showInputDialog("Введите цифру:");
// преобразование из строкового значения в целое
{
case 0: System.out.printf(“\nЭто цифра ноль”);
case 1: case 2: System.out.printf(“\nЭто цифра один или два”);
default: System.out.printf(“\nЭто неизвестная цифра”);
}
В этом случае после ввода цифры 0 на экран будет выведено только одно сообщение:
Если в каждой ветви switch стоит не по одному, а по нескольку операторов, то необходимо брать их в фигурные скобки:
{
case метка-1:
{
}
case метка-2:
{
}
default:
{
}
}
Для улучшения читаемости программы необходимо использовать сдвиг операторов.
Можно использовать вложенные операторы switch, при этом в разных операторах могут быть одинаковые метки вариантов:
{
case 0: оператор;
case 1: switch (m)
{
case 0: оператор;
case 1: оператор;
default: оператор;
}
case 3: оператор;
default: оператор;
}
Пример:по заданному номеру месяца года определить количество дней в нем. В этом переключателе всего три ветви:
input=JOptionPane.showInputDialog("Введите номер месяца:");
// преобразование из строкового значения в целое
month=Integer.parseInt(input);
{
case 1: case 3: case 5:
case 7: case 8: case 10:
case 12: System.out.printf(“\n31 день”);
case 4: case 6: case 9:
case 11: System.out.printf(“\n30 дней”);
case 2: System.out.printf(“\n28 дней”);
default: System.out.printf(“\nТакого месяца нет\n”);
}
Часто встречающиеся ошибки программирования:
1. Точка с запятой после скобок селектора:
{
case 0: оператор;
. . . . . . . . . .
2. Отсутствие фигурных скобок после слова switch :
case 0: оператор;
. . . . . . . . . .
3. Перечисление меток вариантов без слов case:
{
case 0, 1, 2: n++;
. . . . . . . . . .
4. Перечисление меток вариантов через запятые:
{
case 0, case 1, case 2: n++;
. . . . . . . . . .
5. Отсутствие оператора break после ветвей переключателя:
{
case 0: case 1: case 2: n++;
case 3: n--;
. . . . . . . . . .
Одним из самых ценных свойств компьютеров является их способность многократно повторять последовательность одинаковых или похожих действий - циклов.
Являясь наиболее мощными структурами алгоритмических языков, циклы подразделяются на:
1. бесконечные циклы,
2. циклы с предусловием (циклы типа ПОКА),
3. циклы с постусловием (циклы типа ДО),
4. циклы с параметром (циклы типа ДЛЯ).
Бесконечный цикл может быть представлен следующей схемой:
int i=0, n=5;
//следующие операторы образуют бесконечный цикл:
while (i<=n)
{