30/09/2018, 18:44
Dùng con trỏ tính LONG_LONG_MAX theo cơ số mũ
Đây là chương trình của mình:
#include <iostream>
#include <limits.h>
using namespace std;
long long (*p)(long long*, long long*) = 0;
long long log(long long* a, long long* b){
if (*a == 0) {
return 0;
}
else if (*a == 1) {
return *b;
}
else if (*b == 0) {
return 0;
}
else if (*b == 1) {
return 1;
}
*b /= *a;
return (*p)(a, b) + 1;
}
int main()
{
long long a = 2;
long long b = LONG_LONG_MAX;
p = &log;
cout << (*p)(&a, &b) << endl;
return 0;
}
tại đoạn
*b /= *a
return (*p)(a, b) + 1;
Mình muốn dùng một câu lệnh mà có thể chứa ý nghĩa của cả hai câu lệnh trên có được không?
Nếu được thì dùng như thế nào? Cảm ơn các bạn đã xem bài của mình.
Bài liên quan
Bạn đặt category topic hộ mình cái, mình sửa bài cho bạn vài lần rồi đấy
Cảm ơn vì đã nhắc nhở. Mình sẽ cẩn thận hơn.
Do mình gõ sai lần đầu nên có thể không ra. Mình vừa thử lại xong và kết quả như ý:smile: