fork download
  1. #include <xc.h>
  2. #include <stdint.h>
  3.  
  4. #define _XTAL_FREQ 8000000 // Frecuencia del oscilador (8 MHz)
  5. #define N 5 // Número de términos de la serie
  6.  
  7. // Configuración de bits (puedes ajustarlos según tu proyecto)
  8. #pragma config FOSC = INTOSC_EC // Oscilador interno
  9. #pragma config WDT = OFF
  10. #pragma config LVP = OFF
  11. #pragma config PBADEN = OFF
  12. #pragma config MCLRE = ON
  13.  
  14. void main(void) {
  15. uint8_t fib[N]; // Arreglo para guardar los términos de Fibonacci
  16. uint8_t i;
  17.  
  18. // Inicialización de los dos primeros términos
  19. fib[0] = 0;
  20. fib[1] = 1;
  21.  
  22. // Calcular y guardar los términos restantes
  23. for (i = 2; i < N; i++) {
  24. fib[i] = fib[i - 1] + fib[i - 2];
  25. }
  26. fib[1]
  27. // En este punto, los valores están en fib[0] a fib[N-1]
  28. // Puedes enviar fib[i] por USART, mostrarlos en un LCD, etc.
  29.  
  30. while (1); // Bucle infinito
  31. }
  32.  
Success #stdin #stdout 0.03s 25656KB
stdin
N=10
resultado
stdout
#include <xc.h>
#include <stdint.h>

#define _XTAL_FREQ 8000000  // Frecuencia del oscilador (8 MHz)
#define N 5              // Número de términos de la serie

// Configuración de bits (puedes ajustarlos según tu proyecto)
#pragma config FOSC = INTOSC_EC // Oscilador interno
#pragma config WDT = OFF
#pragma config LVP = OFF
#pragma config PBADEN = OFF
#pragma config MCLRE = ON

void main(void) {
    uint8_t fib[N];     // Arreglo para guardar los términos de Fibonacci
    uint8_t i;

    // Inicialización de los dos primeros términos
    fib[0] = 0;
    fib[1] = 1;

    // Calcular y guardar los términos restantes
    for (i = 2; i < N; i++) {
        fib[i] = fib[i - 1] + fib[i - 2];
    }
	fib[1]
    // En este punto, los valores están en fib[0] a fib[N-1]
    // Puedes enviar fib[i] por USART, mostrarlos en un LCD, etc.

    while (1);  // Bucle infinito
}