Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8

Переделать цикл "for" на "forEach"

14.10.2020, 16:32. Показов 2866. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Вообщем, нужно переделать цикл из for на forEach, и я не знаю как это правильно записать
Вот код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package codes;
import java.util.Scanner;
public class Foreach {
    public static void main(String[] args) {
        Scanner masyv = new Scanner(System.in);
        int n;
        System.out.println("Введите размерность масива: ");
        n = masyv.nextInt();
        int []a= new int[n];
        int min = a[0];
        System.out.println("Введите масив: ");
        for(int i = 0; i < a.length;i++){
            a[i]=masyv.nextInt();
            min = a[0];
            if(a[i]<min){
                min=a[i];
            }
        }
        System.out.println("Наименьший парный элемент: "+ min);
    }
}
Задача заключается в том, что нужно вывести наименьший парный элемент масива, с циклом for выходит, а вот с циклом forEach - нет.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.10.2020, 16:32
Ответы с готовыми решениями:

Как переделать данный цикл for во вложенный цикл foreach?
Добрый день, как переделать данный цикл во вложенный цикл foreach? for (i in 0 until fieldPos.size) { for (j in 0...

Обработка XML. Цикл foreach (XmlNode.) вложенный во внешний foreach
Здравствуйте. Возникла проблема при обработке XML-файла (с помощью XMLDocument). В теме я новичок. Имеется XML файл такого типа: ...

Цикл foreach заменить на двойной цикл for
int mas = new int; Random Gen = new Random(); for (int i = 0; i &lt; mas.GetLength(0); i++) for...

23
30 / 21 / 11
Регистрация: 09.11.2010
Сообщений: 240
14.10.2020, 16:50
dimxn,
Java
1
for(int i:a)
0
0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8
14.10.2020, 16:56  [ТС]
Spotter, не то, оно выводит последнее число которое я вводил, а задача вывести наименьший парный элемент.
Например: Вводим массив 6, 4, 2, 8. Программа должна вывести число 2...
0
30 / 21 / 11
Регистрация: 09.11.2010
Сообщений: 240
14.10.2020, 17:10
dimxn, проверяйте свой код. Вопрос был как переделать цикл for на forEach.


Цитата Сообщение от dimxn Посмотреть сообщение
Java
1
min = a[0];
При каждом проходе цикла, в переменную min будет присваиваться первый элемент массива. Это неверная запись. Эту строку нужно вынести перед циклом.

Ну и по этому коду (если его исправить) вы находите минимальный элемент в массиве.
0
0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8
14.10.2020, 17:18  [ТС]
Spotter, вставил перед циклом, выводит 0...
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
14.10.2020, 17:54
dimxn, код покажи, чо за тупняк
0
0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8
14.10.2020, 17:58  [ТС]
xoraxax,
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package codes;
 
import java.util.Scanner;
 
public class Foreach {
    public static void main(String[] args) {
        Scanner masyv = new Scanner(System.in);
        int n;
        System.out.println("Введите размерность массива: ");
        n = masyv.nextInt();
        int []a= new int[n];
        int min = a[0];
        System.out.println("Введите массив: ");
        for(int i: a){
            a[i]=masyv.nextInt();
            if(a[i]<min){
                min=a[i];
            }
        }
        System.out.println("Наименьший парный элемент: " + min);
    }
}
0
 Аватар для Aviz__
2755 / 2062 / 509
Регистрация: 17.02.2014
Сообщений: 9,491
14.10.2020, 18:05
dimxn, ты не пробовал хоть чуть узнать про циклы forEach?
0
0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8
14.10.2020, 18:32  [ТС]
Aviz__, пробовал, но при чём тут это? Я же прошу помочь мне с этим циклом, точнее переделать его под forEach...
0
 Аватар для Aviz__
2755 / 2062 / 509
Регистрация: 17.02.2014
Сообщений: 9,491
14.10.2020, 18:44
Цитата Сообщение от dimxn Посмотреть сообщение
но при чём тут это?
при том, что это ключевой момент! попробуй еще и тебе станет стыдно за себя.

Добавлено через 1 минуту
Цитата Сообщение от dimxn Посмотреть сообщение
переделать его под forEach...
не могу лишать тебя удовольствия почувствовать себя человеком разума!
0
6 / 3 / 3
Регистрация: 14.10.2020
Сообщений: 13
14.10.2020, 23:38
Лучший ответ Сообщение было отмечено dimxn как решение

Решение

Достаточно лишь добавить новую итерационную переменную j в код и всё заработает:

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
import java.util.Scanner;
public class Foreach{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n;
        System.out.print("Vvedite razmernost masiva: ");
        n = sc.nextInt();
        int[] a = new int[n];
        int min = 0;
        
        System.out.print("Vvedite masiv: ");
        int j = 0;
        for(int i: a){
            a[j] = sc.nextInt();
            min = a[j];
            if(a[j] < min){
                System.out.print("Vnutri IF");
                min = a[j];
            }
            j++;
        }
        System.out.println("Naimenshyy element: " + min);
    }
}
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
15.10.2020, 01:20
чо за наркомания
0
6 / 3 / 3
Регистрация: 14.10.2020
Сообщений: 13
15.10.2020, 02:05
Цитата Сообщение от xoraxax Посмотреть сообщение
чо за наркомания
Решение я тебе кинул, де моё спасибо, мамонт
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
15.10.2020, 02:13
объясни, зачем тебе foreach, если ты заводишь отдельный счетчик? и ты еще утверждаешь, что не наркоман?
0
6 / 3 / 3
Регистрация: 14.10.2020
Сообщений: 13
15.10.2020, 02:30
Цитата Сообщение от xoraxax Посмотреть сообщение
объясни, зачем тебе foreach, если ты заводишь отдельный счетчик? и ты еще утверждаешь, что не наркоман?
Поверь, в универе часто такие задания задают для галочки. И их особо не парит логика твоего кода

Добавлено через 10 минут
Кстати, пока перечитывал свой ответ, понял, что отправил изначально не тот код
Вот решение:
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
import java.util.Scanner;
public class Foreach{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n;
        System.out.print("Vvedite razmernost masiva: ");
        n = sc.nextInt();
        int[] a = new int[n];
        
        System.out.print("Vvedite masiv: ");
        for(int i = 0; i < a.length; i++){
            a[i] = sc.nextInt();
        }
        
        int min = a[0];
        int j = 0;
        for(int i: a){
            if(a[j] < min){
                min = a[j];
            }
            j++;
        }
        System.out.println("Naimenshyy element: " + min);
    }
}
0
 Аватар для Aviz__
2755 / 2062 / 509
Регистрация: 17.02.2014
Сообщений: 9,491
15.10.2020, 07:20
Цитата Сообщение от sladkiystaskoko Посмотреть сообщение
И их особо не парит логика твоего кода
правильно, у них работа есть, а такую хрень тока намекни гденить, так тебя на выстрел из мортиры не пустят к собеседованию. и да, это будет потом, когда времени переучить уже не будет((.
0
6 / 3 / 3
Регистрация: 14.10.2020
Сообщений: 13
15.10.2020, 17:56
Цитата Сообщение от Aviz__ Посмотреть сообщение
правильно, у них работа есть, а такую хрень тока намекни гденить, так тебя на выстрел из мортиры не пустят к собеседованию. и да, это будет потом, когда времени переучить уже не будет((.
ой, ты что-то уже не в ту сторону пошел, прочитай внимательно задание
0
 Аватар для Aviz__
2755 / 2062 / 509
Регистрация: 17.02.2014
Сообщений: 9,491
15.10.2020, 18:08
sladkiystaskoko, учатся для чего? ты предлагаешь, наркоманское решение одного пункта лабы, чтобы только ее спихнуть. да, это тоже подход. я и пишу к чему он приведет. впрочем, прописные истины тебе не нужны, видно)). главное продержаться...
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
15.10.2020, 20:23
Цитата Сообщение от sladkiystaskoko
Вот решение:
Руки оторвать за такое решение...

Java
1
2
3
4
for(int i: a){
    if(i < min)
          min = i;
}
1
6 / 3 / 3
Регистрация: 14.10.2020
Сообщений: 13
15.10.2020, 20:29
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Руки оторвать за такое решение...
блин, точно
хахахаа, а я вспоминал, как же я раньше делал, моё почтение

Добавлено через 1 минуту
Цитата Сообщение от Aviz__ Посмотреть сообщение
учатся для чего? ты предлагаешь, наркоманское решение одного пункта лабы, чтобы только ее спихнуть. да, это тоже подход. я и пишу к чему он приведет. впрочем, прописные истины тебе не нужны, видно)). главное продержаться...
ты конечно молодец, я не против твоих рассуждений, только по факту толку от тебя ноль
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.10.2020, 20:29
Помогаю со студенческими работами здесь

Переделать из foreach в for
Господа, помогите переделать циклы из foreach в for в следующем коде. foreach (var plugin in Plugins) { ...

Переделать циклы из foreach в for
Господа, помогите переделать циклы из foreach в for в следующем коде. using System.Collections; using System.Collections.Generic; ...

Как переделать программу, чтобы внешний цикл был repeat.until, а цикл for вложенным? Паскаль
const x = 0.29; var y, sv, sz, fact, st: real; i, j, zn: integer; begin sz := 0; writeln('cycles for and while');

Как переделать html в php с использованием foreach?
Всем доброго времени суток. Есть хтмл с картинками при нажатии на которые открывается модальное окно с прокруткой картинок. &lt;div...

Цикл foreach
string arrayx = { &quot;123&quot;, &quot;1234&quot;, &quot;12345&quot; }; foreach (string str in arrayx) { ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru