StadtMetropole

LaptopSilber

Neues Mitglied
Java:
public class StadtMetropole
{
    public static void main(String[] args,
    boolean isCapital,
    int numberOfInhabitants,
    double taxPerInhabitant)
    {
        // Die Variable "isCapital" gibt an, ob die Stadt eine Hauptstadt ist
        // Die Variable "numberOfInhabitants" nennt die Anzahl der Einwohner
        // Die Variable "taxPerInhabitant" nennt die Steuereinnahmen pro Einwohner
       
       if( numberOfInhabitants > 100000) {
           
            boolean isMetropolis = true;
       }
       else if (numberOfInhabitants > 200000 && taxPerInhabitant > 700000000) {
          
           boolean isMetropolis = true;
       }
       else{
           boolean isMetropolis = false;
       }
       
    }
}
Aufgabe: Eine Metropole sei definiert als eine Stadt, die entweder eine Hauptstadt mit mehr als 100.000 Einwohnern ist oder eine Stadt mit mehr als 200.000 Einwohnern und Steuereinnahmen von mindestens 700 Millionen ist.

Ich weiß nicht, warum das falsch ist?
 
Zuletzt bearbeitet von einem Moderator:
K

kneitzel

Gast
Die Frage ist erst einmal, was Du genau versuchst zu machen....

Die Methode main zum Start einer Java Anwendung ist genau vorgegeben:
public static void main(String[] args)

Da weitere Parameter hinzu zu fügen ist einfach falsch.

Da wir aber nicht wissen, was Du genau als Aufgabe machen sollst, kann ich Dir auch nicht sagen, wie es von Dir erwartet wird. Ggf. sollen es einfach lokale Variablen sein. Evtl. sollt Ihr auch eine entsprechende Klasse schreiben und dann wären es Instanzvariablen.
 

Robert Zenz

Top Contributor
Also ich rate mal, du sollst ein Programm schreiben welches eine Stadt erzeugt, und dann bestimmt ob dieses eine Metropole ist oder nicht. Dafuer ist deine Struktur falsch.

Java:
public class StadtMetropolenProgramm {
    public static final void main(String[] args) {
        // Deine Logik kommt hier her.
    }
}

Am besten machst du das so dass du "Stadt" als eine neue, eigene Klasse definierst mit dem Namen "Stadt". Diese hat die Felder:

1. "isCapital"
2. "numberOfInhabitants"
3. "taxPerInhabitant"

Diese Felder befuellst du am besten im Konstruktor. Dann kannst du dir in der "main" Methode naemlich eine neue Instanz von dieser Klasse erzeugen:

Java:
Stadt stadt = new Stadt(false, 500000, 50);

Dann musst du auf der Klasse "Stadt" eine Funktion hinzufuegen welche ausgibt ob es sichd abei um eine Metropole handelt oder nicht. Dann kannst du diese Info in der "main" ausgeben:


Java:
Stadt stadt = new Stadt(false, 500000, 50);
System.out.println(stadt.isMetropole());

Die Implementierung fuer deine "isMetropole" hast du ja schon fast, du musst dann nur den Wert zurueckgeben anstatt irgendwo zu setzen. Und zu guter letzt ist deine Logik falsch, es wurde naemlich nach "gesamte Steuereinnahmen" gefrag, das Feld gibt aber "Steuer je Einwohner" wieder, also muss man das mit der Anzahl der Einwohner multiplizieren.
 

Neue Themen


Oben