Avatar billede kokoko Nybegynder
10. september 2001 - 16:21 Der er 6 kommentarer og
1 løsning

Tvaersum

Hvordan finder jeg nemmest tvaersummen af et tal? f.eks. 12345 = 15?
Avatar billede netsrac Praktikant
10. september 2001 - 16:27 #1
Vil tallene altid være fortløbende ?
Avatar billede kokoko Nybegynder
10. september 2001 - 16:29 #2
nej ikke nodvendigvis.  Bare for et vilkaarligt helt tal mellem -99.999 og 99.999.
Avatar billede netsrac Praktikant
10. september 2001 - 16:36 #3
public class test
{
    public static void main(String args[])
    {
        System.out.println(tSum(\"12345\"));
    }

    public static int tSum(String tal)
    {
        int sum = 0;
        for (int i = 0; i < tal.length(); i++)
            sum += Integer.parseInt(tal.substring(i,i+1));
        return sum;
   
    }

}
Avatar billede logical Nybegynder
10. september 2001 - 16:44 #4
Tværsummen for dit eksempel er iøvrigt 6.

En korrekt matematisk måde at løse det problem på:

public int  tvaersum(int tal) {
  int x = Math.abs(tal);
  while(x>9)
    x=x-9;
  return x;
}
Avatar billede bearhugx Nybegynder
10. september 2001 - 21:18 #5
Hmmm logical...
dvs. at følgende også er gældende ...

public int tvaersum( int tal )
{ return( tal%9 ); }

:-))
/Søren
Avatar billede bearhugx Nybegynder
10. september 2001 - 21:21 #6
Hmm... fandt en fejl... Min metode virker ikke, hvis tallet går op i 9 :-(
/Søren

(sorry for the inconvenience...)
Avatar billede bearhugx Nybegynder
10. september 2001 - 21:26 #7
En rettet version, som tager højde for at tallet kan gå op i 9....
Løsningen er at substituere 0 med 9 ....

public int tvaersum( int tal )
{
  int x = tal%9;
  if( x == 0 ) return 9;
  return x;
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester