Countdown java programieren

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Mit einer Variabel countdown, welche du eingeben lassen musst.

System.out.println("Geben Sie die Countdownlänge ein!"); String s = javax.swing.JOptionPane.showInputDialog( "Bitte Zahl eingeben" ); int countdown = Integer.parseInt( s );

for(int i = countdown; i!=0; i--) { System.out.println(i); }

Danke es funktzioniert nur ist der Countdown etwas zu schnell wie kann ich den den Verlangsamen?

0
@mcchecker1000

War er vorher langsamer?

Ich denke da wirst du mit einer Zeitmethode ran müssen...das ist dann weniger trivial..

0
@Xarna

System.out.println("Geben Sie die Countdownlänge ein!"); String s = javax.swing.JOptionPane.showInputDialog( "Bitte Zahl eingeben" ); int countdown = Integer.parseInt( s );

for(int i = countdown; i!=0; i--) { System.out.println(i); Thread.sleep(1000); }

Mach das mal so :) thread.sleep baut eine Pause für 1000 Millisekunden also 1 Sekunde ein.

0
@Xarna

nein voher war er nicht langsamer mit den Countdown will ich erreichen das man eine zeit eingibt in Sekunden und wenn diese Sekunden um sind soll ein Lied abspielen wie man des mit den Lied abspielen macht weiss ich aber eben nicht wie ich des mache das der Countdown langsamer ist.

0
@mcchecker1000

Bisschen spät, aber Thread Sleep wäre eine Lösungsmöglichkeit ;) habs auch so gemacht :D 

0
@Xarna

Thread.sleep(); ist allerdings nicht so "schön". Am besten eigenen Thread für soetwas erstellen oder einen Timer verwenden.

0

int countdown = Integer.parseInt(JOptionPane.showInputDialog("Wartezeit eingeben"));

Für den Countdown: ich würde das ganze in eine eigene Unterklasse der Klasse Thread packen. Würde dann so aussehen:

Thread.java

public class Countdown extends Thread{

{setPriority(MAX_PRIORITY);}

public Countdown(){ super(); }

public void run(){

int countdown = Integer.parseInt(JOptionPane.showInputDialog("Wartezeit eingeben"));

int laufzeit = 500; //Die gesamte Laufzeit des Countdowns.


for(int i = countdown; i != 0; i --){
System.out.println(i);
try{
this.sleep((laufzeit/countdown)*1000);
}catch(Exception e1){System.err.println("Thread abgebrochen!");}

}
}}

Main.java


public class Main{
public static void main(String args[]){
Countdown cd = new Countdown();
cd.start();
}
}


Im Array nach einer bestimmten Zahl suchen brauche hilfe?

import java.util.Scanner; 

public class Felder
{
public static void main(String[] args)
{
// Beschreibung des Programms

System.out.println("Erstellung eines Arrays mit n-Feldern");
System.out.println();


//Scanner zur Einagbe der Feldgröße

Scanner sc = new Scanner(System.in);

System.out.print("Bitte geben sie die Größe des Arrays ein ");
int feldgroesse = sc.nextInt();


int[] a = new int[feldgroesse];

System.out.println("Nun füllen Sie das Array mit ganzen Zahlen");
System.out.println();


// Schleife zum füllen des Arrays

for (int i=0; i<feldgroesse;i++)
{
System.out.print("Bitte geben Sie eine Ganzzahl ein: ");
a[i] = sc.nextInt();
}

for (int i; i = 0; i++)
{
if(a[i] = = 5)
{
System out println(„Der Array enthält die gesuchte Zahl: “ + a[i]);
}
}
printFeld(a);
sc.close();
}

public static void printFeld(int[] a)
{

//gibt das Arrays auf der Konsole aus
System.out.println();
System.out.println("Ausgabe des Arrays");
System.out.println();
for (int i=0; i<a.length;i++)
{
System.out.println("Feld "+ i + " = " +a[i]);
}
}
}

Komme nicht weiter bitte mit einer code Antwort helfen hänge seit 3 Tagen an dieser Aufgabe. Danke Eine eigene Methode schreiben(suchIndex(int[] a, int wert)) die eine vom Nutzer abgefragte Zahl im zuvor erstellten Array sucht und wenn es gefunden wird mit dem entsprechenden Index ausgibt

...zur Frage

Java: Wo ist der Fehler?

public class Uebergabe {   
  public static void main (String[] args) {
     System.out.println("Der Parameter war: " + args[0]);   
  } 
}
...zur Frage

Java Spiel Fehler im Code?

Hallo,

Ich muss für die Schule in Java ein Code für ein Spiel schreiben. Hierbei habe ich mich für "Schere, Stein, Papier" mit 5 Varianten entschieden.

Für den Code habe ich lange gebraucht doch als ich endlich fertig war und ihn ausprobiert habe, habe ich keine Fehlermeldung bekommen - sprich der Code enthält 'in Java Sprache' keine Fehler.

Doch das Spiel funktioniert nicht!

Gibt es hier bereitwillige Spezialisten die mir helfen können meinen Fehler im Code zu finden?

Ich bin echt nicht gut in Informatik...

import java.awt.; import java.applet.; import java.util.Scanner;

public class KampfDerElemente extends Applet {

public static void main(String[] args) {

while(true) {

System.out.println("Sie haben die Wahl");

System.out.println("1 - Feuer");

System.out.println("2 - Wasser");

 System.out.println("3 - Luft");

 System.out.println("4 - Erde");

 System.out.println("5 - Elektro");

 Scanner input = new Scanner(System.in);

 int pcwahl;

 pcwahl = (int) (Math.random() * 5) + 1;

 int feuer = 1;

 int wasser = 2;

int luft = 3;

 int erde = 4;

 int elektro = 5;

if (input.nextInt() == pcwahl) {

System.out.println("Unentschieden!");}

if ((pcwahl == feuer) && (input.nextInt() == 3 || input.nextInt() == 5)){

System.out.println("Der Computer hat gewonnen!");

           }

else if (input.nextInt() == 2 || input.nextInt() == 4){

System.out.println("Sie haben gewonnen!");}

                    

           if ((pcwahl == wasser) && (input.nextInt() == 1 || input.nextInt() == 4)){

               System.out.println("Der Computer hat gewonnen!");}

                

               else if (input.nextInt() == 3 || input.nextInt() == 5){

                   System.out.println("Sie haben gewonnen!");}

                    

           if ((pcwahl == luft) && (input.nextInt() == 1 || input.nextInt() == 4)){

               System.out.println("Sie haben gewonnen!");}

                

               else if (input.nextInt() == 2 || input.nextInt() == 5){

                   System.out.println("Der Computer hat gewonnen!");}

                        

           if ((pcwahl == erde) && (input.nextInt() == 1 || input.nextInt() == 3)){

               System.out.println("Der Computer hat gewonnen!");}

                            

               else if (input.nextInt() == 2 || input.nextInt() == 5){

                   System.out.println("Sie haben gewonnen!");}

                    

           if ((pcwahl == elektro) && (input.nextInt() == 1 || input.nextInt() == 3)){

               System.out.println("Sie haben gewonnen!");}

                

               else if (input.nextInt() == 2 || input.nextInt() == 4){

                   System.out.println("Der Computer hat gewonnen!");}

                           }

                       }

                   }

LG Ollivoe

...zur Frage

Warum kommt es bei dem Ausführen des Programmes zu einem Fehler?

package pr2;

import javax.swing.JOptionPane;

public class prrrr {
  static int frage = 1;
  static int ende = 1;
  static double durchschnitt = 0;
  static int bstNote = 0;
  static double summe = 0;
  static int i = 0;
  static int schNote = 0;
  static int zahl = 0;
  static int []anzahl;
  ;

  public static void main(String[] args) {
    double noten[] = new double[100];
    double min = Double.MAX_VALUE;
    double max = Double.MIN_VALUE;

    while(frage == 1){
      String zahl2 = JOptionPane.showInputDialog("Welche Noten hast du bekommen?(Wenn du fertig bist gib q ein)");

      if(zahl2.equals("q"))
      {
        frage = 0;
      }
      else
      {
        int zahli = Integer.parseInt(zahl2);
        noten[i] = zahli;
        //System.out.println(noten[i]);

        summe = (noten[i] + summe);
        i++;
        int anzahl[] = new int[i];
      }

      if (frage == 0)
      {
        durchschnitt = summe / i;
        
        //Beste Note

        //Schlechteste Note

        for (int a = 0; a < i; a++) {
          if (noten[a] < min)
          {
            min = noten[a];
            //System.out.println(noten[a] + " + " + min);
          }
        }
        for (int a = 0; a < noten.length; a++) {
          if (noten[a] > max)
          {
            max = noten[a];
            //System.out.println("max: " + max);
          }
        }
        for(int zahl = 0; zahl < 16; zahl++)
          for(int r = 0; r<noten.length + 1; r++)
          {
            if(noten[r] == zahl)
            {
              anzahl[zahl] = anzahl[zahl] + 1;
            }
          }
        System.out.println("Schlechteteste Note: " + (int)min + "\nBeste Note: " + (int)max);
        System.out.println("Der Durchschnit beträgt: " + durchschnitt);
        System.out.println("-------Notenspiegel-------");
        System.out.println("0" + anzahl[0] + "\n");
        System.out.println("1" + anzahl[1] + "\n");
        System.out.println("2" + anzahl[2] + "\n");
        System.out.println("3" + anzahl[3] + "\n");
        System.out.println("4" + anzahl[4] + "\n");
        System.out.println("5" + anzahl[5] + "\n");
        System.out.println("6" + anzahl[6] + "\n");
        System.out.println("7" + anzahl[7] + "\n");
        System.out.println("8" + anzahl[8] + "\n");
        System.out.println("9" + anzahl[9] + "\n");
        System.out.println("10" + anzahl[10] + "\n");
        System.out.println("11" + anzahl[11] + "\n");
        System.out.println("12" + anzahl[12] + "\n");
        System.out.println("13" + anzahl[13] + "\n");
        System.out.println("14" + anzahl[14] + "\n");
        System.out.println("15" + anzahl[15] + "\n");
      }
    }
  }
}

Fehlercode:

Exception in thread "main" java.lang.NullPointerException
at pr2.prrrr.main(prrrr.java:68)

Der Fehler ensteht, nachdem ich alle Notenpunkte eingegeben habe.

...zur Frage

java- Zeitumrechner

Hi, ich habe ein Problem bei einem kleinen Java Programm. (Bin Anfänger). Bei meinem Programm soll der User eine Anzahl von Sekunden eingeben. Das Programm soll dann die Zeit in Stunden Minuten und Sekunden umrechnen. Mit dem Format HH:MM:SS.

Hier ist der Programmcode:

import java.util.Scanner;

public class Sekunden {

public static void main(String[] args) {
    double s, m, h, aus;

    System.out.print("Geben Sie eine Anzahl von Sekunden ein. Das Programm wird die Stunden und Minuten errechnen:");
    s=new Scanner(System.in).nextInt();
    System.out.println(s+" Sekunden sind ");

    h=s/3600;
    m=s%3600;
    s=s%3600%60;


    System.out.println((int)h+":"+(int)m+":"+(int)s);
}

}

Hier die Ausgabe:

Geben Sie eine Anzahl von Sekunden ein. Das Programm wird die Stunden und Minuten errechnen:3723 3723.0 Sekunden sind 1:123:3

Ich hab als Beispiel die Zahl 3723 geschrieben. Das wären dann 1:02:03 Stunden. Aber wie ihr seht hört es bei den Minuten nicht bei 60 auf. Wo liegt der F

...zur Frage

Java Anfang Fehlermeldung undkeine Lösung!

Servus, habe hier mal Code geschrieben (aus dem Buch ):

public class Factorial {

public static void main (String[] args)
{
    int input = Integer.parseInt(args[0]);
    double result = factorial(input);
    System.out.println(result);
}
public static double factorial (int x)
{
    if (x<0) //kleiner
    {
        return 0.0;
    }
    double fact = 1.0;
    while (x>1) //größer
    {
        fact = fact *x;
        x = x - 1;
    }
    return fact;
}

}

Der Fehler ist: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at Factorial.main(Factorial.java:5)

Laut deversen Forum Infos: -Ihr versucht, auf ein Array Feld zuzugreifen, was außerhalb der Größe des Arrays liegt. -Sucht in der angegeben Zeile nach dem Zugriff auf das Array und stellt fest, warum der Index zu groß geworden ist. -"Printline-Debugging" hilft (Index vor jedem Zugriff ausgeben)!

Doch ich kann das Problem nicht lösen....

Danke für eure Hilfe

...zur Frage

Was möchtest Du wissen?