Главная / Программирование /
Язык программирования Java и среда NetBeans / Тест 3
Язык программирования Java и среда NetBeans - тест 3
Упражнение 1:
Номер 1
Какие выражения принимают значение true
при a = true
и b = false
?
Ответ:
 (1) a&&b
 
 (2) a||b
 
 (3) a^b
 
 (4) !a
 
Номер 2
Какие выражения принимают значение false
при a = true
и b = false
?
Ответ:
 (1) a&&b
 
 (2) a||b
 
 (3) a^b
 
 (4) !a
 
Номер 3
Какие выражения принимают значение true
при a = false
и b = true
?
Ответ:
 (1) a&&b
 
 (2) a||b
 
 (3) a^b
 
 (4) !a
 
Упражнение 2:
Номер 1
Какие переменные после объявления
int j1;
byte i1,i2=-5;
short i3=-15600;
long m1=1,m2,m3=-100;
имеют значение 0?
Ответ:
 (1) j1
 
 (2) i1
 
 (3) i2
 
 (4) i3
 
 (5) m1
 
 (6) m2
 
 (7) m3
 
Номер 2
Какие переменные после объявления
int j1;
byte i1=0,i2=-5;
short i3=-1;
long m1=1,m2,m3=-100;
имеют значение 0?
Ответ:
 (1) j1
 
 (2) i1
 
 (3) i2
 
 (4) i3
 
 (5) m1
 
 (6) m2
 
 (7) m3
 
Номер 3
Какие переменные после объявления
int j1;
byte i1,i2=-5;
short i3=-5;
long m1=1,m2,m3=-5;
имеют значение -5?
Ответ:
 (1) j1
 
 (2) i1
 
 (3) i2
 
 (4) i3
 
 (5) m1
 
 (6) m2
 
 (7) m3
 
Упражнение 3:
Номер 1
В каком случае переменной будет присвоено значение, соответствующее латинской букве "a"?
Ответ:
 (1) char ch='a';
 
 (2) char ch='\u0061';
 
 (3) char ch=98;
 
Номер 2
В каком случае переменной будет присвоено значение, соответствующее вопросительному знаку "?"?
Ответ:
 (1) char ch='a'-34;
 
 (2) char ch='\u0061';
 
 (3) char ch='a'+1000/'b';
 
Упражнение 4:
Номер 2
В каком случае значение переменной i
будет иметь неотрицательное значение?
Ответ:
 (1) int i = Integer.signum(256);
 
 (2) int i = Integer.signum(-1);
 
 (3) int i = Long.signum(1);
 
 (4) int i = Integer.signum(0);
 
Номер 3
В каком случае значение переменной i
будет иметь неположительное значение?
Ответ:
 (1) int i = Integer.signum(256);
 
 (2) int i = Integer.signum(-1);
 
 (3) int i = Long.signum(1);
 
 (4) int i = Integer.signum(0);
 
Упражнение 5:
Номер 1
В каком случае значение переменной i
всегда будет в интервале 0 < i
< 1
Ответ:
 (1) double i = Math.ceil(0.5);
 
 (2) double i = Math.random();
 
 (3) double i = Math.signum(0) + Math.random();
 
 (4) double i = Math.round(Math.signum(0.1)/2);
 
 (5) double i = Math.signum(0.1)/2
 
Номер 2
В каком случае значение переменной i
всегда будет в интервале 0 < i
<= 1
Ответ:
 (1) double i = Math.ceil(0.5);
 
 (2) double i = 2*Math.random();
 
 (3) double i = Math.signum(0) + Math.random();
 
 (4) double i = Math.round(Math.signum(0.1)/2);
 
Номер 3
В каком случае значение переменной i
всегда будет в интервале 0 <= i
< 1
Ответ:
 (1) double i = Math.ceil(0.5) + Math.signum(-0.1);
 
 (2) double i = Math.random();
 
 (3) double i = Math.round(Math.signum(0.1)/2);
 
Упражнение 6:
Номер 1
К какому типу преобразуются вещественные величины в Java?
Ответ:
 (1) int
 
 (2) float
 
 (3) double
 
 (4) long
 
Номер 2
К какому типу преобразуются целочисленные величины в Java?
Ответ:
 (1) int
 
 (2) float
 
 (3) double
 
 (4) long
 
Номер 3
В каком случае присваивание недопустимо?
Ответ:
 (1)
char c = 1;
int i = c;
 
 (2)
float f = 15;
double d = f;
 
 (3)
double d = 1.5;
float f = d;
 
 (4)
short s = 20;
byte b = (byte)s;
 
Упражнение 7:
Номер 1
Какие утверждения являются верными?
Ответ:
 (1) работа с оболочечными классами быстрее работы с примитивными типами 
 (2) оболочечные классы требуют больше памяти, чем примитивные типы 
 (3) при операциях упаковки-распаковки происходит копирования значений в промежуточные буферные ячейки 
Номер 2
Какие утверждения являются неверными?
Ответ:
 (1) работа с оболочечными классами быстрее работы с примитивными типами 
 (2) оболочечные классы требуют больше памяти, чем примитивные типы 
 (3) при операциях упаковки-распаковки происходит копирования значений в промежуточные буферные ячейки 
Номер 3
Для чего предназначены ссылочные типы переменных?
Ответ:
 (1) для создания объектов примитивного типа 
 (2) для хранения констант для получения максимальных и минимальных значений 
 (3) предоставляют методы классов, которые могут работать в отсутствии объекта соответствующего типа 
Упражнение 8:
Номер 1
В каком выражении приоритет вычисления будет такой же, как в выражении ((a*b)/c)+d
?
Ответ:
 (1) a*b/c+d
 
 (2) a*b/(c+d)
 
 (3) a*(b/c)+d
 
 (4) (a*b)/c+d
 
 (5) (a*b/c)+d
 
Номер 2
В каком выражении приоритет вычисления отличается от приоритета в выражении ((a*b)/c)+d
?
Ответ:
 (1) a*b/c+d
 
 (2) a*b/(c+d)
 
 (3) a*(b/c)+d
 
 (4) (a*b)/c+d
 
 (5) (a*b/c)+d
 
Номер 3
В каком выражении приоритет вычисления будет такой же, как в выражении a+b*c/d
?
Ответ:
 (1) (a+b)*c/d
 
 (2) a+(b*c)/d
 
 (3) a+b*(c/d)
 
 (4) a+(b*c/d)
 
Упражнение 9:
Номер 1
В каком случае в результате выполнения указанного кода будет выведено сообщение Результат сравнения = 1
, если в программе заданы перечисления
enum Monthes {jan,feb,mar,apr,may,jun,jul,aug,sept,oct,nov,dec};
enum Spring {march, apr, may};
Ответ:
 (1)
Spring spr1=Spring.march, spr2;
spr2=spr1;
spr1=Spring.may;
System.out.println("Результат сравнения = "+spr2.compareTo(Spring.march));
 
 (2)
Spring spr1=Spring.apr, spr2;
spr2=spr1;
spr1=Spring.may;
System.out.println("Результат сравнения = "+spr2.compareTo(Spring.march));
 
 (3)
Monthes m1=Monthes.nov, m2;
m2=m1;
m1=Monthes.dec;
System.out.println("Результат сравнения = "+m1.compareTo(m2));
 
Номер 2
В каком случае значение переменной i
будет равно 2, если в программе заданы перечисления
enum Monthes {jan,feb,mar,apr,may,jun,jul,aug,sept,oct,nov,dec};
enum Spring {march, apr, may};
Ответ:
 (1)
Monthes m1=Monthes.jan, m2;
m2=Monthes.feb;
int i = m1.compareTo(m2) + m1.ordinal();
 
 (2)
Monthes m1=Monthes.jan, m2;
m2=m1;
m1=Monthes.dec;
int i = m1.compareTo(m2) + m1.ordinal();
 
 (3)
Monthes m1=Monthes.feb, m2;
m2=Monthes.jan;
int i = m1.compareTo(m2) + m1.ordinal();
 
Номер 3
В каком случае значение переменной i
будет отрицательным, если в программе заданы перечисления
enum Monthes {jan,feb,mar,apr,may,jun,jul,aug,sept,oct,nov,dec};
enum Spring {march, apr, may};
Ответ:
 (1)
Monthes m1=Monthes.jan, m2;
m2=Monthes.feb;
int i = m1.compareTo(m2) + m1.ordinal();
 
 (2)
Monthes m1=Monthes.jan, m2;
m2=m1;
m1=Monthes.dec;
int i = m1.compareTo(m2) + m1.ordinal();
 
 (3)
Monthes m1=Monthes.feb, m2;
m2=Monthes.jan;
int i = m1.compareTo(m2) + m1.ordinal();
 
Упражнение 10:
Номер 1
Какие утверждения являются верными?
Ответ:
 (1) распаковка - это создание объекта оболочечного класса из значения примитивного типа 
 (2) упаковка - это преобразование из объекта оболочечного класса в величину примитивного типа 
 (3) упаковка и распаковка для числовых классов осуществляется автоматически. 
Номер 2
Какие утверждения являются неверными?
Ответ:
 (1) распаковка - это создание объекта оболочечного класса из значения примитивного типа 
 (2) упаковка - это преобразование из объекта оболочечного класса в величину примитивного типа 
 (3) упаковка и распаковка для числовых классов осуществляется автоматически. 
Номер 3
Какие утверждения являются верными?
Ответ:
 (1) упаковка - это создание объекта оболочечного класса из значения примитивного типа 
 (2) распаковка - это преобразование из объекта оболочечного класса в величину примитивного типа 
 (3) упаковка и распаковка для числовых классов осуществляется автоматически. 
Упражнение 11:
Номер 1
В каком случае на этапе компиляции возникнет ошибка?
Ответ:
 (1)
boolean a=true, b;
int c = (int)(Math.random()-0.5);
if (c==0) {
b=true;
}
else {
b=false;
}
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
};
 
 (2)
int a=0, b;
b = (int)(Math.random()-0.5);
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
};
 
 (3)
char a='a', b;
b = (char)(a + 1);
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
};
 
Номер 2
В каком случае на этапе компиляции не возникнет ошибка?
Ответ:
 (1)
boolean a=true, b;
int c = (int)(Math.random()-0.5);
if (c==0) {
b=true;
}
else {
b=false;
}
if (a==b) {
System.out.println("a и b имеют одинаковые значения");
};
 
 (2)
int a=0, b;
b = (int)(Math.random()-0.5);
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
};
 
 (3)
char a='a', b;
b = (char)(a + 1);
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
};
 
Номер 3
В каком случае на этапе компиляции не возникнет ошибка?
Ответ:
 (1)
double a=0.5, b;
b = Math.random()-a;
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
}
 
 (2)
boolean a=true, b;
int c = (int)(Math.random()-0.5);
if (c==0) {
b=true;
}
else {
b=false;
}
if (a=b) {
System.out.println("a и b имеют одинаковые значения");
};
 
 (3)
int a=1, b;
b = Math.random()+1;
if (a==b) {
System.out.println("a и b имеют одинаковые значения");
};
 
Упражнение 12:
Номер 1
В каком случае значение переменной i
будет равно 8?
Ответ:
 (1) float i = Math.max(0,4)/2+Math.signum(-1)*8;
 
 (2) float i = (Math.max(0,4)/2+Math.signum(-1))*8;
 
 (3) double i = Math.pow(2.0,3);
 
 (4) double i = Math.pow(3,2);
 
Номер 2
В каком случае значение переменной i
всегда будет в интервале 0 < i
< 8?
Ответ:
 (1) double i = Math.pow(3,2)+2*Math.signum(-1.0);
 
 (2) float i = (Math.max(0,4)/2+Math.signum(-1))*8;
 
 (3) double i = Math.pow(3,2)-2*Math.signum(-1.0);
 
Номер 3
В каком случае значение переменной i
всегда будет в интервале 0 <= i
<= 8?
Ответ:
 (1) double i = Math.pow(3,2)+2*Math.signum(-1.0);
 
 (2) float i = (Math.max(0,4)/2+Math.signum(-1))*8;
 
 (3) double i = Math.pow(3,2)-2*Math.signum(-1.0);
 
 (4) double i = Math.random();