1. Massivlərlə işləmək üçün faydalı nümunələr:
Fikrimcə, praktiki məsələlərə keçmək vaxtıdır. Sadə olanlardan başlayaq:
10 ədədlik massivi 0-dan 9-a qədər ədədlərlə doldurmaq: |
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = i;
} |
- 10 elementdən ibarət massiv obyekt yaradılır
- 0-dan 9-a qədər daxil dövr
- Hücrələrə 0-dan 9-a qədər dəyər verilir
|
10 ədədlik massivi 1-dən 10-a qədər ədədlərlə doldurmaq: |
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = i + 1;
} |
- 10 elementdən ibarət massiv obyekt yaradılır
- 0-dan 9-a qədər daxil dövr
- Hücrələrə 1-dən 10-a qədər dəyər verilir
|
10 ədədlik massivi 10-dan 1-ə qədər ədədlərlə doldurmaq: |
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = 10 - i;
} |
- 10 elementdən ibarət massiv obyekt yaradılır
- 0-dan 9-a qədər daxil dövr
- Hücrələrə 10-dan 1-ə doğru dəyər verilir
|
2. Rəqəmlərin tərs ardıcıllıqla çıxarılması
İndi isə bir az daha çətin və maraqlı nümunələrə keçək. Və belə bir tapşırıqla başlayaq: klaviaturadan 10 rəqəm daxil etmək və onları tərs ardıcıllıqla göstərmək lazımdır.
Klaviaturadan rəqəmlərin necə daxil edildiyini bilirik. Bəs necə 10 rəqəm daxil edə bilərik? Əlbəttə ki, 10 dəyişən yarada bilərik: a1
, a2
və s. Amma bu, birincisi, rahat deyil. İkincisi, əgər 100 rəqəm daxil etmək lazım olsa, biz 100 dəyişən yaradacağıq? Üçüncüsü, biz yeni massivləri öyrəndik ki, onlar böyük məlumat miqdarını saxlamaq üçün nəzərdə tutulub.
10 dəyəri daxil etmək üçün kod aşağıdakı kimi görünəcək (kod yalnız main
metodunun daxilində təqdim olunur):
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
} |
Scanner obyektini yaradırıq
- 10 elementlik massiv obyekti yaradırıq
- 0-dan 9-a qədər loop
- Klaviaturadan rəqəm oxuyuruq və onu massivdə müvafiq xanaya saxlayırıq
|
Bəs massivdəki dəyərləri tərs ardıcıllıqla necə çıxarmaq olar?
Bunun üçün bizə daha bir loop lazım olacaq, burada i
9-dan 0-a qədər dəyərlər alacaq (unutmayın ki, massivdə indekslər 0-dan başlayır). Proqramın son kodu təxminən belə olacaq:
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
}
for (int i = 9; i >= 0; i--) {
System.out.println(array[i]);
} |
Scanner obyektini yaradırıq
- 10 elementlik massiv obyekti yaradırıq
- 0-dan 9-a qədər loop
- Klaviaturadan rəqəm oxuyuruq və onu massivdə müvafiq xanaya saxlayırıq
- 9-dan 0-a qədər loop
- Massivin növbəti xanasını ekrana çıxarırıq
|
3. Massivdə minimal elementi tapmaq
Gəlin çox maraqlı və tez-tez rast gəlinən bir məsələyə baxaq — massivdə minimal elementi tapmaq. Əvvəlki məsələ üçün massiv doldurmaq kodunu götürək:
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
} |
Scanner obyekt yaratmaq
- 10 elementli massiv obyekt yaratmaq
- 0-dan 9-a qədər dövr
- Klaviaturadan bir ədəd oxuyub onu massivə əlavə etmək
|
İndi massivdə minimal elementi tapacaq və ekrana çıxaracaq bir kod yazmalıyıq. Necə? Bax bu şəkildə:
Bunu tapmaq üçün bunları etməlisiniz:
- Massivin ilk elementini "tapılmış minimal element" kimi götür.
- Bütün massiv elementlərini ardıcıl olaraq onunla müqayisə et.
- Əgər növbəti element "tapılmış minimal elementdən" kiçikdirsə, "tapılmış minimal elementin" dəyərini yenilə.
Kod olaraq bu cür görünəcək:
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
}
int min = array[0];
for (int i = 1; i < 10; i++) {
if (array[i] < min)
min = array[i];
}
System.out.println(min); |
Scanner obyekt yaratmaq
- 10 elementli massiv obyekt yaratmaq
- 0-dan 9-a qədər dövr
- Klaviaturadan bir ədəd oxuyub onu massivə əlavə etmək
- Massivin sıfırıncı elementini minimal element kimi götürmək
- 1-dən 9-a qədər dövr
- Əgər cari massiv elementi "tapılmış minimal elementdən" kiçikdirsə
- "Minimal elementin dəyərini yenilə"
- Tapılmış minimal elementi ekrana çıxarmaq
|
GO TO FULL VERSION