ok in my java programming class i am supposed to do this:

CA 141 Lab 5
Write a program which will manage test grades for a class of up to 30 students. The description below will describe each function in the program in turn.

main will continously ask the user for a menu selection until the user choses the exit menu choice. Each selection below has its action defined:

1. Input Grades calls get_grades function
2. List Grades calls list_grades function
3. Change Grade calls change_grade function
4. Convert Grades calls convert_grades function
5. Exit exits the program with a message

The function prototypes for these functions are:

int get_grades(int a[ ]);
void list_grades(int a[ ], int end);
void change_grade(int a[ ], int end);
void convert_grades(int a[ ], int end);

The main function will also define the array of integers to hold grades as well as an integer that indicates the number of valid array elements.

get_grades will prompt the user for up to 30 grades, but allow the user to stop at any time by entering any negative number. Allowable values will be 0 - 100. The function returns the number of valid grades in the array. And if a negative number is entered to stop the entry process, it will not be considered a valid number

list_grades will list the valid grades in the array passed to it using the integer end to list only valid grades. The two functions following also use end in the same manner

change_grades will call list_grades and then ask the user which grade should be changed. The user will input the new grade and it will be placed in the appropriate place in the array. convert_grades will list each valid grade and its equilivant letter grade, one set per line. A switch statement must be used to do the number to letter conversion.

A script will look like this:

Welcome to grades

1 - Input Grades
2 - List Grades
3 - Change Grades
4 - Convert Grades
5 - Exit

Enter Choice 1

Input Grades - any negative number will end input

Input Element 0: 78
Input Element 1: 82
Input Element 2: 100
Input Element 3: -4

1 - Input Grades
2 - List Grades
3 - Change Grades
4 - Convert Grades
5 - Exit

Enter Choice 2

Element 0: 78
Element 1: 82
Element 2: 100


1 - Input Grades
2 - List Grades
3 - Change Grades
4 - Convert Grades
5 - Exit

Enter Choice 3

Element 0: 78
Element 1: 82
Element 2: 100

Enter element number: 1

Enter new value for element 1: 88

1 - Input Grades
2 - List Grades
3 - Change Grades
4 - Convert Grades
5 - Exit

Enter Choice 4

The letter grades are:
78 C
88 B
100 A

1 - Input Grades
2 - List Grades
3 - Change Grades
4 - Convert Grades
5 - Exit

Enter Choice 5

goodbye
This is what i have so far on my program:

Code:
import java.io.*;

public class lab5_141
{
   public static void main (String [] args)
   {
        int choice;
        final int max = 30;
        int a[] = new int[max];
        int end = 0;

        do
        {       System.out.println("1. Input Grades");
                System.out.println("2. List Grades");
                System.out.println("3. Change Grades");
                System.out.println("4. Convert Grades"); 
                System.out.println("5. Exit");
                System.out.println();
                System.out.print("Enter your choice ");
                choice = MyInput.readInt();
                System.out.println(); 
                        
                switch(choice)
                {
                
                        case 1: end = get_grades(a, max);
                                break;
                        case 2: list_grades(a, end);
                                break;
                        case 3: change_grades(a, end);
                                break;
                        case 4: convert_grades(a, end);

                                break;
                        case 5: break;
                //              default:  System.out.println("invalid");
                }
            }while(choice !=5);
            {
            System.out.println("Goodbye");
            }
   
   }

   static void list_grades(int a[], int max)
   {
      System.out.print("\n");
      for(int i=0; i < max; i++)
                System.out.println(a[i]);
        System.out.println();
   }

   static void change_grades(int a[], int max)
   {
        int i;
        System.out.print("Enter which element to change: ");
        int s = MyInput.readInt();

        for(i=0; i < max; i++)
         if (s == a[i])
                break;

         if (i == max)
           System.out.println(" no match");

         else
        {
           System.out.println("match on element #" + i);
           System.out.print("Enter new value for this element: ");
           a[i] = MyInput.readInt();

        }
        list_grades(a, max);
          
// get score to change
// loop to find element number
// if you can find it, ask for new value
// replace
// for
   }
         
   static int get_grades(int a[], int max)
   {
                  
         
        System.out.println("Enter Grades (1 to 100), negative to end: ");
        int i;
          for(i=0;i < max;i++)
          {

           System.out.print("Element " + i +" ");
           a[i] = MyInput.readInt();
          if ((a[i] < 0) || (a[i] > 100))
                break;
          }
        return i;

}
   static void convert_grades(int a[], int max)
        {
        int i;
                for(i=0; i< max; i++)
                  System.out.print(a[i] + "  ");
         
        a[i] /=10;
        
        switch(a[i])
              {

                case 10: System.out.print("Perfect A");
                                   break;
                case 9:  System.out.print("A");
                                   break;
                case 8:  System.out.print("B");
                                   break;
                case 7:   System.out.print("C");
                                   break;
                case 6:   System.out.print("D");
                                   break;
                case 5:   System.out.print("F");
                                   break;             
              } 

                             
        // print element number, score, with print
        // integer divide score by 10
        // switch on the divided value
        // case 10   - perfect
        //case 9 90-99 println("A");
       // case 8  90-89
                                
        }       
                
                                
        
 }
The problem is when i run it everything works except option 4 (convert_grades). I will put numbers in for the grade, list them, and when i try to convert all it does is relist the numbers again. It seems like it isnt going through the lat switch statement at all. I have tried to ask my professor about this many times but he doesnt explain anything i can understand so i was hoping you guys could help me out.
Thanks