Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
Nim_Juego
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Angel Zarate
Nim_Juego
Commits
bf371fd9
Commit
bf371fd9
authored
Apr 23, 2022
by
Angel Zarate
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Juego Nim
parent
7b78833b
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
139 additions
and
0 deletions
+139
-0
nim.java
+139
-0
No files found.
nim.java
0 → 100644
View file @
bf371fd9
package
JUEGOS
;
import
java.util.Scanner
;
import
java.util.Stack
;
public
class
nim
{
int
pilaa
;
int
pila1
;
int
pila2
;
int
turnoJugador
;
int
cantidadFichas
;
public
nim
(){
pilaa
=
3
;
pila1
=
4
;
pila2
=
5
;
turnoJugador
=
1
;
}
public
int
getTurnoJugador
(){
return
turnoJugador
;
}
public
void
setTurnoJugador
(
int
valor
){
turnoJugador
=
valor
;
}
public
int
getPila
(
String
pila
){
int
devuelve
=
0
;
switch
(
pila
)
{
case
"A"
:
devuelve
=
pilaa
;
break
;
case
"B"
:
devuelve
=
pila1
;
break
;
case
"C"
:
devuelve
=
pila2
;
break
;
default
:
devuelve
=
0
;
break
;
}
return
devuelve
;
}
//Remueve las fichas de las pilas
public
void
quitarFichas
(
String
pile
,
int
number
){
switch
(
pile
)
{
case
"A"
:
pilaa
=
pilaa
-
number
;
break
;
case
"B"
:
pila2
=
pila1
-
number
;
break
;
case
"C"
:
pila2
=
pila2
-
number
;
break
;
default
:
break
;
}
}
//Controla si sobran fichas para continuar con la partida
public
boolean
controlPartida
(){
int
contador
=
0
;
if
(
pilaa
>
0
||
pila1
>
0
||
pila2
>
0
)
{
return
true
;
}
else
{
return
false
;
}
}
//Se muestra el tablero en pantalla
public
void
mostrarTablero
(){
System
.
out
.
println
(
"A: "
+
pilaa
+
" B: "
+
pila1
+
" C: "
+
pila2
);
}
//Se cambia de turno en la jugada
public
void
cambioDeTurnos
()
{
if
(
getTurnoJugador
()
==
1
)
{
setTurnoJugador
(
2
);
}
else
{
setTurnoJugador
(
1
);
}
}
public
static
void
main
(
String
[]
args
)
{
Scanner
teclado
=
new
Scanner
(
System
.
in
);
System
.
out
.
println
(
"jugador 1,ingrese su nombre"
);
String
turnoJugador
=
teclado
.
next
();
System
.
out
.
println
(
"jugador 2,ingrese su nombre"
);
String
turnoJugador1
=
teclado
.
next
();
String
lector
=
""
;
int
fichas
=
0
;
boolean
check
=
false
;
nim
partida
=
new
nim
();
Scanner
in
=
new
Scanner
(
System
.
in
);
//Se muestra el tablero
partida
.
mostrarTablero
();
while
(
partida
.
controlPartida
())
{
System
.
out
.
println
(
"Turno jugador"
+
partida
.
getTurnoJugador
()
+
" :"
);
//El jugador elige la columna(Se previene el ingreso de datos invalidos)
while
(!
check
){
System
.
out
.
print
(
"Elija una pila"
);
lector
=
System
.
console
().
readLine
();
lector
=
lector
.
toUpperCase
();
if
((
lector
.
equals
(
"A"
)
||
lector
.
equals
(
"B"
)
||
lector
.
equals
(
"C"
))
&&
partida
.
getPila
(
lector
)
>
0
){
check
=
true
;
}
else
{
System
.
out
.
println
(
"Columna invalida, por favor intente de nuevo"
);
check
=
false
;
}
}
//El jugador elige la cantidad de fichas a retirar de la columna seleccionada(Se previene el ingreso de datos invalidos)
while
(
check
){
System
.
out
.
print
(
"Elija la cantidad de fichas a mover: "
);
fichas
=
Integer
.
parseInt
(
System
.
console
().
readLine
());
if
(
fichas
>
partida
.
getPila
(
lector
)){
System
.
out
.
println
(
"Cantidad invalida, por favor intente de nuevo"
);
check
=
true
;
}
else
{
check
=
false
;
};
}
partida
.
quitarFichas
(
lector
,
fichas
);
partida
.
mostrarTablero
();
partida
.
controlPartida
();
partida
.
cambioDeTurnos
();
}
System
.
out
.
println
(
"Fin de la partida"
);
System
.
out
.
println
(
"Gana = jugador"
+
partida
.
getTurnoJugador
());
partida
.
cambioDeTurnos
();
System
.
out
.
println
(
"Pierde = Jugador"
+
partida
.
getTurnoJugador
());
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment