Below is a list of errors that probably everyone makes at some stage. You can always check over your code by enabling all warning messages. Consult any book on programming in Fortran to find out more.
- not remembering about integer division (1/2 = 0!)
- running over the bounds of your array
- not matching your parentheses, or matching wrong type of parentheses (emacs does a parentheses check, so if you use emacs properly this shouldn't be an issue...
If your program crashes or behaves unexpectly for some reason, then the generic debugger gdb and the memory analyser valgrind may help you out.