[C] 168 Hãy tìm giá trị lớn nhất trỏng mảng có dạng 5^k. Nếu mảng không tồn tại thì trả về 0

Tác giả:

  • Trần Hán Huy – tranhanhuy.wordpress.com

Sách:

  • Bài tập kĩ thuật lập trình C/C++ – Nguyễn Tấn Trần Minh Khang

Đề bài

  • 168 Hãy tìm giá trị lớn nhất trỏng mảng có dạng 5^k. Nếu mảng không tồn tại thì trả về 0

Code

int dang5k(int n)
{
   int du;
   if (n<=1)
      return 1;
   while (n>=5)
   {
      du = n%5;
      n=n/5;
      if (du != 0)
          return 0;
   }
   return 1;
}
int bai168(int a[], int n)
{
   int max;
   int dem =0;
   for(int i=0 ; i<n; i++)
   {
       if (dang5k(a[i])==1)
       {
           max = a[i];
           dem ++;
           break;
       }
   }
   if (dem == 0)
       return 0;
   for(;i<n; i++)
       if (dang5k(a[i])==1)
          max = (max>a[i])?max:a[i] ;
   return max;
}

One response to “[C] 168 Hãy tìm giá trị lớn nhất trỏng mảng có dạng 5^k. Nếu mảng không tồn tại thì trả về 0”

  1. Đỗ Cao Trí says :

    Bài này có gì sai sai thay ơi DK xết 5^k sai rồi thử 50 là sai.

Leave a comment