Forum zamknięte. Zapraszamy do grupy na Facebooku
Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Instrukcje sterujące
12-21-2011, 08:57 PM
Post: #1
Instrukcje sterujące
Dyskusja na temat lekcji:
http://javastart.pl/podstawy-jezyka/inst...sterujace/
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
03-07-2012, 05:32 PM (Ten post był ostatnio modyfikowany: 06-11-2014 05:33 PM przez lolo.)
Post: #2
RE: Instrukcje sterujące
Hej mam takie pytanie, napisałem sobię pewną pętlę, o taką :
if(dX>0 && dY>0)
		{double Aab = (AabST);
			System.out.println("Aab="+Aab);
		}
		else if(dX<0 && dY>0)
		{double Aab = (180-(AabST));
			System.out.println("Aab="+Aab);
		}
		else if(dX<0 && dY<0)
		{double Aab = ((AabST)+180);
			System.out.println("Aab="+Aab);
		}
		else if(dX>0 && dY<0)
		{double Aab = (360-(AabST));
			System.out.println("Aab="+Aab);
		}
		else
		{System.out.println("Cos jest nie tak z danymi Wink");
		}
Jeśli chodzi o samą pętlę to wszystko jest OK - wyświetla mi to co ja chcę uzyskać. Chodzi mi o to, że jedną z tych 4 wartości, która wyliczy się po spełnieniu warunków potrzebna mi jest w dalszych obliczeniach...niestety nie mam do niej dostępu. Eclipse podpowiada " Aab cannot be resolved to variable". A drugie pytanie - czy w javie da się robić obliczenia na wartościach kątów ale w gradach a nie tylko stopniach i radianach ?

z góry dzięki za odpowiedź,
pozdrawiam
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
03-08-2012, 09:14 PM
Post: #3
RE: Instrukcje sterujące
Ogólnie to nie ma tu pętli tylko warunek. Jeżeli potrzebujesz dostępu do Aab to musisz ją zadeklarować sobie "wyżej", a nie lokalnie. W Twoim przykładzie Aab w każdej pętli to oddzielna zmienna, widoczna tylko pomiędzy poszczególnymi nawiasami klamrowymi.
Co do pytania o grady - nie mam zielonego pojęcia. Podejrzewam, że istnieje jakaś biblioteka matematyczna do tego, ale trzeba by jej poszukać, lub napisać sobie samemu klasę do konwertowania jednostek.
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
01-03-2013, 08:58 PM (Ten post był ostatnio modyfikowany: 01-03-2013 09:01 PM przez Bartek.)
Post: #4
RE: Instrukcje sterujące
Witam
jak widać jestem Bartek Smile
Mam 12 lat Smile
JAVY z tego kursu uczę się pierwszy tydzień i oto mój pierwszy program w konsoli.
Przedstawiam czego do tej pory się nauczyłem.
------------
Haslo w programie to:
kalkulator
Smile
-----------
Kod:
import java.util.Scanner;

public class program {
    public static void main(String[]args){
        Scanner input = new Scanner(System.in);
         System.out.println("Podaj haslo do programu!!!"); // Program prosi o haslo
        String haslo = input.nextLine(); // dalsza czesc @UP
            switch(haslo){ //
                case "kalkulator": // Haslo - kalkulator
                    System.out.println("Wprowadziles poprawne haslo!"); // komunikat o poprawnym hasle
                        System.out.println("#####################################################"); // Menu Programu :)
                        System.out.println("# Witaj w programie                                 #"); // Menu Programu :)
                        System.out.println("# Dostepne opcje:                                   #"); // Menu Programu :)
                        System.out.println("# 1. Dodawanie aby przejsc wpisz: dodawanie         #"); // Menu Programu :)
                        System.out.println("# 2. Odejmowanie aby przejsc wpisz: odejmowanie     #"); // Menu Programu :)
                        System.out.println("#####################################################"); // Menu Programu :)
                        
                        String opcje = input.nextLine();
                            switch(opcje){
                                case "dodawanie":
                                    double liczba1,liczba2; //Definicja liczb
                                      Scanner odczyta = new Scanner(System.in); // Skan
                                        System.out.println("Podaj pierwsza liczbe"); // komunikat
                                          liczba1 = odczyta.nextDouble(); // Odczytuje liczbe
                                            System.out.println("Podaj druga liczbe"); // Komunikat
                                          liczba2 = odczyta.nextDouble(); // Odczytuje liczbe
                                            System.out.println(liczba1+"+"+liczba2+"= "+(liczba1+liczba2)); //Wykonuje Dodawanie
                                break;
                                
                                case "odejmowanie":
                                    double o1,o2; //Definicja liczb
                                      Scanner odczytb = new Scanner(System.in); // Skan
                                        System.out.println("Podaj pierwsza liczbe"); // komunikat
                                          o1 = odczytb.nextDouble(); // Odczytuje liczbe
                                            System.out.println("Podaj druga liczbe"); // Komunikat
                                          o2 = odczytb.nextDouble(); // Odczytuje liczbe
                                            System.out.println(o1+"-"+o2+"= "+(o1-o2)); //Wykonuje Dodawanie
                                 break;
                                
                                 default:
                                    System.out.println("Nie podales zadnej opcji zamykam program");
                                 }
                        
                        break;
                default:
                    System.out.println("Wprowadziles zle haslo!!!");
        
  }
}
}
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
01-21-2013, 03:05 PM (Ten post był ostatnio modyfikowany: 01-21-2013 03:51 PM przez Adrianus123.)
Post: #5
RE: Instrukcje sterujące
mały programik obliczający równanie liniowe na podstawie wyznaczników http://matematyka.pisz.pl/strona/1194.html
Kod:
import java.util.Scanner;

public class układ_rownan{
    public static void main(String[] args){
    
double a, b, c, a1, b1, c1, W, Wx, Wy;
String znak;
Scanner liczba = new Scanner(System.in);

System.out.println("sposób podania równania :\n 4 x +4 y = 4");
System.out.println("podaj 1 rownanie");
a = liczba.nextDouble();
znak = liczba.next();
b = liczba.nextDouble();
znak = liczba.next();
znak = liczba.next();
c = liczba.nextDouble();    


System.out.println("podaj 2 rownanie");
a1 = liczba.nextDouble();
znak = liczba.next();
b1 = liczba.nextDouble();
znak = liczba.next();
znak = liczba.next();
c1 = liczba.nextDouble();    


W = (a*b1)-(b*a1);
Wx = (c*b1)-(b*c1);
Wy = (a*c1)-(c*a1);

if((W==0)&&(Wx==0)&&(Wy==0)){System.out.println("nieskonczenie wiele rozwiazan");}

if((W==0)&&(Wx!=0)){System.out.println("układ jest sprzeczny");}
if((W==0)&&(Wy!=0)){System.out.println("układ jest sprzeczny");}

if(W!=0){System.out.println("x="+(Wx/W)+" Y="+(Wy/W));}
}}
program sam w sobie działa.
czy nie da się go jakoś uprościć i czy nie ma błędów merytorycznych.
i jak zrobić aby nie trzeba było po każdej liczbie wciskać spacje lub enter
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
01-22-2013, 08:14 PM
Post: #6
RE: Instrukcje sterujące
Warunek z układem sprzecznym możesz połączyć i zrobić to w jednym warunku wykorzystując dodatkowo alternatywę.
Nie ma możliwości wczytywania danych przy pomocy spacji, lub innego klawisza korzystając z konsoli.
Przypisywanie znak=liczba.next() jest zbędne, żeby "zjeść znak nowej linii wystarczy samo wywołanie metody, przypisywanie do czegokolwiek nie jest potrzebne.
Nazwy zmiennych rozpoczynamy w ogólności z małych liter.
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
11-05-2013, 06:37 PM (Ten post był ostatnio modyfikowany: 06-11-2014 05:33 PM przez lolo.)
Post: #7
RE: Instrukcje sterujące
Cześć, mam pytanie:
Dlaczego przy podaniu dwóch takich samych liczb wyświetlają mi się dwa komunikaty zamiast tylko pierwszego o ich równości? Przy różnych wartościach działa jak powinno.
Mój kod to:
import java.util.Scanner;

public class Porownanie{
public static void main (String[] args){
Scanner input = new Scanner(System.in);
System.out.println("wpisz liczbe pierwsza");
int liczba1 = input.nextInt();
System.out.println("wpisz druga liczbe");
int liczba2 = input.nextInt();
if(liczba1==liczba2)
System.out.println("liczby sa sobie rowne");
else if(liczba1!=liczba2);
System.out.println("liczby sie roznia"); 

}
}

Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
11-07-2013, 11:11 PM
Post: #8
RE: Instrukcje sterujące
(11-05-2013 06:37 PM)Meliasz napisał(a):  Cześć, mam pytanie:
Dlaczego przy podaniu dwóch takich samych liczb wyświetlają mi się dwa komunikaty zamiast tylko pierwszego o ich równości? Przy różnych wartościach działa jak powinno.
Mój kod to:

import java.util.Scanner;

public class Porownanie{
public static void main (String[] args){
Scanner input = new Scanner(System.in);
System.out.println("wpisz liczbe pierwsza");
int liczba1 = input.nextInt();
System.out.println("wpisz druga liczbe");
int liczba2 = input.nextInt();
if(liczba1==liczba2)
System.out.println("liczby sa sobie rowne");
else if(liczba1!=liczba2);
System.out.println("liczby sie roznia");

}
}

powinno pomóc usunięcie ; na końcu linii
Kod:
else if(liczba1!=liczba2);

GG: 2802571
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
02-22-2014, 05:11 PM (Ten post był ostatnio modyfikowany: 02-22-2014 09:06 PM przez Janosch.)
Post: #9
Zadanie 1.10
A oto moja wersja, która sprawdza imię niezależnie od wielkości liter i zawsze w wyniku podaje imię w formie
Pierwsza litera zawsze duża, reszta mała. Taka zabawa ze stringami.
Kod PHP:
import java.util.Scanner;
public class 
Zadanie_1_10 {
    public static 
void main(String[] args) {
        
Scanner input = new Scanner(System.in);
        
System.out.print("Podaj człeku swe imię: ");
        
String imie input.nextLine();

        if (
imie.equalsIgnoreCase("Paweł")) System.out.println("Cześć Paweł!");
        else if (
imie.equalsIgnoreCase("Ania")) System.out.println("Ale z Ciebie laska Aniu!");
        else 
System.out.println("Przykro mi " imie.substring(01).toUpperCase()+imie.substring(1).toLowerCase() + ", ale nie spotkaliśmy się wcześniej.");
    }

Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
Odpowiedz 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości