Para empezar falta realizar la validación del numero introducido por el usuario.
El programa no funciona correctamente ya que en cada iteracion del bucle calculas el siguiente numero de la serie fibonacci, ello solo debes hacerlo cuando alcances ese numero (al imprimir los números entre este y el anterior).
El programa corregido:
Un saludo
El programa no funciona correctamente ya que en cada iteracion del bucle calculas el siguiente numero de la serie fibonacci, ello solo debes hacerlo cuando alcances ese numero (al imprimir los números entre este y el anterior).
El programa corregido:
Código (c) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
long num;
long i;
long a;
long b;
long aux;
scanf("%ld", &num);
a = 3;
b = 5;
for (i = 4; i < num; i++)
if (i != b)
printf(" %ld", i);
else {
aux = a + b;
a = b;
b = aux;
}
putchar('\n');
return EXIT_SUCCESS;
}
Un saludo