Class primer_for5

{

static Scanner reader = new Scanner(System.in);

public static void main(String[] args)

{

int x, count=0; //счетчик случаев count станавливается в начальное значение, равное 0

for (int i=1; i<=10; i++) //цикл из 10 повторов, счетчик повторов – переменная i

{

x=(int)(90*Math.random()+10); //генерируется случайное целое двузначное

//положительное число

System.out.print(x+" "); // случайное число выводится на экран

if (x%2==0)

count++; //если случайное число – четное, счетчик случаев увеличивается на 1

}

System.out.println(" Число четных чисел в серии="+count); // Итоговое значение

// переменной-счетчика случаев выводит на экран только(!) после завершения цикла

}

}

Обратите внимание, что команда "увеличить на 1 счетчик случаев" (count++;) не записана в фигурных скобках: это допускается в тех случаях, когда блок команд, которые надо выполнить в случае, если условие верно, содержит только одну-единственную команду.

Разумеется, при необходимости можно использовать не одну, а две, три и даже более переменных-счетчиков. Однако в тех случаях, когда необходимое для реализации поставленной задачи количество переменных-счетчиков становится больше 3-4-х, используются не отдельные переменные, а так называемый массив счетчиков – о таких инструментах речь пойдет в последних разделах курса.


Раздел №17.
Вычисления с использованием команды повтора – Цикл for

Очень большую группу задач составляют те, в которых есть необходимость в подсчете не количества значений, соответствующих определенному условию, а суммы таких значений. В этих случаях принято говорить, что следует использовать сумматор (переменную-сумматор). Это могут быть задачи, в которых надо определить общий вес товаров, доставляемых на склад, или общую сумму, которую должен заплатить покупатель в магазине за покупки, или среднюю оценку класса (а для подсчета среднего арифметического ведь надо сначала подсчитать сумму оценок) – и так далее.

Использование "сумматора" в цикле

Работа с переменной-сумматором в цикле похоже на работу со "счетчиком случаев" (о чем мы достаточно подробно говорили в предыдущей теме). Сходство это заключается в первую очередь в том, что сумматор, как и "счетчик случаев", необходимо обязательно обнулить перед началом использования (как правило – до начала цикла).

Однако есть и чрезвычайно существенная разница между использованием сумматора и "счетчика циклов":

· "счетчик случаев" в каждом "подходящем случае" увеличивается, как правило, на 1

· "сумматор" же при каждом "подходящем случае" увеличивается на некоторое значение (как правило – на значение, связанное с сутью задачи).

Рассмотрим ситуацию: покупатель в магазине расплачивается за 30 покупок, и надо определить количество покупок, стоимость каждой из которых превышает 500 рублей, а также определить общую сумму всех сделанных им покупок.

Примем решение, что в классе используется переменная-счетчик случаев count, а также переменная-сумматор sum.

Перед началом цикла обе переменные необходимо обнулить, то есть записать:

count=0;

sum=0;

В теле же цикла (он будет повторяться 30 раз – по числу покупок), подсчет количества товаров, стоимость которых превышает 500 рублей, будет выполняться командой (решим, что переменная х содержит значение, указывающее на стоимость товара в каждой из покупок):

if (x>500) count++;

Это означает, что мы используем переменную-счетчик для подсчета количества соответствующих покупок.

А вот подсчет общей стоимости всех купленных товаров будет выполняться командой:

sum=sum+x

Это означает, что значение переменной-сумматора sum каждый раз (как видите, нет в этой команде никакого условия) увеличивается на значение переменной х.

Кстати, эту команду можно записать в форме, принятой в языке Java:

sum+=x

В итоге класс, о котором мы говорим, может выглядеть так:

import java.util.*;


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



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