Forum
Tipps
News
Menu-Icon

Quersumme

Hi!

Wie kann ich aus einer Variablen vom Typ int die Quersumme berechnen?


Antworten zu Quersumme:

int main(void )
{
   int z = 12345,x,y=0;
   for(x=z;x;y+=x%10,x/=10);
   printf( "Quersumme von %d ist: %d\n", z, y );
   return 0;
}
unsigned int quersumme( unsigned int n )
{
   return n < 10 ? n : n % 10 + quersumme( n / 10 );
}

@...: Ein vollständiges Programm wäre ja wohl angebracht:

int main( int argc, char **argv )
{
   int z = 12345;
   if( argv )
      printf( "quersumme von %d: %d\n", z, main( z, 0 ) );
   else
      return argc < 10 ? argc : argc % 10 + main( argc / 10, 0 );
   return 0;
}

hier mal eine schnellere Version :

#include <iostream>

template<int val1,int val2>
struct TGreaterEqual
{
   enum { res = (val1 >= val2 ? 1 : 0), };
};

template<int val1,int gt>   struct _Tquersumme;

template<int val1>
struct _Tquersumme<val1,0> {
   enum { res = val1, };
};

template<int val1>
struct _Tquersumme<val1,1> {
   enum { res = val1 % 10 + _Tquersumme<val1 / 10,TGreaterEqual<val1,10>::res >::res, };
};


template<int val1>
struct Tquersumme {
   enum { res = _Tquersumme<val1,TGreaterEqual<val1,10>::res >::res };
};

int      main(int argc, char* argv[])
{
   std::cout << Tquersumme<135>::res << "\n";
   std::cout << Tquersumme<937>::res << "\n";
   std::cout << Tquersumme<32784>::res << "\n";
   std::cout << Tquersumme<53209>::res << "\n";
   char e;
   std::cin >> e;

   return 0;
}

« Fortran Format[VB] dynamisch ein(e) Linie/Rechteck zeichnen »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Type 1 Schriften
Type 1 ist ein Schriftformat, das die Schrift-Beschreibung in Form von PostScript-Befehlen speichert. PostScript-Schriften werden mithilfe von PostScript-Operationen besc...

Quellcode
Ein Quellcode, auch als Quelltext bekannt, bezeichnet den unkompilierten Programm-Code einer Software. Quell- oder Programm-Code ist der auch für Menschen lesbare Co...

Unicode
Unicode ist ein international anerkannter Standard, der als universeller Zeichencode ("Universal Code") dient und durch das Unicode-Konsortium entwickelt und verwaltet wi...