package com.javarush.task.pro.task04.task0410; import java.util.Scanner; /* Второе минимальное число из введенных */ public class Solution { public static void main(String[] args) { Scanner s = new Scanner(System.in); int m1 = s.nextInt(); int m2 = s.nextInt(); int tmp; if (m2 <= m1) { // вот тут мы сравнили и поменяли tmp = m2; // местами первое и второе вводимое число m2 = m1; // !!! ПО МНЕ ЭТО ЗАПИСЬ ДЕЛАЕТ м1 и м2 m1 = tmp; // одинаковыми числами !!! НО ОНА ИХ } // меняет МЕСТАМИ, ЗАЧЕМ? // System.out.println(m1); стало равно 4 // System.out.println(m2); стало равно 8 while (s.hasNextInt()) { int x = s.nextInt(); if (x < m1) { // условие которое m2 = m1; // находит мин1 m1 = x; // (минимальное число) } // System.out.println(m1); else if (x > m1 && x < m2) { m2 = x; } } System.out.println(m2); } } 5 часов, два вечера потратил на решение, но так не понял как это работает. Кому не сложно на пальцах объясните плиз) какую книгу посоветуете для начала? почти все есть в пдф. А так задачка конечно жесть)