Cho e hỏi số 2578995 thì làm sao lấy ra 2 5 7 8 9 9 5 e nghĩ xài gán mà thấy ko ổn
do
{
for (i = 0; i < n; i++)
{
int t = N % 10;
printf("Cac phan tu trong N la:\t%d", t);
}
} while (n > 10)
getch();
Cho e hỏi số 2578995 thì làm sao lấy ra 2 5 7 8 9 9 5 e nghĩ xài gán mà thấy ko ổn
do
{
for (i = 0; i < n; i++)
{
int t = N % 10;
printf("Cac phan tu trong N la:\t%d", t);
}
} while (n > 10)
getch();
thử cách này bạn ơi !
#include<iostream>
#include<cmath>
using namespace std;
// hàm đếm số chữ số
int demChuSo(int n) {
int dem = 0;
while (n > 0) {
n /= 10;
dem++;
};
return dem;
}
// in các chữ số của n
void in(int n) {
int Dem = demChuSo(n);
while (n > 0) {
int r = n / pow(10, Dem - 1);
cout << r << " ";
int x = pow(10,Dem-1);
n = n % x ;
Dem--;
}
}
int main()
{
int n;
cin >> n;
in(n);
return 0;
}
```
Hoặc đơn giản thế này.
#include <iostream>
void _sher(int n) {
if (n == 0) return;
_sher(n / 10);
std::cout << n % 10 << ' ';
}
void sher(int n) {
if (n == 0) std::cout << 0;
else if (n > 0) _sher(n);
else {
std::cout << "- ";
_sher(-n);
}
}
int main() {
sher(123456);
return 0;
}
Bạn kiểm tra xem trong vòng lặp của bạn, các biến điều kiện như n
, i
và các biến còn lại t
, N
nó tương tác với nhau như thế nào mà lại không ra.
Hàm này nhỏ bạn thử chạy test tay xem kết quả như thế nào ?