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

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 46
131  Programación / Programación C/C++ / Re: AYUDA con el lenguaje C... en: 30 Marzo 2014, 17:04 pm
Usando el boton de modificar; una vez que ya cometiste el error podes modificar ambos para que el segundo quede vacio y un moderador lo borre.
perfecto ^^
Es que se me paso...Despiste mio =(
Gracias por la información (y)
Intentare que no pase, no lo hago a propósito para que conste en el acta. :silbar:
¿¿Por que no ponen que uno mismo pueda borrar sus mensajes??Esta Opción debería estar para usarla.
132  Programación / Programación C/C++ / Re: AYUDA con el lenguaje C... en: 30 Marzo 2014, 16:58 pm
¿Y como se les puede unir? :S
Por que me lie... en vez de modificar pinche en uno nuevo.
Una vez echo eso no se puede borrar :/
Y por cierto me quieres mucho eh. Hace meses que no te veo y de pronto pufff apareces por arte de magia XDD
¿Dime quien eres?? ¿Eres multi cuenta no? eres rir o amchacom o quien eres??  :laugh:
133  Programación / Programación C/C++ / Re: AYUDA con el lenguaje C... en: 30 Marzo 2014, 15:30 pm
yo siempre uso windows.h pero prefiero std::cin.get() aunque no sea exactamente igual
yo uso el cin.ignore(), XD
Claro... Si es para pausar  :D



Leo en Dev cpp orwell tienes que añadir librerías aparte para system.
en la 4.9 es que no se usa XD
Son dos mundos diferentes, uno es viejo de cojo... y el otro no es gran cosa pero ya va mas actualizado.
Lo que le gusta a la gente es lo realmente sencillo que es utilizarlo.
Joe si es abrir crear un proyecto o código fuente y vuala.
Eso es que hace que la gente tire para Dev, mas tarde te acabas viendo que no trae muchas cosas que te puede ser útil.
Lo que me convenció mudar a codeblocks no es las mil funciones que tiene...Sino la que me permite cambiar varias lineas de texto a la vez, si quiero crear 10 includes por ejemplo sujeto alt pincho en la pantalla y arrastro hacia abajo se marcan todas las lineas que quiero.Solo escribo una vez y me crea 10 lineas ^^Solo eso para mi es la caña. jeje
Aparte de eso esta si pinchas con control en determinados puntos también lo hace.
otra cosa que me gusta es que cambia bloques de texto hacia arriba y abajo con alt pulsado. Esas 3 cosillas para mi son inmejorables.
Si saben truquillos como este pues soy todo oídos ^^
No suelo trabajar con 10 pestañas a la vez ya que mi pantalla es cu cul... y yo un novato, pero si es otra función bestia. ^^

Citar
No hace falta windows.h para el system, con stdlib es suficiente.
¿cstdlib es mas portable verdad?
134  Programación / Programación C/C++ / Re: AYUDA con el lenguaje C... en: 30 Marzo 2014, 07:11 am
Me recuerdo que no necesitaba ninguna librería para usar system() en Dev.
De tanto que me dio la plasta leo me tuve que cambiar a codeblocks XDD
En codeblocks pongo la windows.h
¿Hay alguna mejor?  :¬¬
135  Programación / Programación C/C++ / Re: Ayuda optimizacion busqueda de salida en laberinto en: 28 Marzo 2014, 20:53 pm
Pero buscar es una cosa y ir hacia el fin es otra.
Realmente cuando buscas haces elecciones no sabes donde esta en fin.
Y tanto no tarda. Allí tienes los algoritmos. Prueba los.
Para ir al final entonces lo programo para que lo haga señalando las casas por donde debe ir.
O le implemento un algoritmo de búsqueda que que me de el camino mas corto y en un ratico me dice donde esta el fin.
Para mi eso es trampa imagina que haces un juego, tu no sabes donde esta un personaje de la IA, tu quieres que el sepa donde estas?
Como dije depende de lo que quieres.
Lo que quería lo hice, haz tu lo mismo.

136  Programación / Programación C/C++ / Re: Ayuda optimizacion busqueda de salida en laberinto en: 28 Marzo 2014, 20:16 pm
Por eso me gustaba usar la función rand() para que elija una de las opciones.
Iba marcando el camino por si entrara en un camino sin salida y cuando no había salida hacia que volviera por donde entro hasta que tuviera un camino sin recorrer.
Hacia que por donde había estado le marcaba como 1, por explorar 0 y sin salida 2 por ejemplo.
cuando llega a un lugar que tenga 3 caminos posibles pues elija uno al azar. y vaya marcando con 1 por donde había estado.
lo mete cada paso dado en una matriz por si no hay salida que vuelva hasta encontrar un 0 otra vez XDD y importante es marcar esos caminos sin salida para que no vuelva entrar otra vez.
Aquí hicimos montón de cosas XDD
Algunos hicieron que lo encontrara el mas corto pero así no me molaba XDD
Si es un laberinto, debe buscar la salida no saber donde esta :laugh:
Todo depende de lo que quieres.
http://foro.elhacker.net/programacion_cc/ayuda_con_programa_urgente-t404470.0.html
137  Programación / Programación C/C++ / Re: consejos con optimizacion de codigo snake en: 28 Marzo 2014, 19:25 pm
Este de aqui es el snake de paueky para miniwin pero lo hice con SFML  :laugh:

Código
  1. #include <SFML/Graphics.hpp>
  2. #include <SFML/Window.hpp>
  3. #include <windows.h>
  4. #include <list>
  5. #include <iostream>
  6. using namespace std;
  7.  
  8. const int XTAM = 66, YTAM = 40;
  9. const int SZ = 12;
  10.  
  11. struct Punto{
  12.    int x, y;
  13. };
  14.  
  15.  
  16. void cuadrado ( Punto &p,  sf::RenderWindow &laventana ){
  17.    sf::RectangleShape rectangle;
  18.  
  19.    rectangle.setPosition ( p.x*SZ, p.y*SZ );
  20. rectangle.setSize ( sf::Vector2f ( SZ-1, SZ-1) );  // *_*  
  21.  
  22. rectangle.setFillColor(sf::Color::Red);
  23.  
  24. laventana.draw(rectangle);
  25. }
  26.  
  27. bool colision( const Punto &cabeza, const list<Punto>& cola ){
  28.    if( cabeza.x >= XTAM || cabeza.x < 0 ){
  29.        return true;        
  30.    }
  31.    if( cabeza.y >= YTAM || cabeza.y < 0 ) {
  32.        return true;
  33.    }
  34.    list<Punto>::const_iterator it;
  35.    for( it = cola.begin(); it != cola.end(); it++ ){
  36.        if( cabeza.x == it->x && cabeza.y == it->y ){
  37.            return true;            
  38.        }
  39.    }
  40.    return false;
  41. }
  42.  
  43. Punto aleatorio(){
  44.    Punto p = { rand() % XTAM, rand() & YTAM } ;
  45.    return p;
  46. }
  47.  
  48.  
  49. int main() {
  50.    sf::RenderWindow window ( sf::VideoMode ( XTAM * SZ, YTAM * SZ, 32 ), "SFML APP" );
  51.    window.setVerticalSyncEnabled(true);
  52.    window.setFramerateLimit(60);
  53.    Punto cabeza = {XTAM/2, YTAM/2}; //cabeza, punto salida
  54.    Punto comida = aleatorio();
  55.    Punto temp = {0, 0};  
  56.    int vx = 1, vy = 0;              //Velocidad
  57.    int engorda = 0;
  58.    bool choque = false;
  59.    list<Punto> cola;
  60.    int retraso = 0;
  61.    while ( window.isOpen() && !choque ) {
  62.        retraso++;
  63.  
  64.        sf::Event tecla;
  65. while ( window.pollEvent ( tecla ) ) {
  66. switch ( tecla.type ) {
  67.                case sf::Event::Closed:
  68.                    std::cout << "Fin de juego!" << std::endl;
  69. window.close();
  70. break;
  71. case sf::Event::KeyPressed:
  72.                    if(tecla.key.code == sf::Keyboard::Up )
  73.                        vx = 0, vy = -1;
  74.                    else if(tecla.key.code == sf::Keyboard::Down )
  75.                        vx = 0, vy = +1;
  76.                    else if(tecla.key.code == sf::Keyboard::Left )
  77.                        vx = -1, vy = 0;
  78.                    else if(tecla.key.code == sf::Keyboard::Right )
  79.                        vx = +1, vy = 0;
  80.                    else if(tecla.key.code == sf::Keyboard::Space )
  81.                        engorda = 1;
  82.                    break;
  83. default:
  84.                    break;
  85. }
  86.  
  87. }        
  88. window.clear ();
  89. if ( retraso == 7 ) {
  90.            cola.push_front(cabeza);    
  91.            if ( engorda > 0 ){
  92.                engorda --;            
  93.            }else{
  94.                cola.pop_back();
  95.            }
  96.  
  97.  
  98. cabeza.x = cabeza.x + vx;
  99. cabeza.y = cabeza.y + vy;
  100.  
  101. if ( colision( cabeza, cola) ) {
  102.                choque = true;
  103. } else if (cabeza.x == comida.x && cabeza.y == comida.y){
  104.                engorda = 1;
  105.                comida = aleatorio();
  106.                while ( colision(comida, cola) || comida.x == cabeza.x && comida.y == cabeza.y ){
  107.                    comida = aleatorio();
  108.                }
  109. }
  110.  
  111. retraso = 0;
  112. }
  113.  
  114. if ( !choque ) {
  115.  
  116. list<Punto>::const_iterator it;
  117.  
  118. for ( it = cola.begin(); it != cola.end(); it++ ) {
  119. temp = *it;
  120. cuadrado ( temp, window );
  121. }
  122.  
  123. cuadrado ( cabeza, window );
  124. cuadrado (comida, window );
  125. window.display();
  126. }
  127.    }//END BUCLE
  128.  
  129.    //return EXIT_SUCCESS;
  130. }
  131.  

Se que el código es una chapuza XDD
pero funciona ^^
los controles son WASD y la barra de espacio agranda la serpiente es solo para probar.
Tampoco hice mucho, solo la hice andar y poco mas XDD
138  Programación / Programación C/C++ / Re: Busco programador en SDL en: 23 Marzo 2014, 14:16 pm
Si es para windows SFML tambien te puede servir ¿No? :-X
Hoy por hoy me parece que la peña prefiere SF mas que SD.  :silbar:
139  Programación / Programación C/C++ / Re: Generar un mapa aleatorio 2D con puntos en: 12 Marzo 2014, 22:21 pm
si el mapa es aleatorio que me garantiza que al generar no salga asi:


XXXXXXXXXXXXX
XXXXXXXXXXXXX
XX XXXXX     XXX
XXXX  XXX    XXX
XXXXXXXXXXXXX
XX XXXX   X      X
XXXXXXXXXXXXX  :laugh:

Ademas no pensemos en un mapa de 10 por 10
digamos de 100 o mas, tendría un camino ¿Pero y lo demás? XDD
140  Programación / Programación C/C++ / Re: Generar un mapa aleatorio 2D con puntos en: 12 Marzo 2014, 15:46 pm
La manera más sencilla sería crear un camino con anterioridad y "bloquearlo" para que no puedas edificar en él.
Gracias por la idea :D
Es muy buena...la verdad no se si se puede de otra forma :D
Y para mantener por ejemplo un camino de una casilla.
Por ejemplo:
XXXXXXXXXXX
XAXX            X
X        X    X  X
XXXXXX    X  X
XB            X  X
XXXXXXXXXXX

En un ejemplo hipoteco de que quiera generar un mapa como el de arriba de forma aleatoria.
¿Como garantizo que aparte del camino queden el ancho de una casilla en los demas caminos?
No es tan fácil al menos no para mi  :-[
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 46
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines