Kleine Frage

ScottGambler

Mitglied
Hallo. Ich weiß nun nicht ob ich im richtigen Thema hier gelandet bin,weil ich bin neu in diesem Forum hier.

//Wenn das Thema im falschen Berreich ist,bitte verschieben.

Ich bin neu in der ProgrammierWelt, beschäftige mich damit nun seit 2 Monaten und bin eher in die Richtung gegangen Bukkit Plugins für Minecraft zu schreiben/programmieren. Desshalb will ich nun auch mal ein bisschen Java lernen.

Ich habe hier ein Buch rumliegen "Programmieren lernen mit Java", und dort habe ich nun ein paar Aufgaben gemacht. Gestern habe ich noch eine Kreisberechnung gemacht,die den Radius abfragt,und danach die Einheit, dann wird einem gesagt z.B Der Umfang ist dann soviel und die Fläche soviel.

Nun,da ich noch ein anderes Spiel spiele,wo man viele Dörfer/Punkte haben kann,wollte ich etwas schreiben das die Punkte abfragt,und danach die Dörfer. Er erkennt dann das was der User bei Punkte eingeben hat,und er erkennt das was er bei Dörfer eingeben hat. Somit teilt er nun die Punkte durch die Dörfer,und dann sieht man den Punkte-Durchnitt pro Dorf. (Wird praktisch wenn man ca 1'000'000 Punkte hat und z.B 412 Dörfer)

Damit ihr wisst wovon ich rede, hier der Source von der Kreisberchnung:
Java:
import javax.swing.*;



/* Kreisberechnung: Für einen Kreis
 * werden der Umfang und der Flächeninhalt berechnet
 * Der Radius wird beim Programmstart als erster Paramter und die Einheit als zweiter
 * Parameter übergeben
 */

public class KreisBerechnung4 {
 public static void main(String[] args) {
  double radius, umfang, flaeche;
  String einheit, eingabe;
  eingabe = JOptionPane.showInputDialog("Geben sie den KreisRadius ein: ");
  radius = Double.parseDouble(eingabe);
  eingabe = JOptionPane.showInputDialog("Geben Sie die Einheit ein: ");
  einheit = eingabe;
  umfang = 2.0 * 3.1415926 * radius;
  flaeche = 3.1415926 * radius * radius;
  System.out.println("Umfang: ");
  System.out.print(umfang);
  System.out.println("" + einheit);
  System.out.print("Flaeche :");
  System.out.print(flaeche);
  System.out.println("" + einheit + '\u00fd');
 		  

  }
}

Ich hatte mir vorgestellt, dass man nun eine Variable anlegt,die den Wert erkennt der im ersten Auswahlfenster eingegeben wurde. (In diesem Falle = Man gibt die Punkte ein)

Directupload.net - uvg73k29.png

Dann legt man eine 2. Variable an,die erkennt den im zweiten Auswahlfenster eingegeben Wert. Nun wird der Wert1 durch Wert2 geteilt (Wert1 / Wert2).

Directupload.net - 8fl2q4bf.png

//Sorry wegen den Links, bin zu dumm die IMG Funktion zu benutzen🙂

Grundidee habe ich ja bereits, weiß vlt. einer wie ich es auch umsetzen könnte?


Grüße aus Luxemburg.
-ScottGambler
 
Was genau ist denn deine Frage?
Du weißt scheinbar wie du Werte einließt. Du weißt scheinbar wie man Variablen anlegt und Werte zuweise. Ausgabe scheint auch zu klappen. Fehlt dir einfach nur der Operator?

Java:
double punkteSchnitt = (double)punkte / anzahlStaedte;
 
Was hast du denn schon probiert?

Wenn du das einlesen und die Ausgabe schon hast, dann fehlt dir doch nur noch die eine Zeile die ich oben gepostet habe.
 
Was genau ist denn deine Frage?
Du weißt scheinbar wie du Werte einließt. Du weißt scheinbar wie man Variablen anlegt und Werte zuweise. Ausgabe scheint auch zu klappen. Fehlt dir einfach nur der Operator?

Java:
double punkteSchnitt = (double)punkte / anzahlStaedte;


das punkteSchnitt wäre dann die ausgabe der anzahl punkte pro Stadt 🙂
das solltest du als einfügen bevor es ausgegeben wird 😛
 
Mh.. Ich komme irgendwie nicht mehr klar.

Wenn ich es so mache:

Java:
import javax.swing.*;



/* Kreisberechnung: Für einen Kreis
 * werden der Umfang und der Flächeninhalt berechnet
 * Der Radius wird beim Programmstart als erster Paramter und die Einheit als zweiter
 * Parameter übergeben
 */

public class KreisBerechnung4 {
 public static void main(String[] args) {
  double punkte, dorf;
  String einheit, eingabe;
  eingabe = JOptionPane.showInputDialog("Geben sie die Punkte ein: ");
  eingabe = JOptionPane.showInputDialog("Geben Sie die Dörfer ein: ");
 double punkteSchnitt = (double)punkte / dorf;
  System.out.println("Punkte im Ganzen: ");
  System.out.print(punkte);
  System.out.print("Punkte je Dorf :");
  System.out.print(dorf);
 		  

  }
}

Dann kommt ja eine Fehlermeldung,ich muss der Variuable punkte und dorf einen Wert zuweisen.

//Aber das will ich nicht... Er soll ja den Wert erkennen,der eingeben wurde.
 
Dann vergleich doch mal dein Programm mit dem was du als erstes gepostet hast. Du musst punkte bzw. doch noch einen Wert zuweisen:
Java:
radius = Double.parseDouble(eingabe);
 
Hmm. Das kann ja nicht gehen. Er sagte mir ich soll Punkte und Dorf zu einem String machen, aber es muss ja ein Dobule sein?
¨
Type mismatch: cannot convert from String to double

Java:
public class KreisBerechnung4 {
 public static void main(String[] args) {
  double punkte, dorf;
  String einheit, eingabe;
  punkte = JOptionPane.showInputDialog("Geben sie die Punkte ein: ");
  dorf = JOptionPane.showInputDialog("Geben Sie die Dörfer ein: ");
  double punkteSchnitt = (double)punkte / dorf;
  System.out.println("Punkte im Ganzen: ");
  System.out.print(punkte);
  System.out.print("Punkte je Dorf :");
  System.out.print(dorf);
 		  

  }
}

Wenn du das meinstest.
 
Schau dir mal die Zeilen 15 und 16 aus deinem ersten Post an. Das meinte ich.

Alternativ kannst du das ganze auch per Konsole und Scanner lösen was wir das ganze konvertieren und umwandeln erspart.
 
Ich verliere irgendwie gerade den Überblick. Was meinst du mit Zeile 15-16? Das hier?

import javax.swing.*;



Java:
/* Kreisberechnung: Für einen Kreis
 * werden der Umfang und der Flächeninhalt berechnet
 * Der Radius wird beim Programmstart als erster Paramter und die Einheit als zweiter
 * Parameter übergeben
 */

public class KreisBerechnung4 {
 public static void main(String[] args) {
  double punkte, dorf;
  String einheit, eingabe;
  eingabe = JOptionPane.showInputDialog("Geben sie die Punkte ein: ");
  punkte = Double.parseDouble(eingabe);
  eingabe = JOptionPane.showInputDialog("Geben Sie die Dörfer ein: ");
  dorf = Double.parseDouble(eingabe);
  double punkteSchnitt = (double)punkte / dorf;
  System.out.println("Punkte im Ganzen: ");
  System.out.print(punkte);
  System.out.print("Punkte je Dorf :");
  System.out.print(dorf);
 		  

  }
}
 
Java:
System.out.print("Punkte je Dorf :");
System.out.print(dorf);
 

Zurück
Oben