Šibenice
viz základy jazyka Java moje řešení
java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package pkg16_09_19_sibenice_v2;
import java.util.Scanner;
/**
*
* @author jeronym
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
//VŠEOBECNÉ PROMĚNNÉ
String novahra = "ANO";
Scanner sc = new Scanner(System.in);
String[] databaze = {"ITNETWORK", "JAVA", "ŠIBENICE"};
//CYKLUS NOVÉ HRY
while (novahra.equals("ANO")) {
int trest = 0;
String kontrola = "";
//NÁHODNÝ VÝBĚR
int nahoda = (int) (Math.random()*databaze.length);
int pocetZnaku = databaze[nahoda].length();
String []cenzura = new String[pocetZnaku]; //počet znaků cenzury
for (int i = 0; i < pocetZnaku; i++)
cenzura[i]="_";
String[] slovo = databaze[nahoda].split(""); //rozpísmenkování slova z databáze
int[] index = new int[pocetZnaku];
String zadani = "";
//KONEC CYKLU NOVÉ HRY
novahra = "";
String hra = "ANO";
//CYKLUS HRY OBECNĚ
while (hra.equals("ANO")) {
// POSTAVIČKA
switch (trest) {
case 7:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| x\n"
+ "| /|\\ \n"
+ "| \\\\ \n"
+ "|\n");
//UKONČENÍ CYKLU Z DŮVODU PROHRY
hra = "";
System.out.println("TYS HO ZABIL(A)!!!\n"
+ "pokračuj libovolnou klávesou");
break;
case 6:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| o\n"
+ "| /|\\ \n"
+ "| \\ \n"
+ "|\n");
break;
case 5:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| o\n"
+ "| /|\\ \n"
+ "| \n"
+ "|\n");
break;
case 4:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| o\n"
+ "| |\\ \n"
+ "| \n"
+ "|\n");
break;
case 3:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| o\n"
+ "| | \n"
+ "| \n"
+ "|\n");
break;
case 2:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| o\n"
+ "| \n"
+ "| \n"
+ "|\n");
break;
case 1:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| |\n"
+ "| \n"
+ "| \n"
+ "| \n"
+ "|\n");
break;
case 0:
System.out.println("\n======ŠIBENICE======(RD)"
+ "\n________\n"
+ "| \n"
+ "| \n"
+ "| \n"
+ "| \n"
+ "|\n");
break;
}
//VYPSÁNÍ CENZURY POPRVÉ
for (int j = 0; j < pocetZnaku; j++) {
System.out.printf("%s ", cenzura[j]);
}
//ŽÁDOST VSTUPU
if (trest != 7) { //NESMÍ BÝT TREST = 7
System.out.println("\nZadej písmeno a stiskni [ENTER]:");
zadani = sc.nextLine().toUpperCase().trim();
}
//ZADÁNO ŠPATNĚ
if (zadani.length()!= 1 && zadani.length()!=0) {
System.out.println("Chybné zadání!!! Zadej znovu:");
}
//ZADÁNO SPRÁVNĚ
else {
boolean a = databaze[nahoda].contains(zadani); //rozhodne zda databáze obsahuje zadané písmeno
if (a == true) { //OBSAHUJE
for ( int i = 0; i < pocetZnaku; i++) {
if (zadani.contains(slovo[i])) {
index[i] = i;
//VYPSÁNÍ CENZURY
for (int j = 0; j < pocetZnaku; j++) {
cenzura[index[i]] = slovo[index[i]];
System.out.printf("%s ", cenzura[j]);
}
}
}
}
//NEOBSAHUJE
else {
trest = trest + 1;
}
}
//PODMÍNKA VÝHRY
for (String s : cenzura)
kontrola = kontrola + s;
if (kontrola.contains(databaze[nahoda])) {
System.out.println("\n\n\nJOOOO\n\n \\o/\n |\n /\\");
System.out.println("\nTys to dokázal(a)!!!\n");
hra = "";
}
}
//OPAKOVÁNÍ CELÉHO CYKLU
System.out.println("\nChceš dát novou hru? ANO / NE");
novahra = sc.nextLine().trim().toUpperCase();
}
}
}
Neformátovaný
Přidáno: 19.9.2016
Expirace: Neuvedeno