Предлагаю еще несколько задач на
использование цикла for
и случайные числа – в этот раз задачи все разного уровня
сложности.
Задание №1
Напиши класс, который принимает с клавиатуры два
целых числа (Х и N) – и генерирует серию из 16 случайных чисел, отличающихся по значению
от Х не более, чем на N.
Задание №2
Напиши класс, который принимает с клавиатуры два
целых числа (Х и N) – и генерирует серию из 16 случайных чисел, отличающихся по значению
от Х не более, чем на N. Кроме того, должно быть соблюдено дополнительное условие: первая
половина серии должна состоять из чисел, больших Х, а вторая – из чисел,
меньших Х.
Задание №3
Напиши класс, который принимает с клавиатуры два
целых числа (Х и N) – и генерирует серию из 16 случайных чисел, отличающихся по значению
от Х не более, чем на N. Кроме того, должно быть соблюдено дополнительное условие: числа в
серии должны идти "зигзагом" по отношению к Х – то есть первое число в
серии должно быть больше Х, второе – меньше, третье – снова больше, четвертое –
снова меньше, и так далее.
Задание №4
Напиши класс, который принимает с клавиатуры два
целых числа (Х и N) – и генерирует серию из 16 случайных чисел, отличающихся по значению
от Х не более, чем на N. Кроме того, должны быть соблюдены два дополнительных условия:
1.
числа в серии
должны идти "зигзагом" по отношению к Х – то есть первое число в серии
должно быть больше Х, второе – меньше, третье – снова больше, четвертое – снова
меньше, и так далее;
2.
числа,
большие Х, должны быть четными, а те, которые меньше Х – нечетными.
Задание №5
Напиши класс, который принимает с клавиатуры два
целых числа (Х и N) – и генерирует серию из 16 случайных чисел, отличающихся по значению
от Х не более, чем на N. Кроме того, должны быть соблюдены три дополнительных условия:
1.
числа в серии
должны идти "зигзагом" по отношению к Х – то есть первое число в серии
должно быть больше Х, второе – меньше, третье – снова больше, четвертое – снова
меньше, и так далее;
2.
числа,
большие Х, должны быть четными, а те, которые меньше Х – нечетными;
3.
числа,
большие Х, должны представлять неубывающую серию, а числа, меньшие Х, должны
представлять невозрастающую серию.
Честно говоря, все задачи я придумал прямо
вот тут на ходу – и, кажется, получились какие-то зубодробительные… Так что
добавляю несколько нормальных…
Задание №6
Напиши класс, который генерирует серию из 20
случайных целых положительных двузначных чисел и проверяет, сколько раз в серии
встречаются такие пары соседних чисел, в которых оба числа – четные.
Задание №7
Напиши класс, который генерирует серию из 20
случайных целых положительных двузначных чисел и проверяет, какие пары соседних
чисел в серии встречаются чаще: те, в которых оба числа – четные, или такие, в
которых оба числа – нечетные.
Задание №8
Назовем "связной цепочкой" три
соседних числа (в серии двузначных положительных случайных чисел), для которых
выполняется следующее условие: последняя цифра первого числа равна первой цифре
второго числа, а также первая цифра третьего числа равна второй цифре второго
числа (как, например – 34 47 71).
Напиши класс, который принимает с клавиатуры
целое положительное число N и генерирует серию из N
двузначных положительных чисел – и проверяет:
1.
сколько в
серии было "связных цепочек";
2.
каким было
самое большое число из всех, относящихся к "связным цепочкам";
3.
в какой по порядку "связной цепочке"
встречалось самое большое число.
Примечание: можно представить несколько вариантов
этого задания – сначала такое, которые содержит решение только первого пункта,
затем – с решением первого и второго пунктов, потом – полный вариант.
import java.util.*;
ОтветитьУдалитьclass Zadanie_1
{
static Scanner reader = new Scanner (System.in);
public static void main (String [] args)
{
int x,n,a,i;
x=reader.nextInt ();
n=reader.nextInt();
for (i = 1; i<17; i++)
{
a=(int)(((x+n)-(x-n)+1)*Math.random())+(x-n);
System.out.print (a+" ");
}
}
}
import java.util.*;
ОтветитьУдалитьclass Zadanie_2
{
static Scanner reader = new Scanner (System.in);
public static void main (String [] args)
{
int x,n,b,a,i;
x=reader.nextInt ();
n=reader.nextInt();
for (i = 1; i<=8; i++)
{
a=(int)(((x+n)-(x+1)+1)*Math.random())+(x+1);
System.out.print (a+" ");
}
for (i = 1; i<=8; i++)
{
b=(int)(((x-1)-(x-n)+1)*Math.random())+(x-n);
System.out.print (b+" ");
}
}
}
import java.util.*;
ОтветитьУдалитьclass Zadanie_3
{
static Scanner reader = new Scanner (System.in);
public static void main (String [] args)
{
int x,n,b,a,i;
x=reader.nextInt ();
n=reader.nextInt();
for (i = 1; i<=8; i++)
{
a=(int)(((x+n)-(x+1)+1)*Math.random())+(x+1);
b=(int)(((x-1)-(x-n)+1)*Math.random())+(x-n);
System.out.print (a+" "+b+" ");
}
}
}
import java.util.*;
ОтветитьУдалитьclass Zadanie_4
{
static Scanner reader = new Scanner (System.in);
public static void main (String [] args)
{
int x,n,b,a,i;
x=reader.nextInt ();
n=reader.nextInt();
for (i = 1; i<=8; i++)
{
a=(int)((((x+n)-(x+1)+1)/2)*Math.random())+((x+1)/2);
a=a*2;
b=(int)((((x-1)-(x-n)+1)/2)*Math.random())+((x-n)/2);
b=b*2+1;
System.out.print (a+" "+b+" ");
}
}
}
Annie, прекрасные решения, умница))))
ОтветитьУдалитьСпасибо :)
ОтветитьУдалитьС Днем Рождения, Владимир Максович!
Спасибо, вы меня так растрогали...
ОтветитьУдалитьА фотографию вашу я приспособил на экран своего компа в школе и всем хвалюсь)))
Ого, огромное Вам спасибо!
ОтветитьУдалить