Advertisement
Guest User

Untitled

a guest
Dec 16th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.36 KB | None | 0 0
  1. import java.util.Random;
  2. import java.util.Scanner;
  3.  
  4. public class ristinolla {
  5. public static void main(long luku) {
  6. String s= Long.toString(luku);
  7. String numerot="0123456789";
  8. boolean b=false;
  9. int temp=0;
  10. for(int i=0; i<s.length(); i++) {
  11. for(int j=0; j<numerot.length(); j++) {
  12. if(s.charAt(i)!=numerot.charAt(j)) {
  13. temp+=1;
  14. }
  15. }
  16. }
  17. if(temp==s.length()-1) {
  18. b=true;
  19. } else {
  20. b=false;
  21. System.out.print("Virheellinen syöte");
  22. }
  23.  
  24. String[][] lauta=null;
  25.  
  26. String a=lueMerkkijono();
  27.  
  28. if(a=="x" || a=="0") {
  29. a=a;
  30. } else {
  31. System.out.println("Virheellinen syöte");
  32. a="x";
  33. }
  34.  
  35. laitaKoordinaatti(a, lauta);
  36.  
  37.  
  38.  
  39. int x=0;
  40. int o=0;
  41.  
  42. if(lauta[0][0]=="x" && lauta[0][1]=="x" && lauta[0][2]=="x") {
  43. x+=1;
  44. }
  45. if(lauta[1][0]=="x" && lauta[1][1]=="x" && lauta[1][2]=="x") {
  46. x+=1;
  47. }
  48. if(lauta[2][0]=="x" && lauta[2][1]=="x" && lauta[2][2]=="x") {
  49. x+=1;
  50. }
  51. if(lauta[0][0]=="x" && lauta[1][0]=="x" && lauta[2][0]=="x") {
  52. x+=1;
  53. }
  54. if(lauta[0][1]=="x" && lauta[1][1]=="x" && lauta[2][1]=="x") {
  55. x+=1;
  56. }
  57. if(lauta[0][2]=="x" && lauta[1][2]=="x" && lauta[2][2]=="x") {
  58. x+=1;
  59. }
  60. if(lauta[0][0]=="x" && lauta[1][1]=="x" && lauta[2][2]=="x") {
  61. x+=1;
  62. }
  63. if(lauta[0][2]=="x" && lauta[1][1]=="x" && lauta[2][0]=="x") {
  64. x+=1;
  65. }
  66.  
  67. //sama nollalle
  68. if(lauta[0][0]=="0" && lauta[0][1]=="0" && lauta[0][2]=="0") {
  69. o+=1;
  70. }
  71. if(lauta[1][0]=="0" && lauta[1][1]=="0" && lauta[1][2]=="0") {
  72. o+=1;
  73. }
  74. if(lauta[2][0]=="0" && lauta[2][1]=="0" && lauta[2][2]=="0") {
  75. o+=1;
  76. }
  77. if(lauta[0][0]=="0" && lauta[1][0]=="0" && lauta[2][0]=="0") {
  78. o+=1;
  79. }
  80. if(lauta[0][1]=="0" && lauta[1][1]=="0" && lauta[2][1]=="0") {
  81. o+=1;
  82. }
  83. if(lauta[0][2]=="0" && lauta[1][2]=="0" && lauta[2][2]=="0") {
  84. o+=1;
  85. }
  86. if(lauta[0][0]=="0" && lauta[1][1]=="0" && lauta[2][2]=="0") {
  87. o+=1;
  88. }
  89. if(lauta[0][2]=="0" && lauta[1][1]=="0" && lauta[2][0]=="0") {
  90. o+=1;
  91. }
  92.  
  93. if(x==o) {
  94. System.out.println("Tasapeli");
  95. } else if (x>o) {
  96. System.out.println("x voitti!");
  97. } else {
  98. System.out.println("o voitti!");
  99. }
  100.  
  101. }
  102.  
  103.  
  104.  
  105.  
  106. public static String[][] laitaKoordinaatti(String a, String[][] lauta) {
  107. while(lauta.length<4 && lauta[1].length<4) {
  108. int koord1=lueKokonaisluku();
  109. int koord2=lueKokonaisluku();
  110. if(koord1>2 || koord2>2) {
  111. System.out.println("Virheellinen koordinaatti");
  112. laitaKoordinaatti(a, lauta);
  113. }
  114. if(lauta[koord1][koord2]==null) {
  115. lauta[koord1][koord2]=a;
  116. if (a=="0") {
  117. a="x";
  118. }else {
  119. a="0";
  120. }
  121. laitaKoordinaatti(a,lauta);
  122. }else {
  123. System.out.println("Ruutu jo käytössä");
  124. laitaKoordinaatti(a, lauta);
  125. }
  126. }
  127. return lauta;
  128. }
  129.  
  130. //etsitään voittajaa TÄMÄ ROSKIKSEEN
  131. /*public static String etsiKolme(String[][] taulu) {
  132. int x=0;
  133. int o=0;
  134.  
  135. if(taulu[0][0]=="x" && taulu[0][1]=="x" && taulu[0][2]=="x") {
  136. x+=1;
  137. }
  138. if(taulu[1][0]=="x" && taulu[1][1]=="x" && taulu[1][2]=="x") {
  139. x+=1;
  140. }
  141. if(taulu[2][0]=="x" && taulu[2][1]=="x" && taulu[2][2]=="x") {
  142. x+=1;
  143. }
  144. if(taulu[0][0]=="x" && taulu[1][0]=="x" && taulu[2][0]=="x") {
  145. x+=1;
  146. }
  147. if(taulu[0][1]=="x" && taulu[1][1]=="x" && taulu[2][1]=="x") {
  148. x+=1;
  149. }
  150. if(taulu[0][2]=="x" && taulu[1][2]=="x" && taulu[2][2]=="x") {
  151. x+=1;
  152. }
  153. if(taulu[0][0]=="x" && taulu[1][1]=="x" && taulu[2][2]=="x") {
  154. x+=1;
  155. }
  156. if(taulu[0][2]=="x" && taulu[1][1]=="x" && taulu[2][0]=="x") {
  157. x+=1;
  158. }
  159.  
  160. //sama nollalle
  161. if(taulu[0][0]=="0" && taulu[0][1]=="0" && taulu[0][2]=="0") {
  162. o+=1;
  163. }
  164. if(taulu[1][0]=="0" && taulu[1][1]=="0" && taulu[1][2]=="0") {
  165. o+=1;
  166. }
  167. if(taulu[2][0]=="0" && taulu[2][1]=="0" && taulu[2][2]=="0") {
  168. o+=1;
  169. }
  170. if(taulu[0][0]=="0" && taulu[1][0]=="0" && taulu[2][0]=="0") {
  171. o+=1;
  172. }
  173. if(taulu[0][1]=="0" && taulu[1][1]=="0" && taulu[2][1]=="0") {
  174. o+=1;
  175. }
  176. if(taulu[0][2]=="0" && taulu[1][2]=="0" && taulu[2][2]=="0") {
  177. o+=1;
  178. }
  179. if(taulu[0][0]=="0" && taulu[1][1]=="0" && taulu[2][2]=="0") {
  180. o+=1;
  181. }
  182. if(taulu[0][2]=="0" && taulu[1][1]=="0" && taulu[2][0]=="0") {
  183. o+=1;
  184. }
  185.  
  186. if(x==o) {
  187. return "Tasapeli";
  188. } else if (x>o) {
  189. return "x";
  190. } else {
  191. return "o";
  192. }
  193.  
  194. }*/
  195.  
  196.  
  197.  
  198. /*
  199. * ViLLE syöttää ohjelmallesi yhden merkkijonon.<br>
  200. * Ristinollapelissä ViLLE syöttää ohjelmallesi jonkin seuraavista arvoista merkkijonona: 0,1,2,3,x
  201. * @return satunnainen merkkijono taulukosta ["0", "1", "2", "3", "x"]
  202. */
  203. public static String lueMerkkijono() {
  204. System.out.println("Odotetaan syötettä:");
  205. return new Scanner(System.in).nextLine();
  206. }
  207.  
  208. /*
  209. * ViLLE syöttää ohjelmallesi yhden kokonaisluvun.<br>
  210. * Ristinollapelissä ViLLE yrittää antaa syötteeksi ohjelmallesi jonkin seuraavista arvoista: 0,1,2,3,x<br>
  211. * @throws Exception poikkeus heitetään, jos ViLLE yrittää rikkoa ohjelmasi syöttämällä numeron sijasta kirjaimen.
  212. * @return satunnainen arvo taulukosta [0, 1, 2, 3]
  213. */
  214. public static int lueKokonaisluku() throws Exception {
  215. System.out.println("Odotetaan syötettä:");
  216. return new Scanner(System.in).nextInt();
  217. }
  218.  
  219. /*
  220. *Toimii kuten Rand#m-luokan nextInt. Palauttaa satunnaisen kokonaisluvun väliltä [0,ylaraja[.<br>
  221. * Yläraja on eksklusiivinen, eli sitä ei koskaan palauteta.
  222. * @param ylaraja eksklusiivinen yläraja satunnaiselle kokonaisluvulle
  223. * @return satunnainen kokonaisluku x: 0 <= x < ylaraja
  224. */
  225. public static int satunnainenKokonaisluku(int ylaraja) {
  226. return r.nextInt(ylaraja);
  227. }
  228.  
  229. /*
  230. * Tulostaa annetun ristinollalaudan.<br>
  231. * @param lauta 3x3 ristinollalauta.
  232. */
  233. public static void tulostaLauta(String[][] lauta) {
  234. if(lauta == null){
  235. System.out.println("Lautaasi ei ole alustettu!");
  236. return;
  237. }
  238. if(lauta.length != 3 || lauta[0].length != 3){
  239. System.out.println("Laudallasi on väärät dimensiot. Pitäisi olla 3x3.");
  240. return;
  241. }
  242.  
  243. System.out.println(lauta[0][0]+"|"+lauta[0][1]+"|"+lauta[0][2]);
  244. System.out.println("-|-|-");
  245. System.out.println(lauta[1][0]+"|"+lauta[1][1]+"|"+lauta[1][2]);
  246. System.out.println("-|-|-");
  247. System.out.println(lauta[2][0]+"|"+lauta[2][1]+"|"+lauta[2][2]);
  248. }
  249.  
  250. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement