J

josemal37

Usuario (Bolivia)

Primer post: 15 mar 2011Último post: 16 nov 2011
2
Posts
42
Puntos totales
25
Comentarios
B
buscaminas
Ciencia EducacionporAnónimo11/16/2011

Buscaminas [recursividad][java]hola a todos!!!!!!!!Bueno aca otro programa hecho en java y al puro estilo recursivook les cuento la historia... lo que pasa es que me en mis clases nos dieron un proyecto para el primer parcial... y si... era hacer un buscaminas con recursividadlas condiciones: prohibido for... prohibido while... cualquier otro itinerador (ustedes saben lo que hace que se repita una instruccion varias veces) hacer que corra en linea de comandosaca el codigo del buscaminas import java.util.Scanner;public class buscaminas{    Scanner scan=new Scanner(System.in);    public static void main(String arg[]){        //esta parte del codigo se encarga de crear los objetos necesarios para ejecutar el programa        Scanner scan=new Scanner(System.in);        int filas;        int columnas;        int numMinas;        int contador;        int c=0;        espacio[][] buscaminas;        System.out.println("n"+"n"+"Buscaminas"+"n"+"n");        System.out.print("Ingrese el numero de filas(5-50): ");        filas=scan.nextInt();        if(filas<5||filas>50){            filas=10;            c=1;        }        System.out.print("Ingrese el numero de columnas(5-50): ");        columnas=scan.nextInt();        if(columnas<5||columnas>50){            columnas=10;            c++;            if (c==2){                System.out.println("n"+"Coordenadas fuera de rango tamaño predeterminado 10X10"+"n");            }        }        numMinas=filas+columnas;        contador=(filas*columnas)-(numMinas);        System.out.println("n"+"El numero de minas es: "+numMinas+"n");        System.out.println("n"+"A jugar!!!"+"n");        buscaminas=new espacio[columnas][filas];        buscaminas=new buscaminas().llenarTablero(buscaminas,0,0,columnas,filas);        buscaminas=new buscaminas().colocarMinas(buscaminas,numMinas,columnas,filas);        buscaminas=new buscaminas().minasAlrededor(buscaminas,0,0,columnas,filas);        buscaminas=new buscaminas().juego(buscaminas,columnas,filas,contador);    }    public espacio[][] llenarTablero(espacio[][] buscaminas,int i,int j,int c,int f){        //esta parte del codigo se encarga de llenar el tablero de las minas con espacios vacios        // diciendolo un poco mas tecnico se encarga de asignar memoria para el buscaminas... creo...        if(j<f){            if(i<c){                buscaminas[i][j]=new espacio();                buscaminas=llenarTablero(buscaminas,++i,j,c,f);            }            else{                i=0;                buscaminas=llenarTablero(buscaminas,i,++j,c,f);            }        }        return buscaminas;    }    public espacio[][] colocarMinas(espacio[][] buscaminas,int n,int c,int f){        //esta parte se encarga de colocar las minas en el buscaminas        int azar1=(int)(Math.random()*(c-1));        int azar2=(int)(Math.random()*(f-1));        if(n>0){            if(buscaminas[azar1][azar2].verMina()==false){                buscaminas[azar1][azar2].colocarMina();                n--;            }            buscaminas=colocarMinas(buscaminas,n,c,f);        }        return buscaminas;    }    public espacio[][] minasAlrededor(espacio[][] buscaminas,int i,int j,int c,int f){        //esta parte fue la que mas me costo jajaja        //se encarga de averiguar cuantas minas alrededor tiene un espacio en el buscaminas        if(j<f){            if(i<c){                if(buscaminas[i][j].verMina()==true){                    if(i>0){                        buscaminas[i-1][j].aumentarMinas();                        if(j>0){                            buscaminas[i-1][j-1].aumentarMinas();                        }                        if(j<f-1){                            buscaminas[i-1][j+1].aumentarMinas();                        }                    }                    if(i<c-1){                        buscaminas[i+1][j].aumentarMinas();                        if(j>0){                            buscaminas[i+1][j-1].aumentarMinas();                        }                        if(j<f-1){                            buscaminas[i+1][j+1].aumentarMinas();                        }                    }                    if(j>0){                        buscaminas[i][j-1].aumentarMinas();                    }                    if(j<f-1){                        buscaminas[i][j+1].aumentarMinas();                    }                }                buscaminas=minasAlrededor(buscaminas,++i,j,c,f);            }            else{                i=0;                buscaminas=minasAlrededor(buscaminas,i,++j,c,f);            }        }        return buscaminas;    }    public void imprimir(espacio[][] buscaminas,int i,int j,int c,int f){        //su nombre lo dice todo...imprime en pantalla el tablero del buscaminas        if(j<f){            if(i<c){                System.out.print(buscaminas[i][j]+" ");                imprimir(buscaminas,++i,j,c,f);            }            else{                i=0;                System.out.println("");                imprimir(buscaminas,i,++j,c,f);            }        }    }    public espacio[][] juego(espacio[][] buscaminas,int columnas,int filas,int contador){        //esta parte se encarga de hacer que el usuario juegue con el buscaminas        //(como tiene que ser recursivo y eso... es mejor tener un metodo aparte jejeje)        imprimir(buscaminas,0,0,columnas,filas);        System.out.println("n"+"Ingrese el numero de fila y columna que desea explorar"+"n");        System.out.print("Ingrese el numero de la fila: ");        int f=scan.nextInt();        System.out.print("Ingrese el numero de la columna: ");        int c=scan.nextInt();        System.out.print("n"+"n");        if(f<=filas&&c<=columnas){            if(buscaminas[c-1][f-1].verRevelado()==false){                buscaminas[c-1][f-1].cambiarEstado();                contador--;            }            if(contador==0){                System.out.println("n"+"n"+"GANASTE!!!"+"n"+"n"+"FELICIDADES!!!");            }            else{                if(buscaminas[c-1][f-1].verMina()==true){                    imprimir(buscaminas,0,0,columnas,filas);                    System.out.println("n"+"n"+"BOOOOOOOOM!!!!!"+"n"+"n"+"perdiste el juego!!!");                }                else{                    juego(buscaminas,columnas,filas,contador);                }            }        }        else{            juego(buscaminas,columnas,filas,contador);        }        return buscaminas;    }} bueno lo que falta es el espacio osea el cuadradito donde aparecen los numeros o las minas jeje public class espacio{    //esta clase se encarga de hacer de cuadradito en el buscaminas(tu sabes donde    //le das click y booooooooooooooooooooom jajaja)    private int minasAlrededor;    private boolean esMina;    private boolean revelado;    public espacio(){        //el constructor del espacio        minasAlrededor=0;        esMina=false;    }    public void colocarMina(){        //se encarga de decir a un espacio si es mina o no...        esMina=true;    }    public void aumentarMinas(){        //se encarga de aumentar el munero deminas alrededor de este espacio        if(esMina==false){            minasAlrededor++;        }    }    public boolean verMina(){        //te dice si el espacio es una mina o no...        return esMina;    }    public boolean verRevelado(){        //te dice si ya visitaste este espacio mientras estas jugando(en si el programa        //no te dice nada pero para saber si uno gano si sirve este proceso...        return revelado;    }    public void cambiarEstado(){        //una vez que visites un espacio este cambia su estado a revelado...        revelado=true;    }    public String toString(){        //ya saben cualquier toString imprime en pantalla cuando le dices System.out.println        String res="*";        if(revelado==true){            res=""+minasAlrededor;        }        if(esMina==true&&revelado==true)        res="X";        return res;    }} cualquier duda, sugerencia, amenaza, o cualquier otra cosa... comenten... o el pato muere... na... a quien quiero engañar no hay pato... jajaja

36
15
P
problema con el disco duro y pantalla negra al inicio
Hazlo Tu MismoporAnónimo3/15/2011

pantalla negra al inicio no entra al bios ni F2 F11 F8 no sabes que hacer la solucion esta aqui (o por lo menos a mi me funciono) muy bien lo que sucede es lo siguiente: uno de esos dias en los que experimentaba con mi compu le decidi actualizarla a windows 7 un tiempo me fue bien pero y no se por que lo hice pero decidi volver a instalarlo (el windows 7)lo deje que se instale y cuando volvi a ver que este acabado vi esa pantalla negra donde te salen las letras blancas que te dicen los el tipo de procesador la memoria ram etc. y no pasaba de ahi por mas que lo reinicie ni F2 F11 F8 nada entonces como me daba flojera llevarlo a un tecnico decidi revisarla yo. busque en internet y probe reiniciar el bios, dejarlo sin pila un tiempo y todo lo que encontre en internet pero nada seguia en la pantalla negra para los que les da flojera leer mi historia aqui la solucion lo que descubri fue que el disco duro era el del problema cuando estaba sin disco duro se podia utilizar F2 etc. entonces deje abierto el case o creo que asi se llama y prendi la compu con el disco sin conectar despues use el F11 para utilizar un instalador de windows xp y cuando estaba cargando los archivos del instalador conecte el disco duro (si asi funcionando el cpu) y magia lo reconocio entonces lo formatee (todo) y ahora estoy con mi disco duro y mi compu con windows 7 como si no ubiera pasado nada talvez se ubiera quemado el disco o la tarjeta madre pero todo salio bien (pero no te lo garantizo ojo) por que hay que compartir lo que uno conoce a y es mi primer post sean piadosos

6
16
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.