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
81  Programación / Programación C/C++ / Re: COnsulta en: 18 Mayo 2014, 22:12 pm
Hola buenas ! una duda ¿Cómo recorrer una cadena de caracteres carácter por carácter en lenguaje C? gracias!

Puedes usar un bucle for para recorrer cada indice de la cadena, un ejemplo:

Código
  1. char cadena[] = "Hola Mundo";
  2. for (i = 0; cadena[i]!='\0'; i++)
  3.   printf("%c", cadena[i]);

Saludos
82  Programación / Programación C/C++ / Re: Una ayudita para terminar de dibujar esta figura con asteriscos en: 18 Mayo 2014, 21:48 pm
Es el último bucle for el que no llego a interpretarlo para que me imprima satisfactoriamente.

La inicialización cambiala por esta

Código
  1. k = (nivel * 2 - i) - 1;

Saludos
83  Programación / Programación C/C++ / Re: Pasar numeros enteros arábigos a romanos, por donde empezar. en: 18 Mayo 2014, 18:38 pm
Y ya aprovecho para preguntar una cosa, ¿es mejor inicializar siempre las variables para que no se llenen de basura y que den resultados inesperados?

Si, siempre debes inicializarlas te cuento por que el espacio de memoria "reservado" para tu variable pudo haber sido usado previamente por otro programa o aplicación, la cual libera ese espacio de memoria para el uso de otros programas, pero no necesariamente "borra" el contenido del mismo. Ese contenido no borrado en esa memoria liberada es lo que se llama "basura".

Por lo que una variable sin inicializar puede contener un valor arbitrario que puede generarte un resultado inesperado. Por eso es que se le asigna siempre un valor inicial, para que los resultados sean predecibles.

Saludos
84  Programación / Programación C/C++ / Re: Pasar numeros enteros arábigos a romanos, por donde empezar. en: 18 Mayo 2014, 18:15 pm
La variable i la debes inicializar a cero, si le pasas al programa un cinco el programa revienta por que en ese ambito el valor i es deconocido, contiene basura y al utilizarlo como indice sobrescribis otras direcciones de memoria

Saludos
85  Programación / Programación C/C++ / Re: Pasar numeros enteros arábigos a romanos, por donde empezar. en: 18 Mayo 2014, 16:55 pm
Ya tengo el código y creo que funciona bien, solo me queda saber como hacer para que desaparezcan esos caracteres basura que aparecen en el array, lei sobre la

Solo debes inicializarlo de esta manera

Código
  1. char digito_romano[20] = "";

Saludos
86  Programación / Programación C/C++ / Re: Duda del desplazamiento de los elementos de una matriz(norte,sur,este,oeste) en: 14 Mayo 2014, 18:21 pm
Segun lo que entendi podrias hacerlo algo asi, suponiendo que ya tenemos ubicado el elemento a mover con las coordenadas (x, y) y con un if verificamos si el movimiento que el usuario quiere hacer no exceda el limite de la matriz  
Editado:

Código
  1. switch(mov)
  2. {
  3.      case 'N':
  4.          if (x - pasos >= 0)
  5.            m[x-pasos][y] = m[x][y], m[x][y] = '.';
  6.      break;
  7.      case 'S':
  8.          if (x + pasos <= f-1)
  9.            m[x+pasos][y] = m[x][y], m[x][y] = '.';
  10.      break;
  11.      case 'E':
  12.          if (y - pasos >= 0)
  13.            m[x][y-pasos] = m[x][y], m[x][y] = '.';
  14.      break;
  15.      case 'O':
  16.  if (y + pasos <= c-1)
  17.            m[x][y+pasos] = m[x][y], m[x][y] = '.';
  18.      break;
  19. }
  20.  

Saludos
87  Programación / Programación C/C++ / Re: Ayuda nuevamente con este simple codigo en: 12 Mayo 2014, 23:44 pm
Al dividir 15/35 da 0.4... por lo tanto lo redondea a 0 y después al multiplicarlo por 100 sigue dando cero, ¿no?

Correcto, como ya sabes todo número multiplicado por cero da cero

Saludos
88  Programación / Programación C/C++ / Re: Ayuda nuevamente con este simple codigo en: 12 Mayo 2014, 23:38 pm
¿Y por qué el resultado es 0 haciendo las operaciones sin paréntesis?

En el codigo de Spiderboot al dividir el número de aprobados por el total, el resultado siempre es cero ya que en C siempre se trunca cualquier valor real donde interviene el tipo int pasandolo al entero mas cercano y luego al multiplicarlo por cien da el cero que mencionas

Saludos



89  Programación / Programación C/C++ / Re: Ayuda nuevamente con este simple codigo en: 12 Mayo 2014, 22:22 pm
Para sacar el porcentaje de aprobados y reprobados del total, la operación la debes cambiar a esta

Código
  1. paprobados = (alaprobados*100)/total;
  2. preprobados = (alreprobados*100)/total;

Utiliza el tipo float para obtener resultados mas precisos

Saludos.
90  Programación / Programación C/C++ / Re: dudas a la hora de programar en: 11 Mayo 2014, 04:01 am
bueno ya pude corregirlo.
y bueno aun que intente de varias formas al ultimo se soluciono con asignarle la misma direccion de memoria que la de la primera estructura.
lo que no entiendo bien es si lo que hace es tener  la misma direccion de memoria que la  primera estructura, no se supone que  tiene acceso a esas datos  por lo tanto al momento de decirle que agrege  a la variable nom el nombre se debera de modificar lo valores de hay.

La estructura datos y da son dos estructuras diferentes por lo tanto el puntero d de tipo da debe apuntar a una instancia de la estructura da en tu caso la asignas a una instancia de datos eso es una asignación incompatible, debe tirarte una warning

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