01/10/2018, 08:25

Giúp đỡ bài tập về mảng

Chuyển các số chẳn chia hết cho 3 về đầu mảng, các số lẻ chia hết cho 3 về cuối mảng, các số ko chia hết cho 3 về ở giưa, mảng…
chỉ dung 1 vong lap for…ko dùng mảng phụ

Zhang Jike viết 10:33 ngày 01/10/2018

Bạn không nghĩ mà cứ tắc là hỏi luôn vậy à? Hãy nói ra thuật toán của bạn. Cho mọi người xem code bạn đã làm thì mới chỉ ra cho bạn những gì chưa tốt. Diễn đàn không phải là nơi hỏi bài tập đâu bạn ạ. Những thuật toán đơn giản như thế này. Bạn nên dành nhiều thời gian hơn. Không thì mọi người không trả lờ bạn đâu. Chứ cứ lên diễn đàn viết nguyên cái đề bài không đầu k đuôi k thưa không gửi thì ai có hứng giúp bạn được chứ.

Khánh Phạm viết 10:32 ngày 01/10/2018

do hui trua e cần gấp nên z thui…với e kung mới zô ak…còn tệ môn nay lắm

nguyen toan viết 10:34 ngày 01/10/2018

ham main

int array[12] = {3,4,6,12,4,9,16,18,6,4,7,21};
        	int i,j,k;
        	i = j =0;
        	k = 11;

        	for (i = 0; i < k; ) {
        		if (array[i] % 6 == 0) {
        			swap(array[i], array[j]);
        			j++;
        		} else if (array[i] % 3 == 0) {
        			if (array[k] % 3 != 0) {
        				swap(array[i], array[k]);
        			} else {
        				k--;
        			}
        		}
        		i++;
        	}

@Khanh_Pham2 minh bo duoc while r nhe

rogp10 viết 10:40 ngày 01/10/2018

Thuật toán chia ba. Rất đẹp. https://en.wikipedia.org/wiki/Dutch_national_flag_problem

Khánh Phạm viết 10:32 ngày 01/10/2018

ko dk dung gif ngoai for voi if…

Khánh Phạm viết 10:28 ngày 01/10/2018

minh lam hoom wwa h mak ko dk…

Khánh Phạm viết 10:26 ngày 01/10/2018

n++;
for (int i=0;i<n;i++){
if(a[i]>=x){
for (int j=n-1;j>i;j–){
a[j]=a[j-1];
a[i]=x;
}break;
}
}
//day la thuat toan giả sử mảng tăng dần rui…h chèn vao 1gia tri sao cho van tăng dần…
minh nhâp 2 3 3 4
nhập số 1 nó in ra 11334…mấy bạn cố pít sai chỗ nào ko

rogp10 viết 10:39 ngày 01/10/2018

Lập topic mới đi bạn.

Khánh Phạm viết 10:40 ngày 01/10/2018

sai có cai dấu ngoac,hihi

rogp10 viết 10:29 ngày 01/10/2018

Thực ra thì n++; ngay đầu là chưa đúng vì bạn đã thêm phần tử đâu xong rồi n++; mới đúng.

Reoteu Ray viết 10:34 ngày 01/10/2018

ngoài cách trên ra còn cách nào nữa không nhỉ…

rogp10 viết 10:39 ngày 01/10/2018

Vậy là đẹp rồi còn gì.

Bài liên quan
0