• 18-09-2019, 15:12:01
    #1
    #include <iostream>
    using namespace std;
    
    int main()
    {
    
    int num,calculation=0;
    
    cout << "Enter an integer: ";
    cin >> num;
    
    cout << "Digits: ";
    
    while (num != 0) {
    
    calculation = num % 10;
    cout<< calculation<<"n";
    num /= 10;
    
    }
    
    return 0;
    }
    Yazdığım kodda kullanicidan bir sayi alip digitleri print edebiliyorum mesela kullanici 9874 girince cikan sonuc:

    Digits: 4
    7
    8
    9

    Şeklinde oluyor. Benim istediğim ise;

    Digits: 9
    8
    7
    4


    bu şekilde nasıl yapabilirim, yardımcı olabilecek var mı?
  • 18-09-2019, 15:20:52
    #2
    #include <iostream>
    using namespace std;
     
    int main()
    {
     
    int num,calculation=0;
     
    cout << "Enter an integer: ";
    cin >> num;
     
    stringstream ss;ss <<*num;string str = ss.str();cout << "Digits: ";
     
    for (int i = 0; i < str.size(); i++){    cout << str[i] <<"n";} 
    return 0;
    }
  • 18-09-2019, 15:39:21
    #3
    Direkt yazdırmak yerine array gibi tutup tersten yazdırabilirsin.
  • 18-09-2019, 16:29:44
    #4
    mindwalker adlı üyeden alıntı: mesajı görüntüle
    #include <iostream>
    using namespace std;
    
    int main()
    {
    
    int num,calculation=0;
    
    cout << "Enter an integer: ";
    cin >> num;
    
    stringstream ss;ss <<*num;string str = ss.str();cout << "Digits: ";
    
    for (int i = 0; i < str.size(); i++){ cout << str[i] <<"n";}
    return 0;
    }

    Teşekkürler hocam ama compile edemedim.
    aldığım hata:
    Alıntı
    12:14: error: aggregate 'std::stringstream ss' has incomplete type and cannot be defined
    12:23: error: invalid type argument of unary '*' (have 'int')
    14:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  • 26-09-2019, 23:42:35
    #5
    Kimlik doğrulama veya yönetimden onay bekliyor.
    #include <iostream>
    #include <vector>
    
    using namespace std;
    
    int main()
    {
    
    int num,calculation=0;
    vector<int> digits;
    
    cout << "Enter an integer: ";
    cin >> num;
    
    while (num != 0) {
    
    calculation = num % 10;
    digits.push_back(calculation);
    num /= 10;
    }
    
    cout << "Digits:" << endl;
    
    for (int i = digits.size() - 1; i >= 0; i--)
    {
    cout << digits[i] << endl;
    }
    
    return 0;
    }