6/4/16

[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

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;
}
Theo Han Huy
Theo code.freetuts.net

0 nhận xét: