01/10/2018, 12:23

Cần giải thích 2 dòng trong code

Chào các bạn! Dưới đây là đoạn code tác dụng là hiện các số lớn hơn số đã cho trong 1 mảng.
Ví dụ : tab [ ] = { 1, 2, 3, 5, 8 }
Tìm các số lớn hơn 3. Vậy thì đáp án ở đây sẽ là [5,8]

Vấn đề của mình là mình không hiểu đoạn code dòng 36 và 37 nghĩa la gì !!
l36 res[compteur_res] = tab[compteur] ;
l37 compteur_res ++;
Mong được sự giúp đỡ của mọi người ! Mình cám ơn !

import es.*;

public class Exercice1 {
public static void afficherTab(int []tab) {
	Ecriture.unCar('[');
	for (int i=0; i < tab.length;i++) {
		Ecriture.uneChaine(""+tab[i]+" ");
	}
	Ecriture.unCar(']');
}

//Ecrire votre fonction ici:
public static int [] EntiersSuperieursAuSeuil(int []tab, int seuil) {
	

    // Comptage du nombre supérieur au seuil
	int compteur ;
	int nombre_supérieur_au_seuil = 0;
	
	for (compteur = 0 ; compteur < tab.length ; compteur ++) {
		if (tab[compteur] > seuil) {
			nombre_supérieur_au_seuil ++;
		}
	}
	// Création du tableau
	int res [] = new int [nombre_supérieur_au_seuil];
	int compteur_res = 0;
	
	for (compteur = 0 ; compteur<tab.length ; compteur++ ) {
		if (tab[compteur] > seuil) {
			res[compteur_res] = tab[compteur] ;
			compteur_res ++;
		}
	}
	
	// code temporaire pour que le programme compile (a modifier)
	
	return res;
	
}


public static void main(String[] args) {
	// TODO Auto-generated method stub
	
	
	// données 
	int [] tab1 = {1,2,3,4,8,13,15}; 	// avec seuil=4, reponse {8,13,15}
	int [] tab2 = {5,6,11};  		// avec seuil=11, reponse {}
	int [] tab3 = {1,3,4,7,12};		// avec seuil=1, reponse {3, 4, 7, 12}
	
	// appel de votre fonction 
	int []res = EntiersSuperieursAuSeuil(tab1,4 );

	afficherTab(res);

}

}

Nguyen Ca viết 14:34 ngày 01/10/2018

res[compteur_res] = tab[compteur] ;

lấy toàn bộ các số > số cho trước vào mảng.

compteur_res ++;

đếm xem có bao nhiêu kết quả lấy được

Bài liên quan
0