سلام. من این تو تا function رو نوشتم که مثلا تعداد ارقام اعداد رو بدس بیارم:
و
ولی هر دوی این ها واسه اعداد بالای 12 تا رقم جواب اشتباه می دن. میشه بگین مشکل از کجاست؟
کد:
long long countOfDigit2(long long num){ for (long long i = 10; i == 0; i *= 10) { if ((num > i) && (num < (i * 10))) { num = i; i = 0; } } return log10(num) + 1;}
کد:
int countOfDigit(double num){ int digits = 0; for(int i = 10; i != 0 ; i *= 10) { digits++; if ((num / i) < 1) { i = 0; } } return digits;}