Zum Inhalt springen

Quersumme aus Ganzzahl


Kumkum

Empfohlene Beiträge

hallo alle zusammen,

bin neu hier im board und lerne auch erst seit kurzer zeit C,

wollte auch noch fragen ob mir nicht jemand mit meinem poblem weiterhelfen kann,

es geht um folgendes:

ich soll ein kleines prog schreiben in dem der benutzer eine ganzzahl eingibt und das prog berechnet die quersumme,

ich hoffe jemand kennt ich da aus denn ich weiss nicht wie ich einzelne werte aus einem string bekomme um mit ihnen weiter zu rechnen,

mfg Kumkum

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

also in C++ würde ich das ganze so schreiben:

#include <iostream.h>

void main()

{

int iZahl;

int iQuersumme = 0;

cout<<"Zahl eingeben: ";

cin >>iZahl;

while (iZahl > 0) {

iQuersumme += iZahl % 10;

iZahl /= 10;

}

cout<<endl<<"Die Quersumme ist "<<iQuersumme;

}

weis nicht, in wieweit dir das weiterhilft...

Link zu diesem Kommentar
Auf anderen Seiten teilen

hmm ich glaube ich hab mich etwas unglücklich ausgedrückt,

der benutzer gibt nur eine zahl ein z.B. die 123 und davon nun die quersumme (1+2+3=6)

mir geht es eher darum die einzelnen werte aus einem string zu nehmen und sie dann ggf. variablen zu zuordnen,

und wie gesagt ich bin noch nicht lang beim programmieren dabei,

darum versteh ich nur C.

bei C++ bekomm ich probleme obwohl es ja ähnlich ist,

aber trotzdem danke für die schnelle antworten

Link zu diesem Kommentar
Auf anderen Seiten teilen

*g*

okok ich merke schon wir reden wieder aneinander vorbei,

aber mach dir keine mühe mehr ich hab nun was ich brauchte


#include <stdio.h>

char eingabe[100];

int  i=0, a, wert, erg=0, zahl;


int main()

{  

    printf("Bitte eine Ganzzahl eingeben: ");

    fgets(eingabe,100,stdin);

    sscanf(eingabe,"%d",&zahl); 

    while (eingabe[i] != '\0') 

    {     

        i++;

    }    

    printf("die zahl hat %d stellen. \n",i-1); 

    for (a=0; a<i-1; a++)

    {

        wert = eingabe[a]-48;    

        erg = erg + wert;

    }

    printf("Die Quersumme von %d lautet: %d\n",zahl,erg);    

    system("PAUSE");	

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

wenn du unbedingt ne integer zurückgeben willst, kannste ruhig int main schreiben..., meine main gibt halt nix zurück...
Das hat wenig mit wollen zu tun. Der Standard schreibt vor, dass main int zurückgeben muss. Dass dein Compiler auch void akzeptiert, bedeutet nicht, dass es richtig ist. ;)

@Kumkum:

Den ganzen Aufwand mit dem char-Array kannst du dir sparen. Der Algorithmus, den BadJoke vorgeschlagen hat, funktioniert so auch in C.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...