Wyswietlenie sumy cyfr z liczby oraz tej liczby

0

Mam taki problemik ktory dotyczy zadania o tresci: "Napisz program, który w pętli prosi użytkownika o wpisanie dodatniej liczby całko-witej; wczytywanie kończy się, gdy użytkownik poda liczbę 0. Następnie programwypisuje tę z wczytanych liczb, dla której suma cyfr jest największa (oraz tę sumęcyfr)."

Umiem wypisać największą sumę cyfr natomiast nie czaje jak wypisać liczbę.

UWAGA: Nie używać tablic, napisów ani żadnych innych kolekcji.

Wklejam kod który mam i który jest w trakcie testowania:

#include <iostream>
using namespace std;

int main() {

int a;
int max=0;
int sumaCyfr=0;
int liczbaWlasciwa;


while (a>0){
    cout << "podaj liczbe" << endl;
    cin >> a;
    
    int jednosci = a%10;
    int dzieisatki = a/10%10;
    int setki = a/100%10;
    
    int wynik = jednosci + dzieisatki + setki;
    
    
    if(wynik>sumaCyfr)
        sumaCyfr=wynik;
    
}

cout<< sumaCyfr<< endl;

}

1

@lolek997:

  1. Są liczby inne niż trzycyfrowe. Na przykład czterocyfrowe, ujemne, niecałkowite.
  2. Tak naprawdę to ciężko coś podpowiedzieć, bo mam wrażenie, że kompletnie nie rozumiesz podstawowych pojęć takich jak: pętle, zmienne, instrukcje warunkowe.
1
  1. Zapamietuj gdzies "najwieksze a" i wyswietl na koncu.
  2. Kod wyglada ze dziala dla liczb trzycyfrowych, sprobuj zmienic tak zeby dzialal dla zmiennej liczby cyfr (1 do 9).
  3. Zainicjuj a
  4. Popraw literowke w zmiennej dziesiątki.
  5. Wklejaj poprawnie kod w bloku kodu.
3
...
    if(wynik>sumaCyfr)
    {
        sumaCyfr=wynik;
        liczbaWlasciwa=a;
    }
}

cout<<liczbaWlasciwa<<": "<<sumaCyfr<<endl;

1 użytkowników online, w tym zalogowanych: 0, gości: 1