| Экзамен-2000: еще одна ступень к успеху, часть 1-я |
|
|
Thursday, 01 June 2006 | Зэев Фрайман, д-р Евгений Канель для раздела Ученье – свет Мы тут посоветовались и решили, что не будем собирать материалы по «Клубу Javaистов» в один день, а станем публиковать их раза три в неделю. Сегодня – три задачи из государственного экзамена (базовый уровень, то есть 2 первых «учебных единицы» из 5) 2000-го года.
С условиями и решениями, конечно – переводы и варианты и того, и другого наши.
Задача 4
Напишите класс, который заполняет массив размером 100 элементов целыми случайными числами от 1 до 20 включительно. Класс должен дважды распечатать массив : от начала к концу и от конца к началу.
class exer222_00_4{
public static void main (String args[]){
int m[]=new int[100];
int i;
for (i=0;i<100;i++) m[i]=(int)(10*Math.random()+1);
for (i=0;i<100;i++) IO.write(m[i]+" ");
for (i=99;i!=-1;i--) IO.write(m[i]+" ");
}
}
Задача 5
Напишите класс, который читает 100 чисел и печатает каждое число, которое больше предыдущего ( первое число не печатается).
Например: для следующих 10 вводимых чисел: 7, 9, 18, 6, 15, 3, 3, 19, 2, 1 будут напечатаны числа 9, 18, 15, 19.
class exer222_00_5{
public static void main (String args[]){
int i,x1,x2;
x1=IO.readInt();
for (i=1;i<100;i++){
x2=IO.readInt();
if (x2>x1) IO.writeln(x2);
x1=x2;
}
}
}
Задача 7
Дан массив размером 80 элементов, содержащий числа. Напишите метод, который читает дополнительное число К и проверяет, действительно ли сумма первых К элементов массива больше, чем сумма его остальных элементов. Если да – метод печатает сумму первых элементов. Если нет – печатает соответствующее сообщение.
Программа должна включать в себя необходимые проверки правильности вводимого значения К.
class exer222_00_7{
static void fill(int[] m){
for (int i=0;i<80;i++) m[i]=(int)(10*Math.random());
}
static void control(int[] m, int k){
int i,sum1=0,sum2=0;
for (i=0;i<=k;i++) sum1=sum1+m[i];
for (i=(k+1);i<80;i++) sum2=sum2+m[i];
IO.writeln(sum1+" "+sum2);
if (sum1>sum2) IO.writeln(sum1);
else IO.writeln("Second part is biggest");
}
public static void main (String args[]){
int m[]=new int[80];
fill(m);
int k=IO.readInt();
if ((k=80)) IO.writeln("Impossible");
else control(m,k);
}
}
|