Ниже приведена часть результата выполнения данной программы. Factors of 2: Factors of 3: Factors of 4: 2 Factors of 5: Factors of 6: 2 3 Factors of 7: Factors of 8: 2 4 Factors of 9: 3 Factors of 10: 2 5 Factors of 11: Factors of 12: 2 3 4 Factors of 13: Factors of 14: 2 7 Factors of 15: 3 5 Factors of 16: 2 4 8 Factors of 17: Factors of 18: 2 3 6 Factors of 19: Factors of 20: 2 4 5 В данной программе переменная i из внешнего цикла последовательно принимает значения до 2 до 100. А во внутреннем цикле для каждого числа от 2 до текущего значения переменной i выполняется проверка, делится ли это значение без остатка. В качестве упражнения попробуйте сделать данную программу более эффективной. (Подсказка: число итераций во внутреннем цикле можно уменьшить.) ## Упражнение для самопроверки по материалу главы 3 1. Напишите программу, которая вводила бы символы с клавиатуры до тех пор, пока не встретится точка. Предусмотрите в программе счетчик числа пробелов. Сведения о количестве пробелов должны выводиться в конце программы. 2. Какова общая форма многоступенчатой конструкции if-else-if? 3. Допустим, имеется следующий фрагмент кода: if(х < 10) if (у > 100) { if(!done) х = z; else у = z; } else System.out.println("error"); // что если? ```
С каким из операторов if связан последний оператор else?
Напишите цикл for, в котором перебирались бы значения от 1000 до 0 с шагом -2.
Корректен ли следующий фрагмент кода?for (int i = 0; i < num; i++) sum += i; count = i;
Какие действия выполняет оператор break? Опишите оба варианта этого оператора.
Какое сообщение будет выведено после выполнения оператора break в приведенном ниже фрагменте кода?for(i =0; i < 10; i++) {
while(running) {
if(x Что будет выведено на экран в результате выполнения следующего фрагмента кода?for(int i = 0; i<10; i++) {
System.out.print(i + " ");
if ( (i%2) == 0) continue;
System.out.println;
} Итерационное выражение для цикла for не обязательно должно изменять переменную цикла на фиксированную величину. Эта переменная может принимать произвольные значения. Напишите программу, использующую цикл for для вывода чисел в геометрической прогрессии 1, 2, 4, 8, 16, 32 и т.д. Код ASCII символов нижнего регистра отличается от кода соответствующих символов верхнего регистра на величину 32. Следовательно, для преобразования строчной буквы в прописную нужно уменьшить ее код на 32. Используйте это обстоятельство для написания программы, осуществляющей ввод символов с клавиатуры. При выводе результатов данная программа должна преобразовывать строчные буквы в прописные, а прописные — в строчные. Остальные символы не должны изменяться. Работа программы должна завершаться после того, как пользователь введет с клавиатуры точку И наконец, сделайте так, чтобы программа отображала число символов, для которых был изменен регистр. Что такое бесконечный цикл? Должна ли метка, используемая вместе с оператором break, быть определена в кодовом блоке, содержащем этот оператор?
Глава 4Введение в классы, объекты и методы
Основные навыки и понятия
Основные положения о классах
Создание объектов
Присваивание ссылок на объекты
Создание методов, возврат значений и использование параметров
Применение ключевого слова return
Возврат значения из метода
Добавление параметров в метод
Применение конструкторов
Создание параметризированных конструкторов
Представление об операторе new
Представление о “сборке мусора” и методах завершения
Применение ключевого слова this