CodeGym /Kurslar /Java SELF AZ /while dövrünün istifadəsi nümunələri

while dövrünün istifadəsi nümunələri

Java SELF AZ
Səviyyə , Dərs
Mövcuddur

1. while dövründən istifadə edərək rəqəmlərin cəmini hesablayırıq while

Gəlin, istifadəçidən klaviaturada rəqəmlər daxil edilməsini tələb edən və onların cəmini ekrana çıxaran bir proqram yazaq. Belə bir proqramın kodu (yalnız main metodunun daxilindəki kodu göstəririk) aşağıdakı kimi olacaq:

Kod İzah
Scanner console = new Scanner(System.in);
int sum = 0;
while (console.hasNextInt())
{
   int x = console.nextInt();
   sum = sum + x;
}
System.out.println(sum); 
Scanner obyektini konsoldan məlumat oxumaq üçün yaradırıq.
sum dəyişənində rəqəmlərin cəmini saxlayacağıq.
Konsolda tam ədədlər daxil edildiyi müddətcə

növbəti tam ədədi x dəyişəninə oxuyuruq.
x-i rəqəmlərin cəminə (dəyişən sum) əlavə edirik.

Hesablanan cəmi ekrana göstəririk.

2. while dövrü istifadə edilərək daxil edilən rəqəmlərin maksimumu

İkinci proqram da klaviaturadan rəqəmləri oxuyacaq (istifadəçi rəqəm kimi bir şey daxil etdiyi müddətcə), amma ekrana daxil edilmiş rəqəmlərin ən böyüyünü çıxarmaq lazımdır. Bu cür proqramın kodu belə görünəcəkdir (yalnız main metodunun daxilindəki kodu təqdim edirik).

Kod İzahedici
Scanner console = new Scanner(System.in);
int max = 0;
while (console.hasNextInt())
{
   int x = console.nextInt();
   if (x > max)
     max = x;
}
System.out.println(max); 
Scanner obyektini konsoldan məlumat oxumaq üçün yaradırıq.
max dəyişənində rəqəmlərin maksimumunu saxlayacağıq.
Konsoldan tam ədədlər daxil edildiyi müddətcə

növbəti rəqəmi x dəyişəninə oxuyuruq.
xmax müqayisə edirik. Əgər x max-dan böyükdürsə,
maksimumu yeniləyirik.

Tapılmış rəqəmlərin maksimumunu ekrana çıxarırıq.

Burada maraqlı bir məqam var: əgər klaviaturadan daxil edilən bütün ədədlər mənfi olarsa, proqram ekrana 0 çıxaracaq. Bu, əslində düzgün deyil.

Buna görə də, max dəyişəninin başlanğıc dəyəri mümkün qədər kiçik olmalıdır.

Variant 1:

Ona -2000000000 (mənfi iki milyard) təyin etmək olar. Bu artıq kifayət qədər yaxşıdır.

Variant 2:

int tipinin ən kiçik dəyərini təyin etmək. Bunun üçün xüsusi bir sabit var: Integer.MIN_VALUE;

Variant 3:

Daha yaxşısı — max-ı ilk daxil edilmiş rəqəmlə başlatmaq. Bu ən yaxşı variantdır. Amma bunu yalnız o halda etmək olar ki, məsələnin şərtinə görə istifadəçi ən azı bir rəqəm daxil etməlidir.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION