Display the First and Last name from a file using shell scripting

I am new to shell scripting and doing a similar thing @ work

Stan:Smith:Detroit:MI
Jim:Jones:Farmington Hills:MI
Jack:Frost:Denver:CO
Sue:Apple:New York:NY
Cindy:Thompson:Battle Creek:MI
John:Smith:Denver:CO
George:Jones:New York:NY

Need to create a shell script This script will display the following information in a menu format:
L - Print Last Names
F - Print First Names
C - Print First Name, Last Name sorted by city
S - Print First Name, Last Name, State sorted by state
Q - Exit the program

The script will perform all of the actions listed above on your file and loop until Q key is pressed.

I did the below but not working...

Code:
loop=y
while [ "$loop" = y ]
do
clear
tput cup 3 12; echo "P - Print Last Name"
tput cup 10 9; echo "Q - Quit: "
tput cup 10 19;
read choice || continue
case $choice in
[Pp]) less ~/export/home/mathews/homework2;;
[Qq]) exit ;;
*) tput cup 14 4; echo "Invalid Code"; read choice ;;
esac
done

Please help

Do not post classroom or homework problems in the main forums. Homework and coursework questions can only be posted in this forum under special homework rules.

Please review the rules, which you agreed to when you registered, if you have not already done so.

More-than-likely, posting homework in the main forums has resulting in a forum infraction. If you did not post homework, please explain the company you work for and the nature of the problem you are working on.

If you did post homework in the main forums, please review the guidelines for posting homework and repost.

Thank You.

The UNIX and Linux Forums.