|
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 - betopin
76
« en: Sábado 14 de Febrero de 2009, 22:44 »
Cuando vayas a capturar cadenas de caracteres utiliza gets()...el te tolera espacios y es ANSI C
Saludos
77
« en: Miércoles 11 de Febrero de 2009, 21:06 »
Pues bienvenido seas al C!!! Primero, lee un poco sobre arrays: Vectores o Matrices, de esa forma puedes capturar los diez datos en un solo arreglo...algo asi como int a; int datos[10]; for (a=0;a<10;a++) { printf("Ingrese el numero %i: ",a+1); scanf("%i",&datos[a]); }
Con eso ya tienes listo la captura de los valores... Luego lee un poco sobre los bucles...el for, te da un estado inicial, una condicion a cumplirse y un incremento El while te proporciona una condicion a cumplirse nada mas Teniendo esto claro, es cuestion de que armes una condicion dentro del bucle que te vaya comparando un dato con otro...un clasico metodo es el de la burbuja...lee un poco de eso tambien.. Saludos #include <stdio.h>
main()
{ printf("Ingrese un numero a:"); scanf("%d",&a); printf("Ingrese un numero b:"); scanf("%d",&b); printf("Ingrese un numero c:"); scanf("%d",&c); printf("Ingrese un numero d:"); scanf("%d",&d); printf("Ingrese un numero e:"); scanf("%d",&e); printf("Ingrese un numero f:"); scanf("%d",&f); printf("Ingrese un numero g:"); scanf("%d",&g); printf("Ingrese un numero h:"); scanf("%d",&h); printf("Ingrese un numero i:"); scanf("%d",&i); printf("Ingrese un numero j:"); scanf("%d",&j);
y ahora... la verdad es que no tengo ni idea de por donde pueden ir los tiros.
Tengo el libro de "El lenguaje de programación C" de Kernighan Brian
saludos, soy nuevo, tanto en el foro como en este lenguaje...
78
« en: Miércoles 11 de Febrero de 2009, 20:53 »
y que llevas hecho?
79
« en: Miércoles 11 de Febrero de 2009, 20:48 »
Por supuesto que j toma un valor en el bucle, pero antes no, cuando se define max y min void maximiminin(float *vector,int i) { int j; float max=vector[j],min=vector[j]; for (j=0;j<i;j++)
Eso hace que max y min...tengan un valor cualquiera...por ende las comparaciones que se hacen en el bucle poco o nada importan. Para que estas si importen...j debe tener el indice del array en donde se almacenan estos valores...que para el caso....es evidente que hay un segundo error alli...ya que j es comun para max y min en esta linea float max=vector[j],min=vector[j]; teniendo un valor comun en dos variables distintas Mas aun...j puede tomar un valor >long (Tamaño maximo del arreglo)...o menor a 0...asi que puede estar capturando en max o min quien sabe que valor que no se encuentra dentro del array.
80
« en: Miércoles 11 de Febrero de 2009, 17:02 »
Te recomiendo hagas uso de una estructura...algo asi como struct info { char nombre[100]; char numero[100]; char banco[100]; };
struct info datos[200]; De esta forma, el chiste del problema se reduce a leer la info, guardarla en la estructura, modificar los datos de esta si es necesario, y reescribir el archivo guardando la estructura entera Con la estructura puedes tener acceso a cualquier dato de manera facil y ordenada, apartir de su variable Recuerda que la cantidad de datos esta determinada por el tamaño de la variable de la estructura. Para el caso del ejemplo, 200 de cada uno...aunque pueden ser mas y este numero claro esta, puedes hacerlo dinamico...que dependa por ejemplo de un minimo de lineas con las que cuenta tu fichero en excel...se me ocurre Otra cosa a tener presente es en que en C, los strings se definen como arrays de variables char Saludos
81
« en: Lunes 9 de Febrero de 2009, 23:54 »
Como pasó en Cali, que elegimos a un alcalde ciego...
Por cierto, no es ninguna broma jajajaja. es cierto...pero lo destituyeron o como fue la historia
82
« en: Lunes 9 de Febrero de 2009, 23:28 »
Hay muchisimos programas que sirven para el caso...uno por ejemplo es el Pic C....
Tiene, al igual que sus similares fortalezas muy grandes sobre el mplab
1) "Quemas" el codigo directamente sobre el pic, ya sea en una protoboard, tarjeta, etc...normalmente serialmente...esto es muy bueno porque en los clasicos quemadores siempre se esta arriesgando la integridad de los pines...y hay algunos que dependen del SO 2) Usan librerias en donde agregas todas las caracteristicas basicas del Pic...ejem pic 16F877...con agregar su libreria...ya tienes acceso a todos sus puertos al ADC...al modulo de trnasmision asincronica...todo 3) Vienen cargados de ejemplo...no solo para interactuar con pics...sino para trabajar con pic y otros dispositivos como relojes, dacs, lcds...etc 4) Y obviamente la ventaja mas fuerte...la programacion es mas comoda y simple...sobre el mplab hay que dar muchas vueltas para hacer cualquier cosa
Hay mucha bibliografia en Google
Saludos
83
« en: Lunes 9 de Febrero de 2009, 23:18 »
Te marca esa respuesta...o error ...como lo quieras ver....porque ese comando esta pensado para caracteres y numeros enteros
Saludos
84
« en: Lunes 9 de Febrero de 2009, 23:08 »
void maximiminin(float *vector,int i) { int j; float max=vector[j],min=vector[j]; for (j=0;j<i;j++) { if (vector[j]>max) { max=vector[j]; } else if (vector[j]<max) { min=vector[j]; } } printf("El numero mes petit es: %0.2f n",min); printf("El numero mes gran es: %0.2f n",max); }
pq en el max y el min solo me detecta el max, en el min siempre me pone 0 ? Creo que el error reside en el valor de la variable j...de entrada no tiene ningun valor asignado...y eso hace que el valor en max o en min sea cualquiera int j; float max=vector[j],min=vector[j];
85
« en: Lunes 9 de Febrero de 2009, 22:59 »
Lee un poco sobre la libreria windows.h....o si la idea es orientar tu trabajo a videosjuegos...instala unala libreria que te sirva para el caso...como una allegro.h
86
« en: Lunes 9 de Febrero de 2009, 18:27 »
ya que estas usando comandos como clrscr()...asumo que estas utilizando la conio.h....entonces puedes jugar con la pocision del cursor y sacarle mas provecho al espacio de la pantalla a lo largo o ancho usando el comando gotoxy....o puedes a la hora de hacer las impresiones usar "t"...el cual desplaza el cursor un tab desde el principio de la linea...
87
« en: Miércoles 4 de Febrero de 2009, 00:31 »
mmm....no, no dice nada sobre el menu de la primera version...solo habla de las opciones que deben agregarcele revisa el archivo adjunto ahi esta toda la informacion
88
« en: Martes 3 de Febrero de 2009, 20:05 »
Puedes saber el tamaño del arreglo con el comando sizeof()....el te da la cantidad de bytes con los que cuesta el arreglo...si quieres saber el numero exacto de elementos puede hacer algo asi como: sizeof ARREGLO/sizeof (TIPO DE DATO) .....donde TIPO DE DATO es int, char...etc Saludos Por cieto, teniendo el vector inicializado y sin saber exactamente cuantos elementos tengo ¿hay alguna función que me lo diga?
Por otro lado, usando la STL ¿hay alguna manera sencilla de inicializar el vector tal y como lo he hecho con VEC_STRING?
Gracias.
89
« en: Martes 3 de Febrero de 2009, 01:05 »
Cual era el menu de la version anterior???? Se le ha solicitado que implemente una nueva versión del juego de la Sopa de Números v1.0. En esta nueva versión del juego, al menú principal de la versión anterior se le agregaran las siguientes opciones: Cargar juego Mejores puntajes
90
« en: Lunes 2 de Febrero de 2009, 14:27 »
mmm...yo utilizaria los comandos de la libreria string.h, que son ansi c y que para el caso te podrian servir...
suponiendo que string sea la cadena y a el caracter con strcat(string,a)...tendrias al final de la cadena el caracter
o si deseas modificar a tu antojo el arreglo puedes usar sprintf(cadena," %f %c %i ",c,a,b)....aqui puedes convertir cualquier tipo de dato a caracter y guardarlo como tal dentro de una cadena
91
« en: Lunes 2 de Febrero de 2009, 05:48 »
Visual...mmm....pense que era puro C...si te sirve el codigo para ser ejecutado en modo consola te puedo echar una mano, de lo contrario, no podre ayudarte
92
« en: Lunes 2 de Febrero de 2009, 05:30 »
Se que es algo viejo el post pero me gustaria hacer mi propio codigo tambien...ya describiste las reglas para las matrices impares...que pasa con una matriz par...cual es la regla ahi??? Alguien la sabe??? Gracias Ademas no es ningun reto. Existen reglas para llenar ese cuadro.
Primero, la matriz debe ser de numeros impares (3x3, 5x5, 7x7, etc). 1. El numero 1 se coloca en la fila de arriba en el lugar del medio
2. Los numeros se escriben del 1 al 9. El siguiente numero se coloca un lugar arriba y a la derecha. Me explico. Para el movimiento hacia arriba, si el numero anteriror se coloco en la fila de hasta arriba, el siguiente numero se coloca en la fila de abajo y una casilla a la derecha. Para el movimiento a la derecha, si el numero anterior esta en la columna de la derecha, el siguiente numero se colocaria en la columna de la izquierda
. 1 . . 1 . . . . 3 . . . . 2 . . 2
3. Cuando el ultimo numero escrito es multiplo del tamaño de la matriz (en este caso 3,6,9), el siguiente numero se coloca debajo de ese numero
4. Se continua con el paso 2
. 1 6 . 1 6 8 1 6 3 5 . 3 5 7 3 5 7 4 . 2 4 . 2 4 9 2
Como mencione, estos pasos aplican para todas las matrices de tamaño impar:
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
93
« en: Lunes 2 de Febrero de 2009, 05:00 »
mmm...y que tanto has hecho tu???...porque vaya que hay que hacer cosas Yo estoy algo libre y te puedo dar una mano....pero quisiera saber varias cosas... 1) El codigo debe hacerse sobre ansi c, o pueden usarse librerias de borland u otras...es decir,me gustaria saber la orientacion del juego 2) Cuando dices... Se generarán 7 números aleatorio de 3 ó 4....supongo que son 3 o 4 cifras no???' 3) Como son los formatos de los archivos???...yo solo veo un espacio en blanco... Tan pronto resuelvas mis dudas empezare Saludos Sopa de números V2.0 Descripción Se le ha solicitado que implemente una nueva versión del juego de la Sopa de Números v1.0. En esta nueva versión del juego, al menú principal de la versión anterior se le agregaran las siguientes opciones: Cargar juego Mejores puntajes
Reglas del juego El juego consta de un tablero que está compuesto de 15 filas y 15 columnas (casillas). A continuación, se definen las reglas para generar el ambiente de juego: Se generarán 7 números aleatorio de 3 ó 4. La distribución en la cual será ubicado un número es aleatoria: vertical, horizontal, diagonal. Cada cifra de un número se ubica en una casilla y las cifras del número se hallan en casillas contiguas dependiendo de la distribución que le corresponda (vertical, horizontal o diagonal). La posición a partir de la cual se guarda cada uno de los dígitos del número generado deberá ser aleatoria: o En caso de una distribución vertical se genera la columna y la fila a partir de la cual se ubicará el número así como el sentido en que se leerá. o Si se trata de una distribución horizontal se genera la fila, la columna y el sentido de lectura. o Si el tipo de distribución es diagonal, se escogerá aleatoriamente en cuál de las dos diagonales se ubicará el número al igual que la fila, la columna y el sentido en el que el número será situado en el tablero. Las casillas que no contienen cifras de ninguno de los números generados serán llenadas con números aleatorios de una cifra. Cuando el jugador ingrese a la opción Jugar del menú, se le solicitará su nombre. A continuación, se le mostrará el tablero y los números que deberá buscar. Por cada turno el jugador deberá seleccionar: El número que desea buscar (opciones del 1 al 7) La orientación del número: vertical, horizontal, diagonal 1 ó diagonal 2 La fila a partir de la cual se lee el número La columna en la que se encuentra el número El sentido de lectura izquierda a derecha (1) ó lectura de derecha a izquierda Al inicio el Jugador empieza con 50, cada vez que falle en la búsqueda de un número se le restaran 10 puntos. No se otorgan puntos por encontrar los números buscados. Si se busca un número ya encontrado se penalizará al jugador con 5 puntos por desperdicio de tiempo de procesamiento. El juego deberá mostrar la cantidad de intentos exitosos y fallidos de búsqueda. El juego se gana una vez que se encuentren todos los números. Fin del Juego Existen tres maneras de finalizar el juego: • Cuando el jugador ha encontrado todos los números, es decir que ha ganado. • Cuando el jugador ha fallado tantas veces que su puntaje es inferior a cero. • Cuando el jugador no desea continuar con el juego; en este punto el jugador ingresa -1 en cualquiera de las entradas para buscar un número (numero a buscar, fila, posición ó sentido de lectura). En caso de que el usuario desee salir (-1), se le deberá preguntar si desea guardar el juego, salir sin guardar ó cancelar. En caso de que seleccione la opción de guardar el juego, se deberá guardar toda la información en el archivo juego.txt y mostrar un mensaje indicando que ha sido guardado el juego. Si selecciona salir sin guardar, se le mostrará al jugador su puntaje, la cantidad de números encontrados y cantidad de números no encontrado. Si selecciona cancelar se le deberá permitir continuar jugando. Cargar Juego Cada vez que el jugador no desee seguir jugando y guarde el juego, se generará el archivo Juego.txt, el mismo que contiene toda la información requerida para recrear el escenario del juego una vez que se utilice la opción cargar del menú principal. El formato del archivo se detalla a continuación:
Nota: Si en su aplicación requiere guardar información adicional el formato del archivo puede ser modificado
Mejores puntajes En el archivo Listado.txt, la aplicación irá almacenando los 10 mejores puntajes obtenidos por los jugadores. A continuación, se detalla el formato del archivo:
Nota: En todo momento el programa deberá proveer al jugador la retroalimentación correcta de cada una de las acciones ejecutadas. Adicionalmente, se deberán validar todas las entradas.
94
« en: Lunes 2 de Febrero de 2009, 02:27 »
Saludos
Allegro no puede manipular el botón de cerrado de una ventana DOS bajo Windows.
Probablemente es por eso que no te sirve
|
|
|