Welcome to ACCP1003 Forum
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Welcome to ACCP1003 Forum

Let's share and have fun !
 
Trang ChínhPortalLatest imagesTìm kiếmĐăng kýĐăng Nhập

 

 xóa các số chẳn trong mảng 1 chiều!!!

Go down 
Tác giảThông điệp
M_K_MooN




Tổng số bài gửi : 2
Join date : 20/05/2010

xóa các số chẳn trong mảng 1 chiều!!! Empty
Bài gửiTiêu đề: xóa các số chẳn trong mảng 1 chiều!!!   xóa các số chẳn trong mảng 1 chiều!!! I_icon_minitimeSun Jul 18, 2010 3:16 am

cách 1:
for(int i=0;i<n;i++){
if(a[i]%2==0){
n--;//lúc này da tìm thấy 1 số chẳn nên n sẽ giảm xuống 1
for(int j=i;j<n;j++){
a[j]=a[j+1];
}
i--;//nếu ko giảm i thì trường hợp có các số chẳn liên típ sẽ ko giải wiet duoc
}
}
for(int i=0;i<n;i++){
System.out.println(" pt["+(i+1)+"] la: "+a[i]);
}
cách 2: tìm số chẳn rồi swap với 1 số lẻ gần nó nhất...cuối cùng ta sẽ được 1 mảng gốm các số lẻ ở đầu và các số chẳn phía sau...chỉ việc in các số lẻ ra!
{
int j,temp;
int flag,m;
m=-1;
for(int i=0;i<n;i++)
{
if(a[i]%2==0){
flag =0;
j=i+1;
while(j<n&&flag==0){
if(a[j]%2!=0){
temp=a[i];
a[i]=a[j];
a[j]=temp;
m=i;
flag=1;
}
else
j++;
}

}

}

for(int i=0;i<=m;i++){
System.out.println(" pt["+(i+1)+"] la: "+a[i]);
}
break;
}

Crying or Very sad cách 2 này có trường hợp bị sai!!! Crying or Very sad [i]
Về Đầu Trang Go down
 
xóa các số chẳn trong mảng 1 chiều!!!
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Một số thao tác nhanh trong Windows

Permissions in this forum:Bạn không có quyền trả lời bài viết
Welcome to ACCP1003 Forum :: Học hành :: Java-
Chuyển đến