Witam, w javie siedze bardzo krótko i nie znam się na niej specjalnie. Mam pewien problem, próbowałem przerobić pewien program na inny z pętlami, niestety ciągle podkreśla mi się błąd w jednym miejscu (przy pętli, instrktorze if) Dla Was pewnie to jest śmieszne ale jak już pisałem w tytule jestem nowicjueszem.
package javaapplication9;
import javax.swing.*;
import java.lang.*;
public class Main {
String s;
int a,b;
public static void main (String a[]){
Main p=new Main ();
p.s=JOptionPane.showInputDialog(null,"Podaj na jakiej wysokosci lecisz - w metrach?");
p.a=Integer.parseInt (p.s);
p.s=JOptionPane.showInputDialog(null,"Podaj z jaka predkoscia lecisz - km?");
p.b=Float.parseFloat(p.s);
if(a < 10000);b <800)
{
JOptionPane.showMessageDialog(null,"Jest dobrze tak trzymaj!");
}else if(a > 10000 ;b > 800)
{
JOptionPane.showMessageDialog(null,"Lecisz za wysoko i za szybko! Popraw sie!");
}
else if(a < 10000 ;b > 800)
{
JOptionPane.showMessageDialog(null,"Lecisz za szybko! Popraw sie!");
else if(a > 10000 ;b < 800)
{
JOptionPane.showMessageDialog(null,"Lecisz za szybko! Popraw sie!");
}
}
Proszę o pomoc lub przerobienie na program by działał na tej zasadzie.
jest niepoprawne. w nawiasie musi być 1 wyrażenie.To jak połączyć te warunki operator lub albo i napisał już inż. Piniol. Również brakuje ci nawiasów klamrowych do pary, radzę przyjąć jakąś konwencję stawiania tych nawiasów bo kod jest nieczytelny i łatwo zgubić jeden nawias. Radzę to zrobić w tym stylu:
No dobra ale nawet w takim prostym programie podkreśla mi if i dlaczego?
package javaapplication9;
import javax.swing.*;
public class Main {
int a = 10 ,b = 20;
public static void main (String a[]){
if(a < 10){
System.out.println("lamers");
}
}
}
może zacznijmy od tego co Ci podkreśla? w czym to piszesz? w którym momencie Ci to podkreśla i czy nie ma żadnego związanego z tym podkreśleniem komunikatu?
następnie w ifie będziesz starał porónać ze zmienną a, najłatwiej tak jak pisze cosik_ktosik , odwołać się poprzez p.a, ale podstawą którą powinieneś był przyjąć i stosować wszędzie jest stosowanie samo tłumaczących się nazw zmiennych…
Poza tymi nawiasami i warunkami to jeszcze, w tym pierwszym kodzie, najpierw przypisujesz wartości do pól obiektu p, to później przy warunkach również powinno być p.a i p.b.
Zrób to co napisałem. W if-ach dodaj przed każdym a i b p. (czyli p.a i p.b). Wstaw tą klamrę w podanym fragmencie. W każdym if zmień średnik na && (np a>10000 && b <800) jeżeli warunek dotyczy sytuacji a>10000 i b<800 (piszę z głowy, więc nie pamiętam, czy tam był taki warunek, z takimi liczbami).
PS Coś chyba jest nie tak w tych warunkach. Jak Dasz wysokość i prędkość na 0, to wypisze, że wszystko jest OK.