Ai putea face in felul urmator : pentru fiecare numar afisat care are mai putine cifre decat n-ul initial bagi spatii inainte;
uite si cod :
#include<iostream>
using namespace std;
inline int afla(int x){
int cnt = 0;
while(x!=0){
cnt++; x /= 10;
}
return cnt;
}
int main()
{
int n, d=2, m;
cout<<"\n dati numarul natural nenul n = ";
cin>>n;
cout << "\n";
int nrCifre = afla(n);
while(n>1)
{
while(n%d==0)
{
m=n;
n=n/d;
int ceva = afla(m);
for(int dif=nrCifre-ceva; dif>0; dif--) cout << " ";
cout << m<<" | "<<d<<"\n";
}
d++;
}
int ceva = afla(n);
for(int dif=nrCifre-ceva; dif>0; dif--) cout << " ";
cout << n<<" | "<<"\n";
return 0;
}