Avatar billede koxxxx Nybegynder
12. oktober 2000 - 17:15 Der er 11 kommentarer og
1 løsning

juletræ ???

Hvordan vil man kunne lave 2 træer som nedenstående i Java.

*                      *                   
**                    ***                   
***                  *****                 
****                *******                  *****              *********               
******            ***********               
*******          *************             
Avatar billede nomiz Nybegynder
12. oktober 2000 - 17:16 #1
Hvad mener du?
Avatar billede koxxxx Nybegynder
12. oktober 2000 - 17:16 #2
Hmmm, træerne skal altså være skrå hele vejen ned, så de to streger ude til højre skal ikke være med. Det er en eller anden fejl.
Avatar billede koxxxx Nybegynder
12. oktober 2000 - 17:17 #3
Det ene træ skal kun have en side og ligne et halvt træ, mens det andet skal have to sider og ligne et helt træ.
Avatar billede davsclaus Nybegynder
12. oktober 2000 - 17:39 #4
Prøv det her, det er tæt på:

  public static void halfTree(int treeDeep) {
    String leaf = \"\"; // Træ gren

    for (int i = 0; i < treeDeep; i++) {
      leaf = leaf + \"*\";
      System.out.println(leaf);
    }
  }

  public static void fullTree(int treeDeep) {
    String leaf = \"\"; // Træ gren
    int ident = treeDeep * 2; // Indrykning

    for (int i = 0; i < treeDeep; i++) {
      printSpace(ident);
      leaf = leaf + \"**\";
      ident = ident - 1;
      System.out.println(leaf);
    }
  }

  public static void printSpace(int noSpaces) {
    for (int i=0; i < noSpaces; i++)
      System.out.print(\" \");
  }
Avatar billede koxxxx Nybegynder
12. oktober 2000 - 17:52 #5
davsclaus jeg kan ikke få dine eksempler til, at køre.
Avatar billede koxxxx Nybegynder
12. oktober 2000 - 17:54 #6
Den kompilerer ok, men når jeg vil køre programmerne skriver den
\"unable to find a class with main method to run\"
Jeg er ikke helt klar over hvad det betyder.
Avatar billede kasseper Nybegynder
13. oktober 2000 - 08:34 #7
Det betyder at du ikke har en main method, hvilket altid skal være der hvis du altså skal køre noget fra den fil der compileres.
du skal altså lave f.eks. sådan en her :

public static void main()
{
    // Her kan du kalde de funktioner som claus har lavet f.eks.
    fullTree(10);
    printSpace(2);
    halftree(5);
    return 0;
}

Når man vil køre en kompileret java fil så leder filen efter en metode der hedder main()
Herfra skal programmet altid startes...OK ???
Avatar billede kasseper Nybegynder
13. oktober 2000 - 08:35 #8
Hov det blev et svar, jeg behøver ingen point for dette.....
Avatar billede davsclaus Nybegynder
13. oktober 2000 - 16:12 #9
Det er rigtig som kasseper siger at der skal en main metode til for at køre noget. Hvis du er ved at lære Java så er det bedst selv at lære at lave de små simple programmer som juletræet.

Dog skal du ikke som i kasseper eksempel køre printSpace(2), det er blot en helper rutine som fullTree() benytter.
Avatar billede kasseper Nybegynder
16. oktober 2000 - 08:51 #10
og den var også kun taget med for at vise at man fra main metoden kan kalde alle de public metoder og funktioner man laver...
Avatar billede cktarget Nybegynder
19. oktober 2000 - 11:29 #11
Jeg vil dog lige påpege at det ikke er en ubetinget fordel at kalde alle sine metoder fra Main metoden af. Måden at gøre det på er ved fra sin Main() metode at kalde en anden metode som så kalder alle de andre metoder.
Grunden til dette er at så kan man slippe for den der \"satans\" static deklarering som main() altid ønsker at have med.
Hvis man gør det på måden beskrevet ovenfor så kan man slippe fuldstændigt for at ens metoder samt alle variable skal erklæres Static.

Mvh Kedde
Avatar billede koxxxx Nybegynder
13. januar 2001 - 09:55 #12
Tak for svarene men der var ikke rigtig nogle der virkede for mig.
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