|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - ssaammuu
1
« en: Viernes 3 de Junio de 2011, 11:29 »
minutos= minutos + 60: //<-- es punto y coma, no dos puntos... minutos += 60; primcalc= primcalc + 1} //<-- te has saltado el punto y coma... primcalc++;
2
« en: Domingo 29 de Mayo de 2011, 14:54 »
Usando C++ (que creo que estás usando) yo personalmente guardaría todo lo que el usuario escribe en strings, irrespectivamente de lo que sea. Después la mayoría del programa consistiría en analizar esos strings para determinar lo que el usuario ha introducido. Si te parece bien usar esta estrategia te recomiendo que le te familiarizes con string y sstream para manipular/cambiar el tipo de variable.
3
« en: Domingo 29 de Mayo de 2011, 01:59 »
Creo que únicamente tomar en cuenta si la carta ha salido 4 veces o no, no es una buena solución ya que la probabilidad de sacar un rey cuando quedan 4 no es la misma que cuando solo queda uno. Sería una buena idea controlar en todo momento las cartas que ya han salido/quedan. De esta forma la probabilidad de cada carta es más realística. La verdad es que hay infinidad de formas de hacerlo...
5
« en: Miércoles 25 de Mayo de 2011, 02:31 »
No se si he entendido bien pero... matriz[0][0]=4; matriz[0][1]=5; matriz[0][2]=6; matriz[0][3]=7;
6
« en: Martes 24 de Mayo de 2011, 18:12 »
Porque no cambias tu función número 1 para que devuelva un entero int gener_num(void) { return n; }
Y después lo llamas en la función número dos. Por lo que he entendido la función mostrara 0 si no es la última fila o - si es la última fila a pesar de introducir un número aleatorio en esa posición... void ini_jugadas(int matriz[8][4]){ for (int filas=0; filas<8; filas++) { for (int columnas=0; columnas<4; columnas++) { if(filas==7){ matriz[filas][columnas]=gener_num(); }else{ matriz[filas][columnas]=0; } } } }
7
« en: Martes 24 de Mayo de 2011, 17:54 »
No se hacen tareas, intentalo tú y las dudas que tengas las preguntas...
8
« en: Lunes 23 de Mayo de 2011, 12:54 »
void ini_jugadas(void) { int matriz[9][4]; //...
Si creas la matriz dentro de la función, esta será local a la función y no será accesible fuera de ella. Tienes que declarar la matriz globalmente. Estás usando C o C++?
9
« en: Domingo 22 de Mayo de 2011, 00:58 »
Pero eso ya no es debido a Allegro ya que si quitas todo lo relacionado con Allegro del código el mismo problema sigue presente por lo que he visto. Me temo que ahí yo no puedo ayudarte, porque de sonido con las librerías de windows yo ni idea xD. De todos modos Allegro tiene incoporado funcionalidad para el manejo de sonido si quieres hecharle un vistazo a eso.
10
« en: Sábado 21 de Mayo de 2011, 13:05 »
Oops, me acabo de dar cuenta porque no te funcionaba... Después de winalleg tienes que incluir los headers de windows/mmsystem o lo que sea #include <allegro.h> #include <winalleg.h> #include <windows.h> #include <MMSystem.h>
11
« en: Sábado 21 de Mayo de 2011, 01:09 »
Crea los miembros como protegidos, no privados en la clase base, para poder acceder a ellos en las clases derivadas class figura { protected: int b,h; public: figura(){b=h=0}; int obtiene_h(){return h}; int obtiene_b(){return b}; }
Así puedes hacer esto directamente... class rectan public:figura { public: virtual int area(){return h*b;}; }
12
« en: Viernes 20 de Mayo de 2011, 22:34 »
Puedes hacer esto PERO CUIDADO. seekp te lleva al principio del archivo, donde NO estás añadiendo texto nuevo sino REEMPLAZANDO. Si te fijas en ese ejemplo el texto nuevo esta reemplazando al que ya había. No se si eso te importa pero suponiendo que no quieras reemplazar el texto existente, vas a tener que hacer lo que te comenté arriba.
13
« en: Viernes 20 de Mayo de 2011, 21:16 »
A perdona, por la silueta que dibujaste creía que solo querías medio árbol. La alineación puedes hacerla mediante dos formas, rellenando con espacios o manejando donde imprimes, al ser los espacios lo más fácil, es lo que he hecho en este código. int main() { for (int x=1; x<11; x++) { for(int c =0;c <11-x ;c ++){ printf(" ");} for(int k =1;k <2*x ;k ++){ printf("x");} } for (int y=0;y<5;y++) { } return (0); } :)
14
« en: Viernes 20 de Mayo de 2011, 21:07 »
Lo puedes hacer con seekp Al abrir el archivo en modo appending, esto no va a tener ningún efecto, ya que el modo appending se usa para añadir al final del archivo, o al menos eso he creído yo todo este tiempo.
15
« en: Viernes 20 de Mayo de 2011, 13:31 »
Me temo que ya que la función de añadir (ios::app) por definición añade lo nuevo al final del fichero, por lo que no puedes hacer directamente lo que pretendes. Lo que puedes hacer es: - Crear un archivo temporal - Escribir lo que quieres que vaya al principio - Escribir todo el fichero anterior - Reemplazar el fichero viejo por el nuevo No es muy conveniente, pero que se le va a hacer
16
« en: Viernes 20 de Mayo de 2011, 11:58 »
No se si es esto lo que buscas for ( x =1; x<11; x++) { for(int k =0;k <x ;k ++){ printf("x");} }
17
« en: Jueves 19 de Mayo de 2011, 12:14 »
No se como lo estás haciendo de momento, pero si es la misma bala que se mueve será porque solo tienes una estancia de bala. Podrías tener un array de balas. Al disparar se crea y añade una bala al array. Después, en cada iteración del juego, recorres el array y mueves, chequeas colisiones, etc... para cada bala, en caso de colisión o que la bala estuviese fuera de la pantalla, la borras del array. Espero que fuese eso lo que buscabas
18
« en: Martes 17 de Mayo de 2011, 22:50 »
Como te han dicho, los arrays empiezan por índice 0. Por ejemplo: char array[3]={'a','b','c'}; //entonces array[0]=='a' // array[1]=='b' // y array[2]=='c'
Por lo que tus bucles deberían emepezar por 0, (f=0 por ejemplo) y acambar por numero-1 (f<2 por ejemplo) Otra cosa es el array bidimensional int m[2][10]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
sería int m[2][10]={ {1,2,3,4,5,6,7,8,9,10} ,{11,12,13,14,15,16,17,18,19,20} };
19
« en: Martes 17 de Mayo de 2011, 22:44 »
mm que raro, se supone que winalleg se hace cargo de estos conflictos internamente aunque es necesario que winalleg sea incluido DESPUÉS de allegro. #include "allegro.h" #include "winalleg.h"
Si esto no funciona, pues la verdad es que la única solución que veo yo, es añadir allegro dentro de un namespace y así, para declarar un BITMAP de allegro usarías allegro::BITMAP donde allegro es el nombre del namespace. Aunque la verdad es que podrías usar allegro para el sonido también.
20
« en: Martes 17 de Mayo de 2011, 19:15 »
Me parece que pudes resolver esto si en vez de incluir windows.h includes winalleg.h
21
« en: Martes 17 de Mayo de 2011, 01:39 »
Dudo mucho que alguien te vaya a programar el juego entero y menos si escribes todo en mayúsculas y repites posts Así que mejor lo intentas tú, y después las dudas que tengas las preguntas...
22
« en: Lunes 16 de Mayo de 2011, 19:51 »
Parece ser que no estás linkeando las librerías que necesitas o al menos no correctamente. Hechale un vistazo a la configuración de linkeado. Por si acaso, por las funciones voy a asumir que estás usando la versión 5 de Allegro. En el caso de que estés linkeando la librería de forma estática, acuerdate que debes definir ALLEGRO_STATICLINK.
23
« en: Lunes 16 de Mayo de 2011, 13:55 »
Te estás saltando el campo fondo (bg) por lo que allegro percibe que estás introduciendo const char* (oportunidades) donde va el bg que es tipo int. Introduce -1 si no quieres ningun color de fondo. textprintf_ex(screen, font, 80,18, palette_color[15], -1, "Te quedan %d intentos", oportunidades);
24
« en: Viernes 13 de Mayo de 2011, 23:18 »
Este es un poco viejo pero vale la pena:
xDD no lo había visto antes
25
« en: Viernes 13 de Mayo de 2011, 03:31 »
El programa saca la media de X números.
Espacio Con el método actual solamente necesita UNA variable para ir acumulando el total de todos los números introducidos. Con con array necesitarias X número de variables, es decir array[0], array[1]...., array[X-1] por lo que necesitas más memoria.
Operaciones Con el método actual la operación al final es simplemente dividir la acumulación de números por X para obtener la media. Con arrays, uno necesitaría, trás obtener los números iterar por el array para obtener el total, es decir array[0] + array[1]..., + array[X-1] y después dividirlo por X. Por lo que arrays no ofrecen ninguna ventaja.
|
|
|