Public static int s1(int x)

{

int x100,x10,x1,s;

x100=x/100;

x10=(x/10)%10;

x1=x%10;

s=x100*x100+x1*x1;

return s;

}

}

Разберем с подробными объяснениями новый вариант решения.

class primer_method1 { Заголовок класса и открывающая тело класса фигурная скобка остались на месте, без изменений
public static void main(String[]args) { Заголовок главного метода и открывающая тело главного метода фигурная скобка остались на месте, без изменений
int x2,s2; Изменился список переменных, которые используются в главном методе, поскольку часть переменных ушла в отдельный метод (об этом – ниже).
for (int x=100; x<=999; x++) { Заголовок цикла и открывающая тело цикла фигурная скобка остались на месте, без изменений
x2=(x/10)%10; s2=x2*x2; В теле цикла используется переменная х2, в которую заносится вторая цифра числа (число десятков), и переменнаяs2, в которую заносится квадрат этой второй цифры
if (s2==s1(x)) System.out.print(x+" "); Очень важно: в команде выбора сравнивается переменная s2 с "чем-то", что фактически не существует(!) в главном методе: s1(x)… Как в этом случае поступает Java? Начинает проверять класс, есть ли в какой-то его части упоминание о "чем-то", что называется s1. В нашем случае сразу за главным методом, в продолжении класса обнаруживается блок, который действительно так называется.
} Скобка, закрывающая цикл
} Скобка, закрывающая тело главного метода
public static int s1(int x) Вот он, блок, который называется s1! На языке Java такие блоки называются методами. Любой метод (в том числе и наш, s1), как и главный метод, имеет заголовок и тело. Заголовок содержит служебные слова static public, после которых указывается тип значения, который этот метод вернет "туда, откуда его вызвали". Поскольку в нашем случае вызов состоялся из команды выбора, то и возвращаться значение будет в главный метод, в условие команды выбора. После типа метода записывается его название (s1 – в нашем случае). За названием, в круглых скобках, указывается список параметров, которые получает метод из "точки вызова". Вернитесь к команде выбора и обратите внимание, что в условии метод s1 вызывается так, что во время вызова ему посылается значение переменной х. Если метод получает несколько параметров, все они записываются в заголовке метода со своими типами и именами.
{ Скобка, открывающая тело метода
int x100,x10,x1,s; x100=x/100; x10=(x/10)%10; x1=x%10; s=x100*x100+x1*x1; В теле метода мы записали те переменные и команды, которые используются для определения первой и последней цифр, а также для вычисления суммы их квадратов
return s; Поскольку наш метод должен возвращать "туда, откуда его выззвали" (в нашем случае – в условие команды выбора, расположенной в теле главного метода) значение, в методе обязательно должна быть команда return, после которой указывается переменная, возвращающая значение. Очень важно: тип этой переменной и тип метода должны совпадать!
} Скобка, закрывающая тело метода s1
} Скобка, закрывающая тело класса

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: