elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Mensajes
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 164
41  Foros Generales / Foro Libre / Re: Las armas de microondas más peligrosas que una bomba nuclear son el futuro en: 4 Octubre 2018, 16:29 pm
Como que te peguen un tiro en la boca, o que te tiren encima una bomba que arrase toda una ciudad no es suficiente, les presento las armas radioelectrónicas. Cansados de que solo mueran el 10%, de civiles de una ciudad, no se preocuope, tenemos la solución!!!

En serio no hay límites en el desarrollo de armas? Esto seguirá así hasta que se desarrolle un arma que pueda matar a todo el planeta dándole a un botón, se filtre su tecnología para que cualquier nación dirigida por un lunático la desarrolle en secreto y acabe con todo.
42  Programación / Programación C/C++ / Re: Ayuda con codigo de juego TAREA en: 4 Octubre 2018, 15:57 pm
Para sacar en pantalla el puntero simplemente usa
cout << *nombreDelPuntero;
al definir con static la variable, esta se guarda en memoria y no se destruye al acabar la función. Por lo que puedes utilizarla exactamente igual que si fuese una variable global.
Si no la declaras como static el contenido de la variable será sobrescrito en memoria por cualquier otra cosa que necesite almacenarse en memoria. Entonces cuando quisieses acceder al contenido de la variable, podrías encontrarte que en esa dirección de memoria hay otra cosa distinta. Por eso use static, para decirle que no quiero que la zona de memoria donde está alojada, no se sobreescriba y siempre me guarde el valor de la variable ahí, hasta que el programa finalice y libere la memoria.

Un puntero es lo mismo que una variable, pero le pones el * simplemente para que quien lea el código sepa que es un puntero.



Para que se haga algo, cuando el usuario introduzca un dato que tu no esperas puedes usar el switch case. Pones todos los valores que esperas que la variable argumento del switch pueda contener, y para el resto usas un solo default.

Por ejemplo:
Código
  1. switch (variableConUnNumeroEntero)
  2. {
  3. case 1: //esto se ejecuta si la variable variableConUnNumeroEntero
  4. //vale 1. Es exactamente lo mismo que poner:
  5. // if (variableConUnNumeroEntero == 1)
  6. //{lo que pasa si la variable vale1;}
  7. break;
  8.  
  9. case 2: // lo mismo, pero si la variable es igual a 2.
  10. //aquí pones lo que quieras que pase si la variable es == a 2.
  11. break;
  12.  
  13. default: //esto por lo general se aplicará siempre. Pero como hay un
  14. //break; en los otros casos, no se aplicará si alguno de ellos se
  15. //cumple, ya que al ejecutarse un break; el switch finaliza y deja de
  16. //comprobar si los otros case se cumplen.
  17. cout<< "Si lees esto en la salida del programa, quiere decir que la variable no valía ni 1 ni 2";
  18. break;



Si quieres que cuando el usuario ponga un valor erróneo se vuelva a ejecutar en bucle infinitamente hasta que el usuario ponga un valor válido, mete todo el switch dentro de un while y le cambias la condición desde dentro de un case o el default.

Por ejemplo:
Código
  1. int condicionParaDetenerElBucle = 0;
  2. int variableConUnNumeroEntero;
  3. while (condicionParaDetenerElBucle == 0)
  4. {
  5.         cout << "Introduce el número 1 para finalizar el programa"
  6.         <<endl;
  7.         cin >> variableConUnNumeroEntero;
  8.  
  9.         switch (variableConUnNumeroEntero)
  10.                      {
  11.  
  12.                       case 1:
  13.                    // Lo que quieras que pase;
  14.                      condicionParaDetenerElBucle =1;
  15.                      Break;
  16.  
  17.                       Default:
  18.                       cout <<"Tu opción no es válida, intentalo de nuevo".
  19.                       <<endl;
  20.                       break;
  21.  
  22.                      }
  23. }
  24.  
43  Foros Generales / Dudas Generales / Re: Necesito ayuda please en: 4 Octubre 2018, 14:57 pm
Qué programa es el que te capa la tablet?
A lo mejor ni tiene contraseña en la bios. Miraste si puedes cambiar el orden de arranque para iniciar desde un sistema operativo en tu USB?
44  Programación / Programación C/C++ / Re: Ayuda con codigo de juego TAREA en: 4 Octubre 2018, 10:16 am
Si puedes usar punteros (pensé que no podías) usalos para hacer los contadores. Por ejemplo algo así:

Código
  1. int *funcion()
  2. {
  3. static int empateEnFuncion;
  4. static int ganarEnFuncion;
  5. static int perderEnFuncion;
  6.  
  7. if (jugadaDelUsuario == jugadaDeLaMaquina)
  8.   {
  9.   empateEnFuncion++;
  10.   return &empateEnFuncion;
  11.   }
  12. }
  13.  
  14. int main()
  15. {
  16. Bucle ()
  17. { funcion(){}}
  18.  
  19. Funcion MostrarResultadoAlAcabarLaPartida()
  20. cout << "Has empatado " << *empateEnFuncion << " número de veces";
  21. }
  22.  

No sé como puedes meter una estructura aquí xD. No tendría demasiado sentido. Es como usar una estructura para un hola mundo.
Yo le añadiría algo complejo al juego una vez terminado, que me permita usar estructuras.
Usa una estructura para el historial a ver que te sale. Pero primero completa el juego por pasos e intenta ordenar un poco el código y renombrar las variables para que se entienda mejor que guarda cada cosa.
Dale algo de formato al código, pon las funciones debajo de la función main, etc. Para que el código sea interpretable a simple vista, y tu profesor no necesite ir línea por línea mirando el código.
También usa las etiquetas para C++ en el foro. Arriba a la derecha, cuando estés escribiendo el código, donde pone Código GeSHi le das y puedes seleccionar C++
Mete tus códigos dentro de las etiquetas.
45  Programación / Programación C/C++ / Re: Ayuda con codigo de juego TAREA en: 3 Octubre 2018, 19:47 pm
Necesitas 3 en el main para empate ganar y perder, y minimo una en cada funcion para que te retorne 1 cada vez que se ejecute la función.
46  Foros Generales / Noticias / Re: Microsoft Edge esconde enlaces de afiliados de Amazon y Booking para ganar ... en: 3 Octubre 2018, 18:25 pm
Y cual es el problema? xD
Están marcados como pratocinados, eso quiere decir que microsoft se lleva una parte. Es bastante obvio que tienen tener alguna manera de indicarle a amazon que el cliente viene del anuncio en edge.
Es lo típico de invita a 3 amigos para un descuento. Estos amigos se registran usando tu ID en la url para que la web sepa que fuiste tú quien se les recomendó la página.
Estarán incluidos en la parte de configuración del navegador que puedes encontrar si escirbes la url
about:about
47  Programación / Programación C/C++ / Re: Ayuda este codigo basico de c++ esta incorrecto :( en: 3 Octubre 2018, 18:17 pm
Tienes que aprender a interpretar los mensajes de errores.
Dice literalmente: [Error] expected ';' before 'printf'
En español: Error, esperado un puntoycoma despues de printf
Te está diciendo que después de printf falta el puntoycoma.
48  Foros Generales / Foro Libre / Re: Repetir mes de prueba de Amazon Prime en: 3 Octubre 2018, 18:07 pm
En teoría tienes que poner tu tarjeta de crédito no?
Tendrá un máximo de cuentas asociadas a cada tarjeta.
Haz una tarjeta de crédito virtual gratuita. Le ingresas lo mínimo que puedas con una transacción y se te activa. Prueba con esa tarjeta.
49  Programación / Programación C/C++ / Re: Envio mensaje por bloques en socket en: 3 Octubre 2018, 17:52 pm
Los packetes se pueden partir en la transmisión, tcp lo permite. No lo puedes controlar. Tu propio ISP lo puede hacer. Sabiendo esto. Puede que te esté capando el SO.
El kernel te duplica el buffer para dejar sitio. Y también te pone limitaciones y te establece el tamaño por defecto en:
/proc/sys/net/core/wmem_default
/proc/sys/net/core/wmem_max
/proc/sys/net/ipv4/tcp_mem

Puedes cambiarle los valores con el editor de texto.

O usa SO_SNDBUFFORCE para ignorar el cap del OS en wmem_max.
50  Programación / Programación C/C++ / Re: Ayuda con codigo de juego TAREA en: 3 Octubre 2018, 16:11 pm
Pues si no puedes usar globales, retorna una variable que valga 1 de las funciones y se la sumas a una variable contador que Declares al principio dentro de la función main. En vez de declarar las funciones como void, declaralas como int, para poder devolver el valor 1.

Como en el ejercicio no vi nada de que no se pudiesen usar variables globales, las use para hacer el código más fácil de entender y sencillo.

Si puedes usar variables string dentro de estructuras. Pero no es necesario en este caso, ya que el nombre del jugador lo puedes imprimir entero solo con cout << nombreDelJugador;

Y para los arrais no te hace falta el nombre del jugador.

Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 164
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines