Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Sr_Malweriks

#1
Joder, pues es verdad, no había caido en eso....madre mia que empanao soy, gracias :D




Cita de: ivancea96 en  5 Enero 2016, 21:56 PM
Siendo así:
if(rand()%100 < prob)
    ale = 2;
else
    ale = 4;


Por cierto, no sería <= prob ?
#2
Cita de: MAFUS en  5 Enero 2016, 02:27 AM
Entiendo que, en un tablero quieres llenar las casillas vacías aleatoriamente con números aleatorios y quieres forzar la probabilidad de que salga un número concreto.
Exacto, la idea es, teniendo un tablero (vacio), se vayan rellenando las casillas (de forma aleatoria), es decir, perimero casilla (3,3), luego (2,1) (POR EJEMPLO), siempre y cuando esté vacía.

Ese valor que se quiere introducir en la casilla tiene que ser 2 o 4 (es decir, dos valores aleatorios) pero tambien se debe de incluir un numero que hace referencia al procentaje de posibilidad de que salga el 2. Me explico:

- Si pongo 50 (será un 50%) es decir, la probabilidad de que se ponga un 2 o un 4 es igual.
- Si pongo un 25 (será un 25%) es decir, la probabilidad de que salga un 2 será menor de que salga un 4.
- Si pongo un 80 (será un 80%) es decir, la probabilidad de que salga un 2 será mucho mayor de que salga el 4.

En conclusión, cuando ejecute el modulo, añadirá un 2 o un 4 (dependiendo del parámetro de probabilidad) dentro de una casilla aleatoria del tablero.
#3
Saludos!, terminando un proyecto en mente que llevo trabajando desde hace mucho tiempo, se me ocurrió la idea de realizar un módulo en el que escriba, dentro de una matriz (una casilla que no esté ocupada y aleatoria), un numero aleatorio ( 2 o 4) con una probabilidad de que salga el 2 en otro parámetro, no sé si me he explicado bien xD.

De momento llevo escrito esto:
Código (cpp) [Seleccionar]


void poner_valor_aleatorio(tablero &t, int prob){
//VARIABLES
int ale;
srand(time(NULL)); //cambiamos el valor de la semilla

        //Condición para que salga 2 o 4 (inicialmente con un 50 %):
ale = rand()%2;
if (ale == 0)
ale = 2;
if (ale == 1)
ale = 4;

    //TO DO
// Para hacer referencia a una casilla se utiliza t.matriz[fila][columna]
    // generar la probabilidad (de que salga el 2) introducido como parametro y
// colocar ese numero en una casilla vacia aleatoria del tablero.
// Tengo dos modulos creados:
/*
* casilla_vacia(tablero &t, int fila, int columna)  Devuelve false si está llena true si no.
* poner_valor(tablero &t, int fila, int columna, int valor) Coloca el valor en esa casilla.
*
*
*/





}





La parte // TO DO es la que no consigo sacarlo, he pensado mil formas y no soy capaz....
¿Alguien puede echarme una manita? :D
#4
Genial!, lo probé y me funcionó correctamente :D

Gracias crack!
#5
Programación General / Re: Bucles infinitos.
3 Enero 2016, 22:13 PM
Y que con el while puedes definir varias condiciones para realizar el bucle, en el for tendrias que incluir dentro un IF
#6
Programación C/C++ / Re: Duda sobre vectores!
29 Diciembre 2015, 12:22 PM
Me está costando entender tu código....

¿Podrías hacer una adaptación a este ejemplo?

vector = (2,2,4,0) y lo queremos sumar hacia la izquierda, quedando así:  vector = (4,4,0,0).

No encuentro la forma de verlo... :S
#7
Programación C/C++ / Re: videoclub
28 Diciembre 2015, 01:03 AM
Saludos!,

Por lo que enuncias en tu tema, el ejercicio es un TAD, es decir, un tipo abstracto de datos, donde las funciones que nombras, son las tipicas usadas para los TAD`s.
Te aconsejo que busques informacion con estas palabras claves "TAD en C++"" y seguro que en los 2 primeros enlaces encuentras la información que necesitas.
#8
Programación C/C++ / Re: Duda sobre vectores!
28 Diciembre 2015, 00:52 AM
Perfecto gracias!, mañana lo probaré a ver que tal...:D:D:D:D:D
#9
Programación C/C++ / Duda sobre vectores!
24 Diciembre 2015, 09:30 AM
Saludos!,

Llevo un par de semanas realizando el famoso juego 2048 para PC, la verdad es que me está gustando mucho e incluso voy avanzando rápido, pero me he quedado atascado en un punto y tengo algunas dudas para realizar dicho proceso:

Al mover los números del tablero hacia una dirección, se mueven todos juntos "concatenándose" y sumando los que tengan el mismo valor y estén pegados, he aquí mi duda.

He pensado que podría copiar cada fila o columna (dependiendo si se ordenan de arriba a abajo o de izquierda a derecha) en un vector de ocupación variable auxiliar, y luego volviendo a copiar esa información a la fila/columna del tablero, el problema es que no se me ocurre como realizar el algoritmo para sumar los iguales, siempre me acaba dando algún error a pesar de haber escrito decenas de tipos.

¿Alguien podía echarme una mano mediante un pseudocódigo o algunas pautas iniciales para su realización, o si se le ocurre otro método?.

GRACIAS! :D
#10
Hacking / Re: ayuda con pc hackeado
10 Agosto 2015, 15:00 PM
Si no tienes disco duro....como piensas instalar el S.O?