Avatar billede tt25 Nybegynder
12. december 2000 - 22:30 Der er 8 kommentarer og
1 løsning

binæretal

Skal bruge en simpel metode som konverterer decimale tal til deres binære værdier?
Avatar billede stigc Nybegynder
12. december 2000 - 22:34 #1
kommer her:

String bin = Integer.toBinaryString(int i);
Avatar billede stigc Nybegynder
12. december 2000 - 22:34 #2
Avatar billede tt25 Nybegynder
12. december 2000 - 22:37 #3
ja...det lyder dejligt. Men skal bruge selve metoden......altså algoritmen...
Avatar billede stigc Nybegynder
12. december 2000 - 22:44 #4
det kan du jo bare have sagt! :)

HAR IKKE TESTET DEN!


void public binary(int number) {
   
        int remainder;

    if(number <= 1) {
        System.out.print(number);
        return;
    }

    remainder = number%2;
    binary(number >> 1);   
    System.out.print(remainder);

    }
Avatar billede tt25 Nybegynder
12. december 2000 - 22:47 #5
tester det om lidt.....
Avatar billede tt25 Nybegynder
12. december 2000 - 22:58 #6
ups......kan du lige forklare logikke i det.....hvis nr < 1 eller nummer modulus 2?
Avatar billede codemon Nybegynder
13. december 2000 - 22:56 #7
Det her viser det lidt enklere
  public void binary(int number)
  {
      int remainder;
      String result = \"\";

      while (number > 1)
      {
        remainder = number%2;
        number /= 2;
        result = remainder + result;
      }
      result = number + result;
      System.out.println (result);
  }

number >> 1 er det samme som at dividere med 2 (bittene i tallet bliver flyttet en plads til højre)
binary( ... ) er rekursiv (kalder sig selv). læg mærke til at de enkelte bits skal ind forest i mellemberegningerne. Dette skete før fordi metoden var rekursiv.
Avatar billede stigc Nybegynder
18. december 2000 - 19:16 #8
tak for ingen ting!
Avatar billede codemon Nybegynder
18. december 2000 - 23:14 #9
Hentydningen fra stigc giver jeg ham helt ret i. Det var ham som kom med algoritmen, jeg kendte ikke til den før jeg så den her.

Jeg hyggede mig bare selv med at forstå den og da der ikke var svar på dit andet spørgsmål, dagen efter lagde jeg min udgave ud

stigc har fortjent halvdelen.
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