• Viernes 8 de Noviembre de 2024, 23:01

Mostrar Mensajes

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

Páginas: [1]
1
C/C++ / Re: capturar caracteres
« en: Viernes 1 de Abril de 2011, 04:07 »
jajaja si, cierto, no es backup sino background, no se que traeria en la cabeza que confundi los terminos.

No habia visto ese problema, stdin a saber donde estara "direccionado" ....

Muchas gracias por la observacion.


Pues a buscar solucion de como echar a andar ese programa en 2do plano, ahora es de "o lo echo a volar o lo echo a volar", en cuanto tenga una solucion la posteo

Saludos y gracias

2
C/C++ / Re: vectores
« en: Viernes 1 de Abril de 2011, 04:03 »
Cita de: "Checho360"
El ordenador toma la posición cero pero yo en la realidad siempre hablo a partir de la posición uno en adelante, por eso lo puse a partir de uno (en la vida cotidiana yo diría posición dos que es par). De todas formas eso es una tontería, cada uno que lo vea como quiera. Si quieres sumar los componentes uno a uno es SUMAR dos vectores, no unirlos; seria:

Código: C++
  1. int suma [cantidad];for(int i=0;i<cantidad;i++) suma[i]=0;
  2. (for int i=0;i<cantidad;i++){
  3. suma[i]=vector1[i]+vector2[i];}
  4.  
  5.  

Aqui tienes como sumar 2 vectores, es en pocas palabras, sumar elemento "i-esimo" del vector 1 con el elemento "i-esimo" del vector 2. Ahora, si lo que deseas es "pegar" 2 vectores, te posicionas al final de tu vector y la siguiente posicion sera la 1ra posicion del vector 2.

Digase, imagina v1 con 4 elementos, v2 con 3

for(i=0;i<3;i++)
v1[4+i]=v2;

De este modo, tendrias los elementos de v2 contiguos a v1. Cuidado con que tu vector receptor tenga el tamaño suficiente para hacer esta operacion.

Espero te sirva.
Saludos

3
C/C++ / Re: Duda con codigo C
« en: Miércoles 30 de Marzo de 2011, 05:33 »
Ya viste la instrucción swith-case? creo que puede venirte bastante bien para el tema de los meses, haces 12 cases, cada uno para cada mes y de este modo, filtras esa condicion de meses de 30-31 dias (incluyendo a febrero, claro), ademas de que podrias meterle tambien, dentro del case 2 (febrero), la condicion cuando el año sea bisiesto que te brinque con 29 dias ...

Saludos
Ehecatl

4
C/C++ / Re: Suuma de los cuadrados
« en: Miércoles 30 de Marzo de 2011, 05:04 »
A ver, si no me equivoco, tu lo que deseas es realizar la suma desde cero a un numero dado es decir, si yo doy 5, entonces me de (1^2)+(2^2)+(3^2)+(4^2)+(5^2)

esta serie, converge efectivamente, al valor que mencionas, n(n+1)(2n+1)/6 y como bien menciono m0skit0, lo debes de poner como:

resultado= n*(n+1)*(2*n+1)/6

Si no empleas el operador producto (*), C entiende otra cosa, de ahi que te manda el mensaje de "esto no es una funcion".

Espero te sirva este complemento

Ehecatl

5
C/C++ / Re: Confundido con código en C
« en: Miércoles 30 de Marzo de 2011, 04:56 »
El problema no es tan dificil como crees.

Maneja todo dentro de un do-while, en la condicion del while metele justamente el que mientras no se de un valor cero lo siga ejecutando.

No olvides variables para el acumulado de la suma y resta que vayas haciendo asi como un contador para que tengas el total de numeros que has ido capturando

para saber si sumas o restas, dentro del ciclo do-while mete un if-else, if (contador % 2) suma else resta.


espero te sirva de algo la pseudo explicacion

Ehecatl

6
C/C++ / Re: vectores
« en: Miércoles 30 de Marzo de 2011, 04:50 »
No se, creo que el problema pudo haber quedado mas simple empleando el operador módulo (%), el cual me regresa el residuo de la division de 2 enteros, todo dentro del operador terciario

x%2?suma += vector
  • :resta -= vector
  • ;


x%2 = dame el residuo del indice x dividido entre 2, solo tengo 2 posibles valores al dividir entre 2, cero o uno, lo cual lo uso como par (cero) o impar (uno).

Si el residuo es uno, haz la suma, si no haz la resta.

Es decir, es un if-else en corto

espero sirva de algo

Ehecatl

7
C/C++ / Re: funcionamiento logico del algoritmo mayuscula a minisculas?
« en: Miércoles 30 de Marzo de 2011, 04:43 »
En su momento, tuve una necesidad similar, la solucion que yo implemente, sin meterme con funciones de manejo de caracteres fue:

1.- capturar la letra y almacenarla en un entero

2.- dado que cada letra tiene su equivalente en codigo ASCII, mire la "distancia" entre las mayusculas y las minusculas, asi, una "A" tiene su equivalente en ASCII 65 y una "a" tiene su equivalente 97 es decir, 32 unidades. De este modo, cuando guardo la "A" en un entero, realmente estoy guardando el valor 65.

3.- Para la conversion, simplemente sumo 32 al entero donde guarde la mayuscula y listo, tengo mi letra en minuscula

Podrias refinar lo anterior filtrando que el caracter que leas sea realmente mayuscula, las mayusculas en ASCII estan entre el 65 y el 90

Espero te sirva de algo esto que implemente, un poco a fuerza bruta pero la condicion que yo tuve era cero funciones de manejo de caracteres.

Ehecatl

8
C/C++ / Re: capturar caracteres
« en: Miércoles 30 de Marzo de 2011, 04:35 »
Si, con getchar capturo un caracter del teclado, posteriormente mandarlo a un archivo con fpuc y a saco, creo que falto orientar mejor mi pregunta.

¿Que me recomiendan hacer para que el programa pueda correr en backup y hacer el procedimiento antes descrito? Lo que no deseo es que este una pantalla de ejecución del programa para poder trabajar, sino que simplemente este ordeñando los datos del buffer de entrada (stdin) y vaciarlos a un archivo

Muchas gracias por el tiempo y la molestia

9
C/C++ / capturar caracteres
« en: Viernes 25 de Marzo de 2011, 05:02 »
Hola buenas noches a todos

Soy nuevo en el foro, con poca experiencia en C.

Al grano, se que existen por ahi muchos programas que capturan en un txt todo lo que el usuario escribe en el teclado, pero me gustaria hacer "el propio" en C, por supuesto.

¿Alguien me podria ayudar orientandome por donde van los tiros con este programilla?

Muchas gracias

Páginas: [1]