Wisielec.java

Poniższe materiały zostały tu kiedyś umieszczone na potrzeby mojej grupy ze studiów. Na 99,9% nie posiadam żadnych dodatkowych materiałów związanych z tym tematem ani nie gwarantuję 100% poprawności.

import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Random;


class Wisielec{

  static BufferedReader strumien = new BufferedReader(new InputStreamReader(System.in));
  
  
  static char pobierzlitere() 
  {
    String s=new String();  // zmienna s bedzie litera pobierana od usera
    int blad=0;             // przyda sie do sprawdzania bledow. olac wyjatki
                            // stare sprawdzone metody sa najlepsze.
    
          
    try{
       // popros usera o litere
       System.out.print("Podaj litere: ");      
       
       s=strumien.readLine(); // 
    }
    // zlap wyjatek. Cokolwiek sie stanie, stwierdz, ze byl blad podczas odczytywania litery (oficjalna wersja)
    // oraz przypisz do zmiennej blad=1 (sprawdzony sposob sprawdzania bledow).
    catch(IOException e){ System.out.println("B??d podczas pobierania litery"); blad=1; }  
    
    if(blad==1) // jesli juz wystapil jakis blad wczesniej...
    {
       return 0; //..to zwroc wartosc 0 i nie rob nic dalej. 
    } 
    else // jesli nie bylo bledu, to lecimy dalej.
    { 
      if(s.length()>1 || s.length()==0) // je?li user wklepa? wi?cej ni? jeden znak
      {  
        System.out.println("Mia?e? poda? JEDN? liter?. Nie mniej, nie wiecej. JEDNA. Are you stupid or something?");
        return 0;   // znowu przypiszmy blad=1 - bedziemy wiedzieli, ze szkodnik popelnil jakis blad.  
      
      } 
      else
      { // uda?o si? userowi wpisa? jedne znak. 
         
         char litera[]=s.toCharArray();  // zamie?my w ko?cu tego stringa na chara
        
         if(Character.isLetter(litera[0])){ // czy ten znak wprowadzony przez usera na pewno jest litera?
           return litera[0]; // tak! tak! uda?o si?! Zwr?my w ko?cu ten znak do g?wnego programu.
         }
         else // nie, sierotka wpisa?a jak?? cyfr?, kropk? czy co? innego. Napiszmy mu, ?e jest g?upi.
         {
            System.out.println("Mia?e? poda? LITER?. Nie cyfr?, nie inny znak. LITER?. Are you stupid or something?");
            return 0;
         }
      }
    }
  }
  
   public static void main(String args[]) throws IOException
   {
     Random generator = new Random(); // inicjalizacja generatora - mo?na zast?pi? Math.random()
     // tablica z naszymi s?owami do zgadywania. Skoro mamy 10 prb, to wypada?oby, ?eby s?owa by?y krtsze ni? 10 liter.
     String slowa[]={"java","jest","glupia"};
     
     int los=generator.nextInt(slowa.length); // losujemy slowko z naszej tablicy
     char litery[]=slowa[los].toCharArray(); // zamieniamy wylosowane slowo na tablice znakow
     char litery2[] = new char[litery.length]; // robimy druga tablice, gdzie bedziemy wpisywa? podawane przez usera literki
     int zgadl=0; // przyda si? p?niej
     
     System.out.println("Szukasz s?owa na "+litery.length+" liter.");
     
     
     for(int i=1;i<=10;i++)
     {
     
       System.out.println("Prba numer "+i);
       char litera = pobierzlitere(); // ka?emy userowi poda? jaki? znak.
       
       // pobierzlitere() zwraca "0" je?li user pope?ni? jaki? b??d. 
       // Sprawd?my, czy uda?o mu si? poprawnie poda? liter?, czy sierota co? skopa?a
       if(litera==0)              
       { 
         // B??d. Strata szansy. Sorry
         System.out.println("Poda?e? niew?a?ciwy znak zamiast litery, strata szansy Winnetou"); 
         System.out.println();
       }
       else
       { // Uda?o mu si? poda? prawid?ow? literk?. Super.
         
         int trafil=0; // zmienna pomocnicza. Tu bedziemy liczyc, czy trafil literke
         
         for(int j=0;j0)
         {
          System.out.println("Uda?o Ci si? Winnetou, trafi?e?."); 
         } 
         else
         {
          System.out.println("Nie uda?o Ci si? Winnetou, sorry.");  
         }
         
         
         // litery.equals(litery2) za choler? nie chce dzia?a?... trudno, zrobimy to po swojemu
         int bingo=0;
         
         for(int j=0;j					

Najnowsze posty:


Najnowsze komentarze:

  • koko: Czesc wszystkim, a ja mam pytanie, mieszkam w uk i zalozylem pay pala,2 dni temu dokonalem tranzakcji i...
  • Meh: Witam, Patrz?c na recenzje w Amazon UK, ta nawigacja jest cieniutka. Jak jest z gubieniem sygna?u GPS? Bo na to...
  • janusz walecki: Kupi?em Router Netgear N600 WNDR3700v2 w celu wykonania domowej sieci Wi-fi. Obecnie korzystam z...
  • Andoru: Obecnie jak w??cz? gre online Nostale na tym netbooku to bardzo laguje mi j?, rwnie? flash player cz?sto si? za...
  • Andoru: Jestem posiadaczem tego netbooka. Bateria odstaj?ca mo?e i poprawia jako?? pisania, ale takie zamocowanie jej...
  • Robisz zakupy w internecie?
    Pomagaj ZA DARMO przy okazji
    4000 organizacji społecznych i ponad 900 sklepów