Цель. Научиться применять структуры выбора for, while и do/while для циклического выполнения операторов программы.
Задачи.
1. Уметь использовать операции инкремента, декремента и присваивания.
2. Уметь использовать циклы.
3. Уметь производить тестирование программ.
4. Уметь осуществлять поиск информации.
Необходимое оборудование и ПО:
1. ПК с выходом в Интернет;
2. Виртуальная машина Java;
3. NetBeans IDE 8.0;
4. браузер Google Chrome.
Задание 1.
В Java применяется несколько операций присваивания, с помощью которых можно упростить запись с выражением. Также в Java используются унарные операции инкремента и декремента.
Заполнить таблицу совместного редактирования
Приоритет операций и ассоциативность следующая.
Задание 2.
2.1. Определите значения каждой переменной после операции, если в начале операции все переменные имеют значение равное 5:
1) m=n++
Задачи.
1. Уметь использовать операции инкремента, декремента и присваивания.
2. Уметь использовать циклы.
3. Уметь производить тестирование программ.
4. Уметь осуществлять поиск информации.
Необходимое оборудование и ПО:
1. ПК с выходом в Интернет;
2. Виртуальная машина Java;
3. NetBeans IDE 8.0;
4. браузер Google Chrome.
Задание 1.
В Java применяется несколько операций присваивания, с помощью которых можно упростить запись с выражением. Также в Java используются унарные операции инкремента и декремента.
Заполнить таблицу совместного редактирования
Приоритет операций и ассоциативность следующая.
Операции
|
Ассоциативность
|
Тип операции
|
()
|
Слева на право
|
Круглые скобки
|
++ --
|
Справа налево
|
Унарные постфиксные
|
++ -- + -
|
Справа налево
|
Унарные
|
* / %
|
Слева на право
|
Мультипликативные
|
+ -
|
Слева на право
|
Аддитивные
|
< <= > >=
|
Слева на право
|
Отношения
|
== !=
|
Слева на право
|
Равенства
|
? :
|
Справа налево
|
Условные
|
= += -= *= /= %=
|
Справа налево
|
Присваивания
|
Задание 2.
1) m=n++
2) y=--x
3) p*=x++
4) q/=++x
5) w=(--x)+(w--)
6) k+=((--x)--)+10
7) d = (b++) +(c++) + (++d);
8) c = (b++) *(c++) / (++d);
9) i+= 2*( ++i);
10) i-= 2+(i++);
4) q/=++x
5) w=(--x)+(w--)
6) k+=((--x)--)+10
7) d = (b++) +(c++) + (++d);
8) c = (b++) *(c++) / (++d);
9) i+= 2*( ++i);
10) i-= 2+(i++);
2.2. Результат вычислений покажите преподавателю.
2.3. Напишите программу, которая бы вычисляла значение выражения (ПК № = № выражения). Для написания программы воспользуйтесь online учебной средой программирования. Ссылку на программу сохраните в таблице.
2.4. Поочередно выполните компиляцию программ (ссылки в таблице) и сравните результат ваших вычислений со значениями выполнения программы.
Задание 3.
3.1. Что рассчитывает и выводит на экран следующая программа?
class Ideone
{
public static void main (String[] args) {
int y, x=1, total=0;
while (x<=10) {
y=x*x;
System.out.println(y);
total+=y;
++x;
}
System.out.println("Ответ равен "+total);
}
}
Заполните трассировочную таблицу:
x
|
y
|
total
|
x<=10?
|
На экране
|
|
3.2. Таблицу покажите преподавателю.
3.3. Проверьте программу в среде программирования и сравните ваш результат с результатом работы программы.
Задание 4.
4.1. Что выполняет следующий фрагмент кода?
int y;
y=2;
do
{
System.out.println(y);
y+=2;
}
while (y<20);
Заполните трассировочную таблицу:
y
|
y<20?
|
На экране
|
|
4.2. Таблицу покажите преподавателю.
4.3. Проверьте фрагмент программы в среде программирования и сравните ваш результат с результатом работы программы.
4.4. Измените программу таким образом, чтобы использовался оператор for.
4.5. Вашу работу покажите преподавателю.0,
Задание 5.
1. Ознакомьтесь с постановкой задачи.
2. Сформулируйте алгоритм, используя блок-схему.
3. Напишите программу на Java.
4. Протестируйте, отладьте и выполните программу на Java.
5. Испытайте программу на трех различных наборах данных.
На оценку "4" (любая задача)
Значение "Пи". Вычислите значение "Пи" с помощью бесконечного ряда
Пи=4-(4/3)+(4/5)-(4/7)+(4/9)-(4/11)+...
Выведите таблицу, в которой представлены значения "Пи", аппроксимированные одним членом этого ряда, двумя членами ряда, тремя и т.д.
Пифагоровы тройки. В математике пифагоровой тройкой называется упорядоченный конечный набор из трёх натуральных чисел (x, y, z) удовлетворяющих следующему однородному квадратному уравнению: x^2+y^2=z^2
На оценку "5"
Песня "Двенадцать дней рождества". Напишите приложение, которое использует повторение и структуру switch для вывода текста песни "Двенадцать дней рождества".
* Одна структура switch должна использоваться для обозначения дня (например Первый, Второй и т.д.). Другая структура switch должна выводить текст соответствующей строки.
Слова песни вы можете найти на сайте http://www.12days.com/library/carols/12daysofxmas.htm
.
Контрольные вопросы
1. Ознакомьтесь с постановкой задачи.
2. Сформулируйте алгоритм, используя блок-схему.
3. Напишите программу на Java.
4. Протестируйте, отладьте и выполните программу на Java.
5. Испытайте программу на трех различных наборах данных.
На оценку "4" (любая задача)
Значение "Пи". Вычислите значение "Пи" с помощью бесконечного ряда
Пи=4-(4/3)+(4/5)-(4/7)+(4/9)-(4/11)+...
Выведите таблицу, в которой представлены значения "Пи", аппроксимированные одним членом этого ряда, двумя членами ряда, тремя и т.д.
Пифагоровы тройки. В математике пифагоровой тройкой называется упорядоченный конечный набор из трёх натуральных чисел (x, y, z) удовлетворяющих следующему однородному квадратному уравнению: x^2+y^2=z^2
Напишите приложение, в котором найдете все пифагоровы тройки, у которых значения чисел не превосходит 500.
* Используйте три вложенных цикла for для перебора всех возможных значений.
На оценку "5"
Песня "Двенадцать дней рождества". Напишите приложение, которое использует повторение и структуру switch для вывода текста песни "Двенадцать дней рождества".
* Одна структура switch должна использоваться для обозначения дня (например Первый, Второй и т.д.). Другая структура switch должна выводить текст соответствующей строки.
Слова песни вы можете найти на сайте http://www.12days.com/library/carols/12daysofxmas.htm
.
Контрольные вопросы
1. Сколько раз будет выполняться тело следующего оператора цикла:…k=0; for(i=1;i<=k+3;i++)k++;
2. Можно ли войти в тело цикла while, минуя его заголовок?
3. Когда проверяется истинность выражения в операторе цикла do…while?
2. Можно ли войти в тело цикла while, минуя его заголовок?
3. Когда проверяется истинность выражения в операторе цикла do…while?
Комментариев нет:
Отправить комментарий