#Pyth, 51 bytes
Pyth, 51 bytes
V.Wn100lHaZ+@Z_1@Z_2[1 1)|+*"Fibo"}2JPN*"Nacci"}3JN
Generates the Fibonacci sequence then decides what to print.
[1 1) - H = [1,1]
Wn100lH - While len(H)!=100
aZ+@Z_1@Z_2 - H.append(H[-1]+H[-2])
V. - For N in H:
JPN - Set J to the prime factorization of H
*"Fibo"}2J - If there is a 2 in the factorization, add "Fibo" to a string
*"Nacci"}3J - If there is a 3 in the factorization, add "Nacci" to a string
+ - Join them together
| N - If the string isn't empty (If it isn't divisible by 2 or 3), print N
- Else print the string
To test, try this (only does the first 20 numbers)
V.Wn20lHaZ+@Z_1@Z_2[1 1)|+*"Fibo"}2JPN*"Nacci"}3JN