Abschreibungsplan berechnen

M

Mood

Mitglied
Hallo zusammen,
ich muss ein Java Programm erstellen, in dem ich die Abschreibungswert nach 10 Jahren berechnen kann.

Vorgegen:
Maschine=150000 gekauft
lebenszeit=10 Jahren
abschreibungswert=15000/10=15000
Lösung muss so aussehen:
Reswert nach Jahr 1:135000
Restwert nach Jahr 2:12000


ich habe es probiert aber hat nicht geklappt ...könnte jmd viell. hilfen!

Java:
public class Abschreibungsplan {

    public static void main(String[] args)
    {
        int lebenszeit=10;
        double druckerpresse=150000;
        double restwert=0;
        double abschreibungswert;
        while (restwert<=0)
        {  abschreibungswert=druckerpresse/lebenszeit;
            lebenszeit=lebenszeit-1;
            restwert=druckerpresse-abschreibungswert;
            System.out.println(restwert); }
    }
}
 
Zuletzt bearbeitet von einem Moderator:
W

White_Fox

Top Contributor
Ich werfe als Richtungsstubser in den Raum: Du brauchst zwei Daten: Das Datum, an dem die Maschine gekauft wurde, und das aktuelle Datum. Dafür gibts fertige Pakete in der Standardbibliothek (Calendar, glaube ich).

Schau mal, was du damit machen kannst...hier sind ein paar Beispiele:
 
mrBrown

mrBrown

Super-Moderator
Mitarbeiter
Ich werfe als Richtungsstubser in den Raum: Du brauchst zwei Daten: Das Datum, an dem die Maschine gekauft wurde, und das aktuelle Datum.
Die Frage dürfte sich nur auf ganze Jahre beziehen, und nicht auf konkrete Zeitpunkte innerhalb des Jahres :)

Dafür gibts fertige Pakete in der Standardbibliothek (Calendar, glaube ich).
Calendar ist die alte, sehr hässliche und unschöne und inoffiziell deprecated'e API, die neue ist java.time, wo auch dein Beispiel mit LocalDate her stammt ;)
 
T

tommysenf

Top Contributor
@Mood
Code:
Abschreibungswert = Neuwert / Lebenszeit
Restwert =  Neuwert;
für jedes Jahr in Lebenszeit:
       Restwert = Restwert - Abschreibungswert
 
mrBrown

mrBrown

Super-Moderator
Mitarbeiter
Vorgegen:
Maschine=150000 gekauft
lebenszeit=10 Jahren
abschreibungswert=15000/10=15000
Lösung muss so aussehen:
Reswert nach Jahr 1:135000
Restwert nach Jahr 2:12000
Der Teil sieht erstmal richtig aus, du kannst das quasi 1-zu-1 in Code überführen.


ich habe es probiert aber hat nicht geklappt ...könnte jmd viell. hilfen!

Java:
public class Abschreibungsplan {

    public static void main(String[] args)
    {
        int lebenszeit=10;
        double druckerpresse=150000;
        double restwert=0;
        double abschreibungswert;
        while (restwert<=0)
        {  abschreibungswert=druckerpresse/lebenszeit;
            lebenszeit=lebenszeit-1;
            restwert=druckerpresse-abschreibungswert;
            System.out.println(restwert); }
    }
}

Dabei hast du allerdings mehrere Fehler gemacht:

restwert ist bei dir zu Anfang 0 – die Maschine wäre in deinem Code also schon bei der Anschaffung nichts mehr Wert.
abschreibungswert gibst du in der Tabelle oben mit 15.000 an - in deinem Code ändert sich das aber für jedes Jahr
Deine Schleife läuft solange, wie der Restwert weniger oder gleich 0 ist – das passiert bei dir aufgrund des ersten Fehlers immerhin ein mal, allerdings sollte die Schleife doch 10 Jahre lang bzw solange, wie die Maschine noch etwas wert ist, laufen.
 
W

White_Fox

Top Contributor
@tommysenf
Naja...man KANN es mit einer Schleife berechnen, aber wozu wenn man es auch mit ein oder zwei Gleichungen hinbekommt? Daß das eine Schleifenaufgabe sei, dafür sehe ich keinen Anhaltspunkt. Der TS hat diesen Lösungsansatz zwar gewählt, aber ich denke daß es da doch weitaus bessere Beispiele gibt...oder nicht?

Edit:
Ich nehm das wieder zurück...wenn der Restwert jedes Jahr aufgezählt werden soll, dann braucht er doch eine Schleife.


@mrBrown
Kann sein...ich hab das so aus dem Gedächtnis gekramt und nicht extra nachgeschaut. Hätte ich vielleicht machen sollen.
 
M

Mood

Mitglied
Der Teil sieht erstmal richtig aus, du kannst das quasi 1-zu-1 in Code überführen.




Dabei hast du allerdings mehrere Fehler gemacht:

restwert ist bei dir zu Anfang 0 – die Maschine wäre in deinem Code also schon bei der Anschaffung nichts mehr Wert.
abschreibungswert gibst du in der Tabelle oben mit 15.000 an - in deinem Code ändert sich das aber für jedes Jahr
Deine Schleife läuft solange, wie der Restwert weniger oder gleich 0 ist – das passiert bei dir aufgrund des ersten Fehlers immerhin ein mal, allerdings sollte die Schleife doch 10 Jahre lang bzw solange, wie die Maschine noch etwas wert ist, laufen.
ich muss den Restwert mit 0 initialisieren sonst bekomme ich ein Fehlerhaftes Code in java
mit dem 15 000 versuche ich nur die Fragestellung zu vereinfachen ..
 
mrBrown

mrBrown

Super-Moderator
Mitarbeiter
Naja...man KANN es mit einer Schleife berechnen, aber wozu wenn man es auch mit ein oder zwei Gleichungen hinbekommt? Daß das eine Schleifenaufgabe sei, dafür sehe ich keinen Anhaltspunkt. Der TS hat diesen Lösungsansatz zwar gewählt, aber ich denke daß es da doch weitaus bessere Beispiele gibt...oder nicht?
Die Aufgabenstellung klingt danach, als soll der jährliche Restwert angegeben werden, dafür braucht man die Schleife.
 
mrBrown

mrBrown

Super-Moderator
Mitarbeiter
ich muss den Restwert mit 0 initialisieren sonst bekomme ich ein Fehlerhaftes Code in java
Nein, du musst den Restwert nur mit irgendeinem Wert initialisieren. Statt 0 könntest du aber auch irgendeinen sinnvollen Wert nutzen ;)

Welchen Restwert hat denn die Maschine direkt nach dem Kauf?

mit dem 15 000 versuche ich nur die Fragestellung zu vereinfachen ..
Du musst die 15.000 nicht so direkt in den Code schreiben, du kannst stattdessen auch die Rechnung nutzen. Aber soll sich der Abschreibungswert jährlich ändern?
 
kneitzel

kneitzel

Top Contributor
Nein, Restwert sollte der Wert sein, den die Maschine hat, d.h. am Anfang ist es der Neuwert.

Und Schleifenbedingung Restwert <= 0 sieht dubios aus.... Restwert negativ gefällt mir - du gibst mir paar Tausender, damit ich die Maschine zum Schrottplatz fahre und noch Geld für das Metall bekomme :)

Formuliere doch erst einmal als Text ganz exakt, qas du wie machen willst. Vergiss bei diesem Schritt Java komplett.

Wenn du in Worten die genauen Schritte aufgeschrieben hast, dann kannst du diese 1:1 in Java übersetzen.
 
M

Mood

Mitglied
Nein, du musst den Restwert nur mit irgendeinem Wert initialisieren. Statt 0 könntest du aber auch irgendeinen sinnvollen Wert nutzen ;)

Welchen Restwert hat denn die Maschine direkt nach dem Kauf?


Du musst die 15.000 nicht so direkt in den Code schreiben, du kannst stattdessen auch die Rechnung nutzen. Aber soll sich der Abschreibungswert jährlich ändern?
nie die Abschreibungswert muss gleich bleiben und nach jedem Jahr immer 15 000 abgezogen..was ändert sich ist nur das Druckerpresse Wert
135 000
120 000
105 000 usw...
 
M

Mood

Mitglied
Nein, Restwert sollte der Wert sein, den die Maschine hat, d.h. am Anfang ist es der Neuwert.

Und Schleifenbedingung Restwert <= 0 sieht dubios aus.... Restwert negativ gefällt mir - du gibst mir paar Tausender, damit ich die Maschine zum Schrottplatz fahre und noch Geld für das Metall bekomme :)

Formuliere doch erst einmal als Text ganz exakt, qas du wie machen willst. Vergiss bei diesem Schritt Java komplett.

Wenn du in Worten die genauen Schritte aufgeschrieben hast, dann kannst du diese 1:1 in Java übersetzen.
Eine Firma hat eine Druckerpresse für 150 000 gekauft und möchte diese Druckerpresse linear abschreiben, wobei für die Druckerpresse eine Lebenszeit von 10 Jahren zugrunde gelegt wird. Ihre Aufgabe ist die Entwicklung eines Programmes, das die Wertentwicklung der Druckerpresse in diesen 10 Jahren berechnet und ausgibt.
Das wars eigentlich!
 
kneitzel

kneitzel

Top Contributor
Das ist aber doch keine detaillierte Beschreibung, wie du es berechnet.

Du musst den Ablauf haar klein im Detail beschreiben. Das was du da geschrieben hast lässt sich nicht 1:1 übersetzen ....
 
M

Mood

Mitglied
Das ist aber doch keine detaillierte Beschreibung, wie du es berechnet.

Du musst den Ablauf haar klein im Detail beschreiben. Das was du da geschrieben hast lässt sich nicht 1:1 übersetzen ....
wenn ich dein Befehl mitgenommen aber dann nicht die gewünschte Lösung bekommen habe. d.h dass ich Ihre Weise nicht ganz klar für mich. hatten Sie mir viell. die genaue Schleife kopiert um die Geschichte einfacher zu machen.
 
kneitzel

kneitzel

Top Contributor
Die Schritte, die zu einem funktionierenden Programm führen, sind immer genau gleich:
a) Verstehen, wie es funktionieren soll.
b) Dann das Ausprobieren - Also am Anfang: Stift und Papier nehmen und einfach von Anfang bis Ende durchrechnen. Dabei die Schritte genau erfassen.
c) Die genauen Schritte formulieren - in einer Sprache, die man sehr gut versteht - also als Anfänger in Java ist es nicht Java. Später kann es Java sein.
d) Das, was man dann hat, das wird dann in Java umgesetzt.

Diese Schritte werden immer so in der Art sein. An a kommt man nicht vorbei. b wird sich natürlich ändern - aus a baut man dann kleine Bruchstücke und die werden umgesetzt und "ausprobiert" (Unit Tests und so ... musst Du jetzt nicht wirklich verstehen ...)
c und d wachsen zusammen, denn man wird dann Java irgendwann sehr gut verstehen. Aber da kommen dafür andere Aspekte hinein, die ich nicht aufführen will...

Also: Genau formulieren, was Du machst um zum Ergebnis zu kommen. Und dann das einmal auf einem Zettel durchgehen. (Sollte einfach sein, denn @tommysenf hat es ja bereits in Pseudo Code gebracht!)

Und wenn Du es auf einem Zettel genau in allen Schritten formuliert hast: Dann gib doch einfach Variablen aus und so. Also bau mehr System.out.println ein. Oder noch besser: Schau, ob Du den Debugger bedienen kannst!)
 
Blender3D

Blender3D

Top Contributor
ich habe es probiert aber hat nicht geklappt ...könnte jmd viell. hilfen!
Die Ausgabe sollte so aussehen.
Abschreibungsplan.JPG
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Quadratwurzel berechnen Java Basics - Anfänger-Themen 8
V Wachstum berechnen und in Ist-Formel verwenden Java Basics - Anfänger-Themen 5
N Variable aus anderen Variablen in statischer Klasse berechnen/abspeichern? Java Basics - Anfänger-Themen 4
V Gehalt berechnen in Java Java Basics - Anfänger-Themen 6
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
L Anzahl der benachbarten Minen berechnen und setzen Java Basics - Anfänger-Themen 15
J Array Speicherplatz berechnen Java Basics - Anfänger-Themen 35
H Eingabedaten berechnen Java Basics - Anfänger-Themen 9
B Tranportkosten berechnen mit unterschiedlichen MwSt Java Basics - Anfänger-Themen 9
L Anzahl der Paare deren Summe = 0 ergibt berechnen Java Basics - Anfänger-Themen 0
V Erste Schritte Berechnen von Sinus; sin(x) ohne Math.* Java Basics - Anfänger-Themen 1
J Hilfe bei Java Aufgabe (Restschuld berechnen) Java Basics - Anfänger-Themen 11
N Ein Datum berechnen Java Basics - Anfänger-Themen 3
T Sparplan berechnen Java Basics - Anfänger-Themen 4
F Abstand zum Durchschnitt von 5 Zahlen berechnen... Java Basics - Anfänger-Themen 16
B java.util.Date berechnen Java Basics - Anfänger-Themen 11
P Mittelwert Arrayelemente berechnen Fehler Java Basics - Anfänger-Themen 5
UnknownInnocent Best Practice Schussparabel berechnen Java Basics - Anfänger-Themen 3
T Modulo / Pow berechnen Java Basics - Anfänger-Themen 4
E Statistische Kennzahlen berechnen Java Basics - Anfänger-Themen 2
F Switch Case Modulo berechnen Java Basics - Anfänger-Themen 12
B mehrere Werte mit scanner und while schleife einlesen, max berechnen bzw addieren Java Basics - Anfänger-Themen 2
C Preis berechnen mit Java Java Basics - Anfänger-Themen 4
B Zahl in String abspeichern und später berechnen Java Basics - Anfänger-Themen 15
N Best Practice Image recognition fuzzy Superhash berechnen Java Basics - Anfänger-Themen 1
Dawinartor Erste Schritte Schaltjahr berechnen Java Basics - Anfänger-Themen 1
L Pi berechnen Java Basics - Anfänger-Themen 1
UnknownInnocent Term (als String) berechnen und ausgeben Java Basics - Anfänger-Themen 10
L Den Winkel zwischen zwei Vektoren berechnen! Java Basics - Anfänger-Themen 2
J Variablen arithmetischen Mittelwert berechnen Java Basics - Anfänger-Themen 5
K Matrixen berechnen nach Worker Master Paradigma mit Threads Java Basics - Anfänger-Themen 4
R Winkel berechnen bzw. Geraden sortieren Java Basics - Anfänger-Themen 33
I Schnittpunkt zweier Geraden berechnen Java Basics - Anfänger-Themen 25
M Erste Schritte Mittelwert berechnen -> Methode in der Methode? Java Basics - Anfänger-Themen 14
S Compiler-Fehler Schaltjahr berechnen Java Basics - Anfänger-Themen 5
B Fakultätsfunktion Rekursiv Berechnen aber mit Array Java Basics - Anfänger-Themen 10
S Durchschnitt berechnen aus zwei Textfeldern Java Basics - Anfänger-Themen 21
D Summe berechnen mit verändertem Wert aus Schleife Java Basics - Anfänger-Themen 1
R Liga Berechnen Java Basics - Anfänger-Themen 1
P Klassen Berechnen mehrerer Map-Werte Java Basics - Anfänger-Themen 13
R Fussballtabellen berechnen Java Basics - Anfänger-Themen 12
J Fibonacci -Folge rekursiv berechnen Java Basics - Anfänger-Themen 18
J Durchschnitt jeder Zeile und und Spalte in einem 2D Arrays berechnen Java Basics - Anfänger-Themen 6
F ISBN Prüfziffer berechnen Java Basics - Anfänger-Themen 17
F Die Teilersumme einer Eingabe berechnen Java Basics - Anfänger-Themen 11
S Negafibonacci Folge berechnen Java Basics - Anfänger-Themen 24
G Array Mittelwert berechnen, wie? Java Basics - Anfänger-Themen 8
S Primzahlen berechnen funktioniert nicht richtig Java Basics - Anfänger-Themen 1
N Mit LocalDate alter berechnen Java Basics - Anfänger-Themen 3
J Laufzeit berechnen/Laufzeitanalyse Java Basics - Anfänger-Themen 2
N Arrays mit Zufallzahlen füllen und Statistiken berechnen Java Basics - Anfänger-Themen 5
A Wochentag berechnen Java Basics - Anfänger-Themen 10
Ste3et_C0st Vectoren berechnen Java Basics - Anfänger-Themen 8
L Durchschnitt in der Schleife berechnen Java Basics - Anfänger-Themen 11
A Kreisumfang/-Fläche vom Kreis berechnen Java Basics - Anfänger-Themen 39
L Wochentag berechnen Java Basics - Anfänger-Themen 5
L Rekursive Methode a * b berechnen Java Basics - Anfänger-Themen 2
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
N Dauer zwischen zwei LocalDateTime Objekten berechnen? Java Basics - Anfänger-Themen 4
P Ausdrücke berechnen Java Basics - Anfänger-Themen 2
V Mittelwert berechnen Java Basics - Anfänger-Themen 31
H Datentypen Tage zwischen zwei Datums berechnen Java Basics - Anfänger-Themen 4
P Quadrate berechnen Java Basics - Anfänger-Themen 3
S OOP Datumsunterschied in Tagen berechnen Java Basics - Anfänger-Themen 3
M Methoden Aus Timestamp das Datum berechnen Java Basics - Anfänger-Themen 3
B Schaltjahre berechnen! Java Basics - Anfänger-Themen 1
A werte in einem String berechnen Java Basics - Anfänger-Themen 3
F Checksummen aus int-Array berechnen Java Basics - Anfänger-Themen 3
F Toto-Tipp-Reihen berechnen Java Basics - Anfänger-Themen 1
N Threads Exception in thread "main"... Feher bei dem Versuch ein Radius zu berechnen Java Basics - Anfänger-Themen 4
R Quersumme berechnen - Methodenproblem Java Basics - Anfänger-Themen 1
S Button "Berechnen" geht nicht Java Basics - Anfänger-Themen 3
M Fakultät berechnen Java Basics - Anfänger-Themen 2
R Palindrom eines int-Arrays berechnen Java Basics - Anfänger-Themen 14
N Zeit berechnen, die für eine Strecke benötigt wird Java Basics - Anfänger-Themen 3
hello_autumn Maximum berechnen. Java Basics - Anfänger-Themen 17
hello_autumn Potenz selber berechnen, Rekursiv. Java Basics - Anfänger-Themen 6
H pi näherungsweise berechnen - Wallis Produkt Java Basics - Anfänger-Themen 9
E Eulersche Zahl berechnen, Endlosschleife Java Basics - Anfänger-Themen 2
D Folgestände berechnen Java Basics - Anfänger-Themen 6
I Höchste Zahl berechnen die eine Eingabe ohne Rest teilt und eine Primzahl ist Java Basics - Anfänger-Themen 2
B Restzeit berechnen (Kopiervorgang) Java Basics - Anfänger-Themen 7
S Kleines Zeichen berechnen Java Basics - Anfänger-Themen 5
F Datum Differenz berechnen Java Basics - Anfänger-Themen 7
J Erste Schritte Zeitstempeldifferenz berechnen Java Basics - Anfänger-Themen 2
A Hashwert einer Datei berechnen Java Basics - Anfänger-Themen 3
K Notendurschnitt berechnen Java Basics - Anfänger-Themen 9
T String "2+4*3" berechnen lassen? Java Basics - Anfänger-Themen 13
F EUI-64 von IPv6 berechnen (local link) Java Basics - Anfänger-Themen 2
J Fibonacci Zahlen berechnen Java Basics - Anfänger-Themen 3
M Alle Sublisten einer bestimmten Laenge berechnen Java Basics - Anfänger-Themen 2
S Erste Schritte Tage zwischen 2 Daten berechnen Java Basics - Anfänger-Themen 6
J Pi berechnen Java Basics - Anfänger-Themen 2
Z Zahl Pi probabilistisch berechnen (Kritik/Verbesserungsvorschläge) Java Basics - Anfänger-Themen 4
Z Differenz zwischen 2 Daten berechnen, ohne importiere Funktionen! Java Basics - Anfänger-Themen 10
A Datum zwischen zwei Daten berechnen und in Tagen anzeigen Java Basics - Anfänger-Themen 4
X Sinusreihe berechnen Java Basics - Anfänger-Themen 24
E Zeit zum bestimmten Datum in millisekunden berechnen Java Basics - Anfänger-Themen 5
V Benutzerdefinierter Zahlenbereich berechnen Java Basics - Anfänger-Themen 5
T Flächeninhalt von Papierformaten berechnen Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Anzeige

Neue Themen


Oben