mit BlueJ einen Ticketautomaten programmieren

mc11

Neues Mitglied
hi @ all

ich hab ne aufgabe die mir echt schwer fällt weil ich erst seit paar tagen mit java programmiere oder besser gesagt mit blueJ und so auch keine vorkenntnisse in sachen programmieren habe... und zwar soll ich einen Ticketautomaten programmieren aus interner sicht... ich versuch seit 2 tagen das zu schaffen das er mir das ausrechnet aber irgendwie seh ich da auch nicht ganz durch mit den zusammenhängen und wie man blueJ zum sinnvollen rechnen bringt... und zwar hab ich mir das so gedacht das es einen festen preis gibt für das ticket(ich möchte das es 20 euro kostet) dann soll man noch auswählen können wie viele tickets man kaufen will und ausserdem soll berücksichtigt werden wie viel schon eingezahlt wurde und später soll er mir den zu zahlenden betrag ausrechnen...

und so sieht mein loch aus wo ich feststecke und nicht weiter komme


Java:
public class Ticketautomat
{
    // Instanzvariablen - ersetzen Sie das folgende Beispiel mit Ihren Variablen
    private int preis;
    private int bisherGezahlt;
    private int gesamtsumme;
    private int anzTickets;

    /**
     * Konstruktor für Objekte der Klasse Ticketautomat
     */
    public Ticketautomat(int bisherGezahlt, int anzTickets){
    preis             =20;
    bisherGezahlt     =0;
    gesamtsumme       =0;
    anzTickets        =0;
} //Ticketautomat
    
    // Zugriffsmethoden
    public int getbisherGezahlt () {return bisherGezahlt;}
    public int getgesamtsumme () {return gesamtsumme;}
    public int getanzTickets () {return anzTickets;}
    
    // Verarbeitung
    public void setPreis (int neu){
        preis = neu;
    } //setPreis
    
    //Ausgabe
    public void ausgabe() {
        System.out.println("Preis=" + preis+"Geldsumme="+anzTickets);
    }//ausgabe
}

über fehlerhinweise die fehlerzahl wird bestimmt ziemlich hoch sein, wäre ich sehr erfreut und auch über mögliche tipps wie man es besser machen kann :(

danke im voraus
 
G

Gassst

Gast
Ich versteh deinen Konstruktor nicht, bzw. wozu du die beiden Parameter bisherGezahlt und anzTickets übergibst, zumal du diese Werte gar nicht benutzt.
Ich würde die beiden Parameter aus dem Konstruktor streichen und stattdessen zwei weitere Methoden erstellen: geldEinzahlen(int geld) und anzahlTicketsSetzen(int anzahlTickets), die die entsprechenden Instanzvariablen aktualisieren (falls das die Aufgabenstellung nicht anders vorsieht)
Deine ausgabe() Methode ist unvollständig, da 1. der Gesamtpreis ergibt sich aus anzahlTickets * preis (du gibst nur anzTickets aus). Außerdem fehlt noch der noch zu zahlende Betrag (gesamtpreis - bereitsEingezahltesGeld).
 

mc11

Neues Mitglied
danke ja so wie du sagst ist es schon besser formuliert danke ;) die ausgabe zu programmieren ist für mich irgendwie nicht verständlich wie schreibe ich denn soeine ausgabe wenn ich ein * zeichen in den system.out. rein hau denn schmeißt er mir ne fehlermeldung
 
G

Gasssst

Gast
Dann mach Klammern um den Term oder speichere den Wert vorher in eine eigene lokale Variable (int gesamtpreis = ... int nochZuBezahlen = ...)
 

Fab1

Top Contributor
wenn du möchtest kann ich dir das programm schreiben

Lass ihn das mal ruhig selbst machen :)

Man soll hier ja auch etwas lernen. Und außerdem ist es ja nicht kompliziert ich denke da kommt man relativ schnell selbst drauf. Lieber 10 min länger überlegen und es nächstes mal gleich wissen, anstatt nächstes mal wieder nachfragen zu müssen :D
 

KingOfExceptions

Bekanntes Mitglied
naja ich denke er hat sich hier schon gedanken gemacht bevor er hier was postet. :) außerdem ist es ja nur ein angebot, wenn er nicht will brauch er ja auch nicht ;)
 

dehlen

Bekanntes Mitglied
also ich weiß nicht inwiefern du schon mit dem Scanner bzw dem BufferedReader vertraut bist aber das könnte die Angelegenheit sehr erleichtern also quasi so:

mainMethode {
Preis pro Ticket festlegen
AnzahlTickets abfragen und auslesen
Einzahlung abfragen und auslesen
Nun Gesamtsumme, sowie den noch zu bezahlenden Betrag ausrechnen
Gesamtsumme und noch zu bezahlenden Betrag ausgeben
}
 
C

C_A

Gast
Die komplette Lösung ist im BlueJ-Buch von Barnes / Kölling zu finden, das in den Schulen häufig eingesetzt wird. Der Ticket-Automat wird da ausführlich besprochen.
 

sillydude

Mitglied
hey erstmal,

für 2 tage java eine beachtliche leistung, ich finde aber auch wie schon vorher von jemand anderem erwähnt, du solltest es wegen des lerneffekts selbst herausfinden, ich habe dir hierfür mal eine andere version geschrieben, im grunde zwar funktionsfähig, doch einige methoden werden z.B. nie aufgerufen, andere methoden fehlen noch und Exceptionhandling ist ebenfalls nicht dabei. Allerdings hoffe ich, dass du dies einfach mal in eine Datei kopierst und ausprobierst bzw. erweiterst. Tja dann viel spaß, hoffe ich konnte dir etwas helfen.

Die Datei Ticketautomat.java

Java:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Ticketautomat {
    private int preis; // preis des einzeltickets
    protected int bisherBezahlt = 0; // wieviel tickets hat man bisher bezahlt
    protected int gesammtkosten = 0; // gesamtkosten der tickets
    protected int anzahlTickets = 0; //anzahl der gekauften tickets
    
    public Ticketautomat(int preis) { // Konstruktor des tickets
        this.preis = preis; // hier wird der preis eines einzelnen tickets gesetzt    
    }
    
    public int getPreis() {
        return this.preis;
    }
    
    public int getBisherBezahlt() {
        return this.bisherBezahlt;
    }
    
    public void setBisherBezahlt(int bezahlt) {
        this.bisherBezahlt = bezahlt;
    }
    
    public void bezahlen(int betrag) {
        setBisherBezahlt(getBisherBezahlt() + betrag);
    }
    
    public int getGesamtkosten() {
        return this.gesammtkosten;
    }
    
    public void setGesamtkosten (int betrag) {
        this.gesammtkosten = betrag;
    } 
    
    public int getAnzahlTickets() {
        return this.anzahlTickets;
    }
    
    public void setAnzahlTickets(int anzahl) {
        this.anzahlTickets = anzahl;
    }
    
    
}

class Tickettest {
    public static void main(String[]args) throws IOException {
        Helper.welcome();
    }
}

class Helper {
    public static void welcome() throws IOException {
        
        // Aufruf des Konstruktors mit einem Ticketpreis von 20 Euro
        Ticketautomat t1 = new Ticketautomat(20);
        
        // Buffered Reader wird benutzt um Strings von der Konsole einzulesen
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        
        System.out.println("+++--- Willkommen ---+++");
        System.out.println("wie viele Tickets möchten Sie erwerben?:");
        
        // setAnzahlTickets erwartet Daten vom Typ Int gegeben sind allerdings Daten vom Typ String
        // deswegen Integer.parseInt dies wandelt sofern es nur eine einfache Zahl ist ein String in einen Integer um
        t1.setAnzahlTickets(Integer.parseInt(in.readLine()));
        
        System.out.println("Sie wollen " + t1.getAnzahlTickets() + " erwerben");
        
        // Multiplikation mit Java bei der Ausgabe 
        System.out.println("Somit wäre ein Gesamtbetrag von " + (t1.getAnzahlTickets() * t1.getPreis()) + " Euro faellig");
        System.out.println("Bitte geben Sie ein, wieviel Euro Sie bezahlen:");
        t1.setBisherBezahlt(Integer.parseInt(in.readLine()));
        System.out.println("Ihnen werden " + (t1.getBisherBezahlt() / t1.getPreis()) + " Tickets ausgehändigt");
    }
    

}

PS: Falls du noch Fragen hast, meld dich einfach ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
W Pfeilenformen im BlueJ Java Basics - Anfänger-Themen 9
I BlueJ Queue Frage für Klausur Java Basics - Anfänger-Themen 2
aero043 Hilfe bei BlueJ Hausübung Java Basics - Anfänger-Themen 27
M BlueJ Objekt in Objektliste Java Basics - Anfänger-Themen 2
H BlueJ: was genau ist hier der Fehler? Java Basics - Anfänger-Themen 14
K Spieleidee gesucht für Informatikprojekt - JAVA (BlueJ)? Java Basics - Anfänger-Themen 15
Vernon.098 Java (BlueJ) Mensch ärgere dich nicht Programmien Java Basics - Anfänger-Themen 6
momo96 bluej Java Basics - Anfänger-Themen 2
K BlueJ Ball an Rand Reflektieren Java Basics - Anfänger-Themen 2
YAZZ BlueJ Bewegung einer Figur im Kreis Java Basics - Anfänger-Themen 4
Delonyg Bluej Supermarkt Java Basics - Anfänger-Themen 2
Ray19941 Über BlueJ Textdatei selbstständig erstellen lassen Java Basics - Anfänger-Themen 2
N BlueJ Implementation Analoguhr Java Basics - Anfänger-Themen 33
N Selection Algorithmus: Methode wird nicht erkannt (BlueJ) Java Basics - Anfänger-Themen 3
C Projekt öffnen BlueJ Java Basics - Anfänger-Themen 1
M BlueJ - Array als Paramter einer Methode eingeben Java Basics - Anfänger-Themen 12
K Testen in BlueJ Java Basics - Anfänger-Themen 2
C BlueJ Zahlenschloss programmieren Java Basics - Anfänger-Themen 5
1 BlueJ Fehler ? Java Basics - Anfänger-Themen 7
L Bluej Error: Cannot find Symbol Java Basics - Anfänger-Themen 13
H Methoden Bluej Anfänger Java Basics - Anfänger-Themen 13
D BlueJ Java: Strings voneinander trennen Java Basics - Anfänger-Themen 11
V ToString-Methode mit JUnit testen(BlueJ) Java Basics - Anfänger-Themen 10
G Variablen Variable nimmt keinen Wert an (BlueJ) Java Basics - Anfänger-Themen 4
I BlueJ importdatei fehlt Java Basics - Anfänger-Themen 4
D Java BlueJ Programm wiederholen? Java Basics - Anfänger-Themen 6
J Uniprojekt (BlueJ) Java Basics - Anfänger-Themen 17
H Klassen Hilfe bei BlueJ, Supermario Java Basics - Anfänger-Themen 5
W Testmethoden in BlueJ Java Basics - Anfänger-Themen 12
F Java BlueJ Dinge verschwinden lassen Java Basics - Anfänger-Themen 2
X wie kann ich in bluej/java einene 2d array mit zahlen fuellen, so dass sich diese in der der zeilen Java Basics - Anfänger-Themen 2
E Hilfe bei Lambda-Ausdrücken in BlueJ Java Basics - Anfänger-Themen 1
J BlueJ und import-Anweisungen, wie geht das? Java Basics - Anfänger-Themen 4
K BlueJ Terminverwaltung erstellen Java Basics - Anfänger-Themen 1
J BlueJ - kompilieren - und wie weit kommt man mit BlueJ? Java Basics - Anfänger-Themen 4
J Thread erstellen (BlueJ Projekt) Java Basics - Anfänger-Themen 3
I Erste Schritte BlueJ Fehler Java Basics - Anfänger-Themen 8
C Manuelle Parametereingabe in BlueJ Java Basics - Anfänger-Themen 5
D Wer wird Millionär ? BlueJ Java Java Basics - Anfänger-Themen 2
P BlueJ Sieb des Eratothenes Java Basics - Anfänger-Themen 4
M Ausgeben eines 2D Arrays mit int UND String werten - BLUEJ! Java Basics - Anfänger-Themen 4
G BlueJ Stacks Bahnhof Java Basics - Anfänger-Themen 2
J BlueJ öffnet package falsch Java Basics - Anfänger-Themen 2
J BlueJ Liste Würfel Projekt Java Basics - Anfänger-Themen 2
P Java mit BlueJ - Hilfe - Gegenstände Java Basics - Anfänger-Themen 10
H BlueJ Java Basics - Anfänger-Themen 3
L Queue programmieren via BlueJ Java Basics - Anfänger-Themen 5
R Nach Ubuntu-Update: Konsole spuckt bei neu Kompilierten Programmen Fehler aus (BlueJ)(Ubuntu12.04) Java Basics - Anfänger-Themen 11
X Erste Schritte Java BlueJ Programmieren Java Basics - Anfänger-Themen 36
Tally Methoden BlueJ - Datum als Kalendertag int - tagImJahr Java Basics - Anfänger-Themen 6
J BlueJ canvas Buttons adden? Java Basics - Anfänger-Themen 2
J BlueJ Tic Tac Toe öffnen? Java Basics - Anfänger-Themen 6
T Erste Schritte BlueJ kapitel 4 frage Schleifen ? Java Basics - Anfänger-Themen 4
V BlueJ: Funktionierende .jar Datei erstellen Java Basics - Anfänger-Themen 2
G Methoden BlueJ SuM Methode wird nicht gefunden Java Basics - Anfänger-Themen 9
S Pakete in BlueJ Java Basics - Anfänger-Themen 5
T Snake-BlueJ Bewegung Java Basics - Anfänger-Themen 7
S Erste Schritte Bluej Automatisches Einfügen von Objekten Java Basics - Anfänger-Themen 4
T Snake mit Bluej Java Basics - Anfänger-Themen 8
R BlueJ - Hilfe bei for-Struktur Java Basics - Anfänger-Themen 11
S Erste Schritte BlueJ-Aufgabe: Programmcode / Brauche dringend Hilfe !!! Java Basics - Anfänger-Themen 37
B Verständnisfrage:Beispielprogramm BlueJ Java Basics - Anfänger-Themen 3
P Java BlueJ Schatzsuche Java Basics - Anfänger-Themen 2
H Erste Schritte von BlueJ zu Eclipse Java Basics - Anfänger-Themen 10
I Rc4 Verschlüsselung in BlueJ Java Basics - Anfänger-Themen 18
H Buch: Java lernen mit BlueJ Modulo-Operator Java Basics - Anfänger-Themen 16
X Methoden Java Dublikatsuche Hilfe(BlueJ) Java Basics - Anfänger-Themen 9
X Interpreter-Fehler "java.lang.NullPionterException: null" bei BlueJ Java Basics - Anfänger-Themen 10
C Problem bei BlueJ - Pfeil bleibt nicht in der Dartscheibe stecken Java Basics - Anfänger-Themen 4
Binary.Coder Bluej ähnlicher Inspektor gesucht Java Basics - Anfänger-Themen 3
T problem mit der maus in BlueJ Java Basics - Anfänger-Themen 14
J BlueJ! 2 kleine Fragen zum Spiel. Java Basics - Anfänger-Themen 3
R BlueJ Pacman Java Basics - Anfänger-Themen 17
B BlueJ Turtle nicht gefunden Java Basics - Anfänger-Themen 6
J start(); bei bluej Java Basics - Anfänger-Themen 3
E BlueJ Projekt öffnen Java Basics - Anfänger-Themen 15
Jats Probleme mit BlueJ und Bankkonto-Methoden Java Basics - Anfänger-Themen 7
A BlueJ BMI berechnen Java Basics - Anfänger-Themen 9
D BlueJ Anzeigeproblem Java Basics - Anfänger-Themen 5
L String Variable zurückgeben mit BlueJ Java Basics - Anfänger-Themen 12
J BlueJ Zeichen, Dart-Pfeil Java Basics - Anfänger-Themen 59
B Paket in BlueJ einfügen Java Basics - Anfänger-Themen 5
C BlueJ zum Laufen bekommen Java Basics - Anfänger-Themen 14
M BlueJ Problem Java Basics - Anfänger-Themen 6
P BlueJ hängt sich beim compilen auf Java Basics - Anfänger-Themen 9
P BlueJ Fehlermeldung - Illegal Start of Type Java Basics - Anfänger-Themen 8
S Klasse Zeichenfenster und BlueJ - Könnt ihr mir helfen? Java Basics - Anfänger-Themen 4
A Datentyp Char wird in BlueJ nur als leerer weißer Kasten dargestellt Java Basics - Anfänger-Themen 1
A JButton erscheint nicht (BlueJ) Java Basics - Anfänger-Themen 2
E BlueJ und Zeichenketten. S83 Übung 2.72 Java Basics - Anfänger-Themen 3
H BlueJ mehrere Klassen Java Basics - Anfänger-Themen 6
Binary.Coder Wechsel von BlueJ zu Eclipse Java Basics - Anfänger-Themen 7
G BlueJ jUnit Test Java Basics - Anfänger-Themen 6
G Klassenhierarchie in BlueJ. Java Basics - Anfänger-Themen 3
G BLueJ Aufgabe Java Basics - Anfänger-Themen 11
G Bluej startet nicht Java Basics - Anfänger-Themen 5
B BlueJ: Anfängerprojekt mit HashMap Java Basics - Anfänger-Themen 14
D String - BlueJ Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben