Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
2 / 2 / 5
Регистрация: 31.03.2014
Сообщений: 102

Массив из чётных элементов другого массива

30.04.2014, 00:22. Показов 2746. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо было создать массив из случайных чисел. Размер массива задаётся пользователем с клавиатуры. Потом из массива выдрать чётные элементы и сделать массив уже из них. Код вроде работает, но как-то странно. Иногда правильно, а иногда - то нули выводит, то ещё что...

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import static java.lang.System.out;
 
import java.util.Scanner;
public class MassivSklav {
 
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int m = 0;
        int a = 0;
        int c1;
        int l = 0;
        int[] mas;
        int[]mas2;
Scanner sc = new Scanner(System.in);
out.println("Введите число");
if(sc.hasNextInt()){
    m = sc.nextInt();
}
else {
    for(c1 = 0; c1<2; c1++){
    Scanner mc = new Scanner(System.in);
    out.println("Введите число ");
    if(mc.hasNextInt()){
        m = mc.nextInt();
    }
    
    }
    if(c1>1){
        out.println("Вы использовали все доступные попытки ");
    }
    }
mas2 = new int[m];
for (int i = 0; i<mas2.length; i++){
mas2[i] = (int)(Math.random()*m);
out.print(mas2[i]+" ");
}
for (int i = 0; i<mas2.length; i++){
    a = mas2[i]%2;
    if(a==0&&mas2[i]>0){
        l++;
    }
}
out.println();
out.println();
mas = new int[l];
for (int i = 0; i<mas.length; i++){
    int x = mas2[i]%2;
    if (mas2[i]>0&&x==0){
        mas[i]=mas2[i];
        out.print(mas[i]+" ");
    }
}
out.println();
out.println();
for (int i = 0; i<mas.length; i++){
    out.print(mas[i]+" ");
}
}
}
Может, такое условие некорректно?
Java
1
2
3
if (mas2[i]>0&&x==0)
 
if(a==0&&mas2[i]>0)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.04.2014, 00:22
Ответы с готовыми решениями:

Составить массив из четных чисел другого массива
Как в программе объявить массив AC составленный из целых чисел массива В unit Unit3; interface uses Windows, Messages,...

Сформировать массив С из элементов четных столбцов и массив В из элементов нечетных строк массива А
Дана матрица А= 4.8, 3.2, 9.1, 5 5.1, 6, 1.4, -1 4.3, 1.15, 2.8, 3.14 в которой m=3 n=4. Необходимо сформировать массив С из...

Сформировать массив С из элементов четных столбцов, и массив В из элементов нечетных строк массива А
Задан массив А(m=3,n=4). Сформировать массив С из элементов четных столбцов и массив В из элементов нечетных строк массива А.

9
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
30.04.2014, 01:00
обратите внимание на метод everSecond как можно сделать с одним циклом
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
 
public class Main {
 
    public static void main(String[] args) {
        int[] mass1;
        int[] mass2;
        Scanner sc = new Scanner(System.in);
        Random random = new Random();
        System.out.println("Enter length mass1");
        mass1 = new int[sc.nextInt()];
 
        for (int i = 0; i < mass1.length; i++) {
            mass1[i] = random.nextInt(100);
        }
 
        System.out.println("Mass1=" + Arrays.toString(mass1));
        mass2 = everSecond(mass1);
 
        System.out.println("Mass2=" + Arrays.toString(mass2));
    }
 
    public static int[] everSecond(int[] array) {
        int[] returnMass = new int[array.length / 2];
        for (int i = 1, j = 0; i < array.length; i += 2, j++) {
            returnMass[j] = array[i];
        }
 
        return returnMass;
    }
 
}
0
173 / 131 / 74
Регистрация: 04.12.2013
Сообщений: 552
30.04.2014, 01:15
tankomaz, я только что протестил то, что вы прислали... Это вообще что?)))
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
30.04.2014, 01:18
Массив из чётных элементов другого массива
ееем, а что вызвало непонятку?
0
173 / 131 / 74
Регистрация: 04.12.2013
Сообщений: 552
30.04.2014, 01:20
tankomaz, введите при запуске программы просто число "3".
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
30.04.2014, 01:22
Java
1
2
3
4
Enter length mass1
3
Mass1=[82, 16, 73]
Mass2=[16]
и что тут не так?
0
173 / 131 / 74
Регистрация: 04.12.2013
Сообщений: 552
30.04.2014, 01:22
tankomaz, 73 - число четное?
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
30.04.2014, 01:23
ааа, то вам не каждое второе число нужно? каюсь - ошибся при прочтении задания
0
173 / 131 / 74
Регистрация: 04.12.2013
Сообщений: 552
30.04.2014, 01:24
tankomaz, видите =) Прям как я в теме, где нужно было найти слова начинающиеся на букву "O".
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
30.04.2014, 01:27
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
 
public class Main {
 
    public static void main(String[] args) {
        int[] mass1;
        int[] mass2;
        Scanner sc = new Scanner(System.in);
        Random random = new Random();
        System.out.println("Enter length mass1");
        mass1 = new int[sc.nextInt()];
 
        for (int i = 0; i < mass1.length; i++) {
            mass1[i] = random.nextInt(100);
        }
 
        System.out.println("Mass1=" + Arrays.toString(mass1));
        mass2 = everSecond(mass1);
 
        System.out.println("Mass2=" + Arrays.toString(mass2));
    }
 
    public static int[] everSecond(int[] array) {
        int count = 0;
        for (int i = 0; i < array.length; i++) {
            if (array[i] % 2 == 0) {
                count++;
            }
        }
 
        int[] returnMass = new int[count];
 
        for (int i = 0, j = 0; i < array.length; i++) {
            if (array[i] % 2 == 0) {
                returnMass[j++] = array[i];
            }
        }
        return returnMass;
    }
 
}
прошу, максимально "не заумно"

Добавлено через 44 секунды
оно то знаете - ночью спать нужно, вообще-то
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.04.2014, 01:27
Помогаю со студенческими работами здесь

Сформировать новый массив Zk, состоящий из четных элементов массива Хп и нечетных элементов массива Yn
Даны два одномерных массива Хn и Yn. Сформировать новый массив Zk, состоящий из четных элементов массива Хп и нечетных элементов массива...

Дан массив из 10 элементов. Найти сумму четных элементов.количество элементов массива должно вводиться с клавиатуры
Дан массив из 10 элементов. Найти сумму четных элементов.количество элементов массива должно вводиться с клавиатуры.

Сформировать массив из положительных элементов одного массива и отрицательных элементов другого
Даны массив А и массив В, в каждом по 10 элементов. Сформировать новый массив, состоящий из положительных элементов массива А и...

Сформировать массив из положительных элементов одного массива и отрицательных элементов другого
Даны массив А и массив В, в каждом по 10 элементов. Сформировать новый массив, состоящий из положительных элементов массива А и...

Ввести массив А (7, 5). Сформировать одномерный массив В (35) из четных положительных элементов массива А
Ввести массив А (7, 5). Сформировать одномерный массив В (35) из четных положительных элементов массива А. Остаток массива В заполнить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru