세 말은 모두 '하다'에서 온 것이지만, 조금씩 뜻에 차이가 있습니다.
1. '해야지'- 자기 자신에게 쓸 때에는 혼잣말하듯이 의지를 드러내는 표현입니다.
'오늘은 공부해야지.'와 같이, 공부를 하겠다는 의지를 드러냅니다.
'다른 사람에게 쓸 때는, '나지하, 오늘은 공부해야지?'와 같이 동의를 구하는 표현으로도 쓰입니다.
2. 해야겠다 - '나는 내일 공부를 해야겠다'처럼, 역시 말하는 사람의 의지를 드러내는 표현입니다. 1번과 의미가 거의 유사하지만 좀 더 강한 의지가 드러납니다.
그리고 '`겠다'가 미래를 추측하는 경우도 있습니다. (내일 비가 오겠다. - 비가 올 지도 모른다는 추측입니다.)
3. '해야 되'는 '해야 돼.'라고 표현해야 합니다. 받침이 오면, '해야 된다'가 되지만, 이 경우에는 '해야 돼'가 맞습니다. '해야 돼'는 '어떤 일이 이루어져야 한다'라는 뜻입니다. 'have to'의 의미가 강합니다.
'formal form'은 정확히 뭘 말하는지 몰라서...