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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Prevenir la introducción de un valor de punto flotante en un entero en: 25 Agosto 2011, 23:00 pm
Resulta que tengo un problema, tengo una variable entera, al introducir un numero que sea por ejemplo, .1, el programa, al momento de ejecutar se cicla y no hay manera de pararlo(solo con Ctrl + c). Eh intentado un montón de cosas pero ninguna funciona. :huh:
No eh podido implementar una excepción, intente con sentencias if, bucles while, del tipo "si n no es mayor que cero, no ejecutes", pero lo único que consigo es lo que esta en la screenshot de abajo. :-(
Aqui esta el pedazo de código en donde quiero implementar el "filtro":
Código
  1. int main(){
  2. /* PEDIR ELEMENTOS */
  3.  int n=0;
  4.  printf("numero de elementos para el vector:\n");
  5.  scanf("%d", &n);
  6. }


Horriblemente se cicla...

Gracias de antemano. :)

2  Programación / Programación C/C++ / Duda con bloque for al aumentar una variable en: 4 Agosto 2011, 05:36 am
Hola! (siento tener que publicar esto, pero por más que le di vueltas, no encuentro una respuesta)
Estoy practicando los bucles for y me surgió un "problema" que me saco de onda:
No encuentro como explicar mi "problema" sin antes mostrar la salida...

Salida:

i vale 0
i vale 1
i vale 2
i vale 3
i vale 4
imprime_i() INICIALIZADA
i vale 5


y aqui el codigo:
Código
  1. #include <stdio.h>
  2. void imprime_i(int x);
  3.  
  4. int main(){
  5.  int i, a = 5;
  6.  for(i=0; i < a; i++){
  7.    printf("i vale %d\n", i);
  8.  }
  9.  imprime_i(i);
  10.  return 0;
  11. }
  12.  
  13. void imprime_i(int x){
  14.  
  15.  printf("imprime_i() INICIALIZADA\n\
  16. i vale %d\n", x);
  17. }
  18.  
  19.  
  20.  

¿Por que se imprime 0 en el primer ciclo si se supone que se incrementa 1 y después se imprime? :-(
¿No se supone que tendría que valer 4 al final? :huh:

Aprovechando este post tengo una pregunta más:
Hice un programa que pide un valor numérico, pero al introducir una letra, se vuelve a repetir (como si fuera un bucle infinito) ¿como puedo hacer una excepción para controlar eso?

Gracias de antemano (:
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines