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 - JonaLamper

#471
Cita de: ivancea96 en 21 Enero 2014, 17:46 PM
Recuerda que Srand no genera número aleatorio. Pone la semilla para Rand.

Si te quieres asegurar, deberás hacerlo a mano, con una función, por ejemplo.

Longitud 4 e intervalo 0,5 el qué?

El código generado (mediante una función que contiene un For, por ejemplo).
#472
Pongo aquí mi duda para no abrir otro tema.

Es posible generar un número con srand (en mi caso, de longitud 4 e intervalo [0,5]) y asegurarse de en esos 4 dígitos, no hay ninguno repetido?

He pensando en guardar el valor anterior generado y compararlo con el nuevo... pero no sé si es una buena idea, porque dicho número generado va dentro de un array.
#473
Uhmmm, pero imagina que tengo declaro este Array

typedef tColores tCodigo[4];

Este Array sólo me va a guardar valores del tipo tColores, no? y si los valores del tipo tColores en el fondo son números tipo int, porque el Array no me deja guardar valores tipo int?  :huh:
#474
Programación C/C++ / Duda 'tipo enumerado'
20 Enero 2014, 23:48 PM
Buenas! Cuando ejecuto este código me devuelve un 1 (correspondiente al color azul). Por qué no me devuelve 'azul' como tal en vez de el 1? Se supone que me tiene que devolver algo del tipo tColores... Qué lío.

Código (cpp) [Seleccionar]
#include <iostream>
#include <string>
#include <fstream>
#include <ctime>
#include <cstdlib>
using namespace std;


// const int NumColores = 6;
// const int Longitud = 4;
// const int MaxIntentos = 30;
// const bool Repeticion = false;
// const string HelpFile = "ayuda.txt";

typedef enum { rojo, azul, verde, negro, granate, marron } tColores;

// typedef tColores tCodigo[Longitud];

/* subprogramas minimos que hay que implementar... piensa en otros adicionales que puedan
ayudar a modularizar mas el programa */

// void generar(tCodigo codigo);
// tColores letraAColor(char c);
// char colorALetra(tColores color);
// void jugar(int& numintentos); // Devuelve el numero de intentos (0 si el jugador abandona el juego)
// void leerCodigo(tCodigo codigo, bool& cancelar);
// void chequear(const tCodigo secreto, const tCodigo jugador, int& correctos, int& descolocados);
// void mostrarMovimiento(const tCodigo jugador, int intento, int correctos, int descolocados);
// void mostrarAyuda();

tColores numAColor (int numero);

int main() {

tColores digito;
int numero = 1; //Para hacer la prueba
digito = numAColor (numero);
cout << digito;

   return 0;
}

tColores numAColor (int numero) {
   tColores digito;
 
  switch (numero) {
   case 0:
      digito = rojo;
      break;
   case 1:
      digito = azul;
      break;
   case 2:
      digito = verde;
      break;
   case 3:
      digito = negro;
      break;
   case 4:
      digito = granate;
      break;
   case 5:
      digito = marron;
   }
 
return digito;
}
#475
Una ironía dentro de una ironía... interesante.

No digo que ese chico de 17 años sea un pequeño "genio" (muy entrecomillado). Pero no me gusta que se le de bombo a las noticias para después ver que su padre es Ing. informático o algo parecido. A veces salen noticias así del tipo: "Un joven de 16 años funda su primera empresa que ya es todo un éxito". Y después en letra pequeña lees: "Todo gracias al capital de su padre, que es un exitoso empresario propietario de una gran cantidad de empresas".

En fin, GG WP.
#476
Nos quitan el botón de inicio y nos volvemos locos.
#477
Qué tal Ivancea? Eso tiene algún que otro problema... dos problemas le veo. El primero es que tienes que contar con una cantidad bastante grande de dinero para los casos en los que salieran 14 veces rojo o negro. Y el segundo y mayor problema, es que en la ruleta existe un límite a la hora de apostar.
#478
Muchas gracias. No veía el ponerle un parámetro por referencia al procedimiento  :-\

Ya... pero son las normas de la práctica xD

Oye, cómo haces para que al insertar un código, reconozca que se trata de C++ (por ejemplo)?
#479
Se acabó, no aguanto más. Llevo 35 minutos intentando solucionar esto y no veo dónde está el fallo. Lo único que quiero conseguir es generar números aleatorios mediante un procedimiento Void. Y no sé por qué, siempre me genera el mismo número, soy incapaz de ver el maldito error.

Código (cpp) [Seleccionar]
]
#include <iostream>
#include <string>
#include <fstream>
#include <ctime>
#include <cstdlib>
using namespace std;

void generar(int codigo);

int main() {

int codigo;
int num;
srand(time(NULL));
// num = rand() % 51;

generar(codigo);

codigo = num;

cout << "numero aleatorio: " << codigo;
 
  return 0;
}

void generar(int codigo) {
// int clave = 1;
// int longitud = 4;
int num;

num = rand() % 51;
  // for (int i = 2; i < longitud; i++) {
       // clave = clave * 10 + (rand() % 3 + 1);
   // }
}


Gracias y ojala me ayudéis porque me estoy volviendo loco (seguro que después es una tontería, para variar...)

Pd: ignorar los comentarios  :xD
#480
Es todo tan abstracto... que da pereza responder.