Avatar billede web_the_world Nybegynder
04. november 2002 - 21:52 Der er 12 kommentarer og
1 løsning

udskrivning af en return?

Hey,

Hvis jeg nu har lavet følgende kode (dette er kun et udsnit af en større mængde kode)

if(a > b)
      {
        return (tal1 + tal2);
        }
Hvordan får jeg nu så udskrevet det der står i parentesen efter return??

Jeg skal lige gøre opmærksom på, at jeg har lavet et random valg af tal 1 og tal 2 - så det altså f.eks gerne skulle komme til at stå:

5 + 8 - hvis a er større end b?????????????
Avatar billede di8leva Nybegynder
04. november 2002 - 21:57 #1
skall det skrivas ut i en prompt?

System.out.println("" + method(5, 9));

svarar det på ditt spörgsmål...
Avatar billede di8leva Nybegynder
04. november 2002 - 22:00 #2
hvis

method(int tal1, int tal2)
{
if(a > b)
      {
        return (tal1 + tal2);
        }
}

annars förstår jag ikke hvad det er du vill ha...
Avatar billede di8leva Nybegynder
04. november 2002 - 22:01 #3
annars kan du ändra lite i koden:
if(a > b)
      {
        return (tal1 + tal2);
        }


till

if(a > b)
{
  System.out.println((tal1 + tal2) + " hvis " + a + " er större end " + b);
  return (tal1 + tal2);
}
Avatar billede soreno Praktikant
04. november 2002 - 22:07 #4
en lidt anden, nok egentlig mere korrekt, måde at gribe det an på er at lave en midlertidig variabel og så kun have et return statement i din kode. eks:

public int doStuff(..)
{
  int retval = 0;
  int a = 0;
  int b = 0;
  int tal1 = 0;
  int tal2 = 0;
  [..en masse spændende beregninger der involverer a, b, tal1, tal2..]
 
  if(a > b)
  {
    retval = tal1 + tal2;
  }
  else if(a == b)
  {
    retval = tal1 - tal2;
  }
  else if(a < b)
  {
    retval = tal2 - tal1;
  }
 
  return retval;
}
Avatar billede web_the_world Nybegynder
04. november 2002 - 22:25 #5
Ikke helt - jeg ved ikke hvilke tal - tal1 og tal2 er lig med
Avatar billede web_the_world Nybegynder
04. november 2002 - 22:27 #6
Til Soreno...

Dette ser brugbart ud, men hvordan får jeg så skrevet retval ud ?!?

Sådan her: system.out.println (retval); ???
Avatar billede web_the_world Nybegynder
04. november 2002 - 22:32 #7
Det kan i hvert fald ikke være den rigtige måde, da den så skriver følgende:

C:\java\Javaprogrammer\Resultat.java:73: unreachable statement
            System.out.println(+ retval);
                        ^
Avatar billede web_the_world Nybegynder
04. november 2002 - 22:34 #8
Har fået det til at funke, men nu skriver den resultatet af f.eks. tal2 - tal1 ud - jeg ville gerne have den til at skrive regnestykket ud??

Kan det lade sig gøre....
Avatar billede web_the_world Nybegynder
04. november 2002 - 22:36 #9
altså at den skrive (hvis tal1= 15 og tal2 = 23 - at den så skriver følgende:
23 - 15
Avatar billede soreno Praktikant
04. november 2002 - 22:39 #10
hvis jeg forstår dig ret, så prøv:
System.out.println(tal1 + " - " +tal2);
Avatar billede web_the_world Nybegynder
04. november 2002 - 22:44 #11
Jaaaa men det er jo kun i det tilfælde, at:
else if(a < b)
  {
    retval = tal2 - tal1;
  }
Så det kan jeg jo ikke bare skrive...det kan jo være forskelligt fra gang til gang om de skal plusses eller trækkes fra hinanden....

Lidt baggrund - jeg skal bruge det til et lille program, for vores tennisklub - som skal opveje nogle tenniskampsresultater op i mod hinanden og så lægger dem sammen eller trække dem fra hinanden alt afhængig om der vindes eller tabes osv....Men vi vil gerne have at den skrive præcist ud havd der sker....Altså det før omtalte regnestykke...
Avatar billede soreno Praktikant
04. november 2002 - 22:53 #12
ok, du ønsker altså at verificere at du laver det korrekt ? så kunne du gøre sådan:

public int doStuff(..)
{
  int retval = 0;
  int a = 0;
  int b = 0;
  int tal1 = 0;
  int tal2 = 0;

  [..en masse spændende beregninger der involverer a, b, tal1, tal2..]

  if(a > b)
  {
    retval = tal1 + tal2;
    System.out.println("beregning1: " + tal1 " + " tal2);
  }
  else if(a == b)
  {
    retval = tal1 - tal2;
    System.out.println("beregning2: " + tal1 " - " tal2);
  }
  else if(a < b)
  {
    retval = tal2 - tal1;
    System.out.println("beregning3: " + tal2 " - " tal1);
  }

  return retval;
}
Avatar billede web_the_world Nybegynder
04. november 2002 - 23:01 #13
Bingo....

Mange tak
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