Stránka 1 z 1

nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 12 led 2015, 23:01
od kamikatze
Ahoj, Mam problém, když jsem se snažil zabudovat do mého OS (co není OS protože to v Jave neudělam) kalkulačku, nastal problém, když jsem chtěl at to odečítá, nešlo do konzole nic napsat.. Normálně jsem do konzole chtěl něco napsat jenže mi nic nepsalo
Obrázek :
http://postimg.org/image/tmgikvzyl/

Kod :

Kód: Vybrat vše

package nOS;

import java.io.IOException;
import java.util.Scanner;

public class nos {

   public static void main(String[] args) throws RuntimeException, IOException {
      System.out.println("Vítejte v Systému");
      System.out.println("Zadejte, co si přejete :");
      System.out.println("Kalkulacka, Prihlaseni");
      String prikaz;
      Scanner in = new Scanner(System.in);
      prikaz = in.nextLine();
      if(prikaz.equals("Prihlaseni")) {
         String prihlasenijmeno;
         System.out.println("Zadejte prihlasovací jméno");
         Scanner input  = new Scanner(System.in);
         prihlasenijmeno = in.nextLine();
         if(prihlasenijmeno.equals("admin")) {
            System.out.println("Zadejte heslo");
               String heslo;
               Scanner zadanihesla = new Scanner(System.in);
               heslo = in.nextLine();
               if(heslo.equals("774044432")) {
                  System.out.println("Vítejte v Administraci");
               } else {
                  System.out.println("Zadali jste spatné heslo,systém bude ukončen..");
                  System.out.println("Spusťte aplikaci znovu!");
                  System.exit(0);
               }
         } else {
            System.out.println("Spatné prihlasovací jméno");
            System.out.println("System bude ukoncen, spustte aplikaci znovu!");
            System.exit(0);
         }
      }
      if(prikaz.equals("Kalkulacka")) {
         System.out.println("Zadejte 1. číslo");
         int cislo1;
         int cislo2;
         Scanner zadavanicisla1 = new Scanner(System.in);
         cislo1 = in.nextInt();
         System.out.println("Zadejte 2. číslo");
         Scanner zadavanicisla2 = new Scanner(System.in);
         cislo2 = in.nextInt();
         System.out.println("Zadejte akci: Odcitani, Scitani");
         String akce;
         Scanner provedeniakce = new Scanner(System.in);
         akce = in.nextLine();
         if(akce.equals("Odcitani")) {
            System.out.println("Vysledek :" + (a - b));
         }
      }
      if(prikaz.equals(""))
         System.out.println("ERROR");
   }
}

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 13 led 2015, 17:40
od nejento
Jako výsledek, se ti tam má ukázat tohle:

Kód: Vybrat vše

            System.out.println("Vysledek :" + (a - b));

jenomže taková proměnná tam není. Máš tam jenom proměnné:

Kód: Vybrat vše

         int cislo1;
         int cislo2;


Pokud se tedy nemýlím, kód bude vypadat takto:
[code=java file=nOS.java]package nOS;

import java.io.IOException;
import java.util.Scanner;

public class nos {

public static void main(String[] args) throws RuntimeException, IOException {
System.out.println("Vítejte v Systému");
System.out.println("Zadejte, co si přejete :");
System.out.println("Kalkulacka, Prihlaseni");
String prikaz;
Scanner in = new Scanner(System.in);
prikaz = in.nextLine();
if (prikaz.equals("Prihlaseni")) {
String prihlasenijmeno;
System.out.println("Zadejte prihlasovací jméno");
Scanner input = new Scanner(System.in);
prihlasenijmeno = in.nextLine();
if (prihlasenijmeno.equals("admin")) {
System.out.println("Zadejte heslo");
String heslo;
Scanner zadanihesla = new Scanner(System.in);
heslo = in.nextLine();
if(heslo.equals("774044432")) {
System.out.println("Vítejte v Administraci");
} else {
System.out.println("Zadali jste spatné heslo,systém bude ukončen..");
System.out.println("Spusťte aplikaci znovu!");
System.exit(0);
}
} else {
System.out.println("Spatné prihlasovací jméno");
System.out.println("System bude ukoncen, spustte aplikaci znovu!");
System.exit(0);
}
}
if (prikaz.equals("Kalkulacka")) {
System.out.println("Zadejte 1. číslo");
int cislo1;
int cislo2;
Scanner zadavanicisla1 = new Scanner(System.in);
cislo1 = in.nextInt();
System.out.println("Zadejte 2. číslo");
Scanner zadavanicisla2 = new Scanner(System.in);
cislo2 = in.nextInt();
System.out.println("Zadejte akci: Odcitani, Scitani");
String akce;
Scanner provedeniakce = new Scanner(System.in);
akce = in.nextLine();
if (akce.equals("Odcitani")) {
System.out.println("Vysledek :" + (cislo1 - cislo2));
}
}
if (prikaz.equals(""))
System.out.println("ERROR");
}
}[/code]

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 13 led 2015, 21:54
od _fantomas
v javě se nevyznám ale mám pocit že tam máš tucet upozornení že není neco na porádku a to také ve vedlejších projektech tak se ani nečuduju že ti neco nejde (pokud mam ofšem pravdu s tema warningama)

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 13 led 2015, 22:41
od nejento
Ono ty exceptiony v Javě jsou poměrně důležitý.

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 13 led 2015, 22:55
od kamikatze
Tak jo, já nevím..
Zde je vyňatý kod :

Kód: Vybrat vše

   public static void kalkulacka() {
      int cislo1;
      int cislo2;
      System.out.println("Zadejte první číslo");
      Scanner in = new Scanner(System.in);
      cislo1 = in.nextInt();
      System.out.println("Zadejte druhé číslo");
      Scanner inp = new Scanner(System.in);
      cislo2 = inp.nextInt();
      System.out.println("Zadejte akci..");
      System.out.println("Odcitani");
      String akce;
      Scanner zadavaniakce = new Scanner(System.in);
      akce = in.nextLine();
      if(akce.equals("Odcitani")) {
         System.out.println(cislo1 - cislo2);
      }
   }

Stále se mi to zasekne když chci napsat "Odcitani", tak to nejde tudíž tam někde je chyba v tom Scanneru že to nebere uživatelský vstup jenže nevm kde

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 14 led 2015, 05:02
od Hanakocz
Zkus defnovat odčítání jako sčítání čísla a mínus čísla....stále stejná operace ale pro uživatele s tváří jako dvě různý (to samý pro násobení, jen tam se musí dávat pozor na nulu)

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 14 led 2015, 17:30
od kamikatze
Nechápu ?

Re: nOS - Primitiv "Operační systém" - problém s kalkulačkou

Napsal: 14 led 2015, 19:11
od Hanakocz
sčítání:
číslo 2 = číslo 2
výsledek = číslo1 + číslo 2

odčítání
číslo 2 = (-1) * číslo2
výsledek = číslo 1 + číslo 2

Násobení a sčítání to musí umět, odčítání je jen sčítání....
Jen musíš dávat pozor na komutativitu, nejde tu mínus jedničku dát jen tak někam