Tìm số chẵn/lẻ cuối cùng trong mảng số nguyên

0
7241

Bài toán: Tìm số chẵn/lẻ cuối cùng trong mảng số nguyên

Input: mảng a có n phần tử

Xử lý:  duyệt từ cuoi mảng, tìm vị trí chẵn/lẻ đầu tiên trong mảng, thoát khỏi vòng lặp

Nếu duyệt hết mảng mà không tìm được số chẵn/lẻ thì trả về giá trị -1

Output: mảng không có giá trị chẵn/lẻ -1, giá trị chẵn/lẻ cuối cùng

Hàm tìm giá trị chẵn

int ChanCuoi(int a[], int n)
{
     for(int i=n-1 ; i<n ; i-- )
           if( a[i]%2==0)
           {
                return a[i];           
                break;           
           }
      return -1; 
}

Hàm tìm giá trị lẻ

int LeCuoi(int a[], int n)
{
     for(int i=n-1 ; i<n ; i-- )
           if( a[i]%2!=0)
           {
                return a[i];           
                break;           
           }
      return -1; 
}

Chương trình

#include<stdio.h>
#include<conio.h>
#define MAX 100
void nhapmang(int a[], int &n);
void xuatmang(int a[], int n);
int ChanCuoi(int a[], int n);
void main()
{
	int a[MAX],n;
	nhapmang(a,n);
	printf("\nNoi dung cua mang");
	xuatmang(a,n);
	if(ChanCuoi(a,n)==-1)
		printf("\nMang khong co so chan");
	else
		printf("\nGia tri chan cuoi cung : %d",ChanCuoi(a,n));

	printf("\nChuc cac ban hoc tot");
	getch();
}
void nhapmang(int a[], int &n)
{
	do
	{
		printf("\nSo phan tu trong mang ");
		scanf("%d",&n);
	}while(n<=0 && n>100);
	for(int i=0 ; i<n ; i++ )
	{
		printf("\nSo phan tu a[%d] la: ",i);
		scanf("%d",&a[i]);
	}
}
void xuatmang(int a[], int n)
{
	for(int i=0 ; i<n ; i++ )
		printf("%4d",a[i]);
}
int XuatChan(int a[],int n)
{
	int i;
	for( i=0 ; i<n ; i++ )
		if(a[i]==1)
			return a[i];
	return -1;
}
int ChanCuoi(int a[], int n)
{
     for(int i=n-1 ; i<n ; i-- )
           if( a[i]%2==0)
           {
                return a[i];           
                break;           
           }
      return -1; 
}

Mình chia sẽ code này đê các bạn tham khảo các vấn đề tương tự. Tuy nhiên các bạn nên tự làm lại, đừng nên copy. Nếu gặp vấn đề gì khó khăn, hoặc thắc mắc gì, các bạn có thể đặt câu hỏi ở cuối bài. Mình sẽ giải đáp.

Chúc các bạn thành công!

Xem thêm:Tìm số chẵn/lẻ đầu tiên trong mảng số nguyên

This site uses Akismet to reduce spam. Learn how your comment data is processed.