en ocaciones cuando escuchamos términos nuevos en programación nos asustamos y nos bloqueamos , hoy les daré una pequeña explicación de lo que es recursividad sin tanto tecnicismo .
una función re cursiva se refiere a que se método se llama a si mismo de forma recurrente para resolver un problema .
por ejemplo si queremos que un numero se sume 0 a 10 muchos podrian decir que nada mas se hace un ciclo (for), sin embargo se puede hacer tambien de forma recursiva o sea el metodo se ejecuta recurrente mente hasta que se realiza lo solicitado.
retomando el ejemplo , necesitamos que un numero se sume 10 veces osea que comience de 0 hasta 10 , vamos a hacerlo de forma re cursiva.
el codigo aqui expuesto es propio y no repost
para esto necesitamos dos parámetros un indice y un limite
public void ImprimirNumero(int Indice, int Limite)
{
if (Indice > Limite)
return;
Console.WriteLine(Indice);
Indice++;
ImprimirNumero(Indice, Limite);// aqui se hace de forma recursiva el metodo se llama a si mismo
}
public void ImprimirNumeroDesc(int Indice, int Limite)
{
if (Indice > Limite)
return;
int IndiceAImprimir;
IndiceAImprimir = Indice;
Indice++;
ImprimirNumeroDesc(Indice, Limite);// aqui se hace de forma recursiva el metodo se llama a si mismo
Console.WriteLine(IndiceAImprimir);
}
no olvides comentar para mejorar XD...
miércoles, 5 de marzo de 2014
Ahoracdo en java
hola programadores jaja ha pasado que cunado estamos comenzando a programar nuestro profesores nos ponen a sufrir dándonos asignaciones como el ahorcado y aquí les doy una ayuda par que se orienten un poco es bueno que hagamos el esfuerzo primero y que entendamos lo que estamos haciendo.
este código de ahorcado es en java pero en C# también les puede servir solo cambiar pequeñas cosas como por ejemplo las impresiones que en java son System.out.println();
nota : el Main.
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
static String respuesta;
public static void ahorcado (String[] P_palabra) {
System.out.println("Nombre del jugador");
String nombre;
nombre = System.console().readLine();
System.out.println("Bienvenido"+nombre);
System.out.println();
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
int aleatorio;
aleatorio=(int)(Math.random()*10); //el random que necesito para que asigne la palabra aleatoriamente
System.out.println("Digite la letra");
char deletreo[]= new char [P_palabra[aleatorio].length()];
for(int x=0;x<P_palabra[aleatorio].length();x++){
deletreo[x]='_';
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////
for(int x=0; x<P_palabra[aleatorio].length(); x++){ //para imprimir
System.out.print(deletreo[x]+" ");
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////
int cont=10;
int cont2=0;//esto sirve para el contador incia en 0
int salir=0;// salir
while(cont>=1){
Scanner teclado= new Scanner(System.in);
respuesta=teclado.next();
for(int x=0; x<P_palabra[aleatorio].length(); x++){//verifica si la letra ingresada existe.
if(respuesta.charAt(0)==P_palabra[aleatorio].charAt(x)){
deletreo[x]=P_palabra[aleatorio].charAt(x);
cont2++;
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////
System.out.println("");
if(cont2<1){
cont--;//decrementa
System.out.println("");
System.out.println("Le quedan "+cont+" intentos");//muestra los intentos que faltan
System.out.println("");
cont2=0;
}
else{
System.out.println("La letra existe ");
System.out.println("Ahora ingrese una nueva ");
cont2=0;
}
for(int i=0; i<P_palabra[aleatorio].length(); i++){
System.out.print(deletreo[i]+" ");
}
for(int i=0; i<P_palabra[aleatorio].length(); i++){ //verifica si estan las letras de las palabras para saber si gano o perdio
if(P_palabra[aleatorio].charAt(i)==deletreo[i]){
salir++; // exite todas las letras en las palabras
}
else{
salir=0;
}
if(salir==P_palabra[aleatorio].length())//al ser salir = a la palabra aleatoria imprimira que a ganado
{
System.out.println("");
System.out.println("*******************************");
System.out.println("Usted ha Ganado ");
System.out.println("*******************************");
}
}
}
if(salir<P_palabra[aleatorio].length()){
}
System.out.println("");
System.out.println("*******************************");
System.out.println("Usted ha perdido ");
System.out.println("*******************************");
}
public static void main(String[] args) {
// TODO code application logic here
System.out.println("*******************************");
System.out.println("");
System.out.println("juego de ahorcado");
System.out.println("*******************************");
String [] palabras={"amor","bebe","okey","vida","odio","coma","Espiritu","mama","papa","tata","Dios","hijo","fantasma","bueno","misericordia" };
String salir = "";
System.out.println("selecciones la opcion");
do{
System.out.println("");
System.out.println("*******************************");
System.out.println("1 Empezar a jugar");
System.out.println("s salir");
System.out.println("*******************************");
salir= System.console().readLine();
if (salir.equalsIgnoreCase("1")){
ahorcado(palabras);
}
}while(!salir.equalsIgnoreCase("s"));
System.out.println("gracias por jugar");
}
}
no olvides comentar para mejorar XD...
este código de ahorcado es en java pero en C# también les puede servir solo cambiar pequeñas cosas como por ejemplo las impresiones que en java son System.out.println();
nota : el Main.
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
static String respuesta;
public static void ahorcado (String[] P_palabra) {
System.out.println("Nombre del jugador");
String nombre;
nombre = System.console().readLine();
System.out.println("Bienvenido"+nombre);
System.out.println();
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
int aleatorio;
aleatorio=(int)(Math.random()*10); //el random que necesito para que asigne la palabra aleatoriamente
System.out.println("Digite la letra");
char deletreo[]= new char [P_palabra[aleatorio].length()];
for(int x=0;x<P_palabra[aleatorio].length();x++){
deletreo[x]='_';
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////
for(int x=0; x<P_palabra[aleatorio].length(); x++){ //para imprimir
System.out.print(deletreo[x]+" ");
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////
int cont=10;
int cont2=0;//esto sirve para el contador incia en 0
int salir=0;// salir
while(cont>=1){
Scanner teclado= new Scanner(System.in);
respuesta=teclado.next();
for(int x=0; x<P_palabra[aleatorio].length(); x++){//verifica si la letra ingresada existe.
if(respuesta.charAt(0)==P_palabra[aleatorio].charAt(x)){
deletreo[x]=P_palabra[aleatorio].charAt(x);
cont2++;
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////
System.out.println("");
if(cont2<1){
cont--;//decrementa
System.out.println("");
System.out.println("Le quedan "+cont+" intentos");//muestra los intentos que faltan
System.out.println("");
cont2=0;
}
else{
System.out.println("La letra existe ");
System.out.println("Ahora ingrese una nueva ");
cont2=0;
}
for(int i=0; i<P_palabra[aleatorio].length(); i++){
System.out.print(deletreo[i]+" ");
}
for(int i=0; i<P_palabra[aleatorio].length(); i++){ //verifica si estan las letras de las palabras para saber si gano o perdio
if(P_palabra[aleatorio].charAt(i)==deletreo[i]){
salir++; // exite todas las letras en las palabras
}
else{
salir=0;
}
if(salir==P_palabra[aleatorio].length())//al ser salir = a la palabra aleatoria imprimira que a ganado
{
System.out.println("");
System.out.println("*******************************");
System.out.println("Usted ha Ganado ");
System.out.println("*******************************");
}
}
}
if(salir<P_palabra[aleatorio].length()){
}
System.out.println("");
System.out.println("*******************************");
System.out.println("Usted ha perdido ");
System.out.println("*******************************");
}
public static void main(String[] args) {
// TODO code application logic here
System.out.println("*******************************");
System.out.println("");
System.out.println("juego de ahorcado");
System.out.println("*******************************");
String [] palabras={"amor","bebe","okey","vida","odio","coma","Espiritu","mama","papa","tata","Dios","hijo","fantasma","bueno","misericordia" };
String salir = "";
System.out.println("selecciones la opcion");
do{
System.out.println("");
System.out.println("*******************************");
System.out.println("1 Empezar a jugar");
System.out.println("s salir");
System.out.println("*******************************");
salir= System.console().readLine();
if (salir.equalsIgnoreCase("1")){
ahorcado(palabras);
}
}while(!salir.equalsIgnoreCase("s"));
System.out.println("gracias por jugar");
}
}
no olvides comentar para mejorar XD...
Suscribirse a:
Entradas (Atom)