0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8

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

14.10.2020, 16:32. Показов 2894. Ответов 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__
2759 / 2066 / 509
Регистрация: 17.02.2014
Сообщений: 9,493
14.10.2020, 18:05
dimxn, ты не пробовал хоть чуть узнать про циклы forEach?
0
0 / 0 / 0
Регистрация: 21.12.2019
Сообщений: 8
14.10.2020, 18:32  [ТС]
Aviz__, пробовал, но при чём тут это? Я же прошу помочь мне с этим циклом, точнее переделать его под forEach...
0
 Аватар для Aviz__
2759 / 2066 / 509
Регистрация: 17.02.2014
Сообщений: 9,493
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__
2759 / 2066 / 509
Регистрация: 17.02.2014
Сообщений: 9,493
15.10.2020, 07:20
Цитата Сообщение от sladkiystaskoko Посмотреть сообщение
И их особо не парит логика твоего кода
правильно, у них работа есть, а такую хрень тока намекни гденить, так тебя на выстрел из мортиры не пустят к собеседованию. и да, это будет потом, когда времени переучить уже не будет((.
0
6 / 3 / 3
Регистрация: 14.10.2020
Сообщений: 13
15.10.2020, 17:56
Цитата Сообщение от Aviz__ Посмотреть сообщение
правильно, у них работа есть, а такую хрень тока намекни гденить, так тебя на выстрел из мортиры не пустят к собеседованию. и да, это будет потом, когда времени переучить уже не будет((.
ой, ты что-то уже не в ту сторону пошел, прочитай внимательно задание
0
 Аватар для Aviz__
2759 / 2066 / 509
Регистрация: 17.02.2014
Сообщений: 9,493
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 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru