Reputation: 29
import java.io.*;
import java.util.*;
public class Grade
{//class
public static void main (String [] args)
{//main
Scanner keyBoard = new Scanner(System.in);
int [] gradeFreq = new int [101];`enter code here`
int input = 0;
System.out.print ("Enter next grade: ");
input = keyBoard.nextInt();
while(input >= 0){
gradeFreq[input]++;
System.out.print("Please enter next grade");
input = keyBoard.nextInt();
}
System.out.print ("To show results in ascending order press 1... or 2 for descending");
input = keyBoard.nextInt();
switch(input){
case 1:
printUp(gradeFreq);
break;
case 2:
printDown(gradeFreq);
break;
}
public static void printUp(int[] array){
System.out.print("Ascending");
for(int i = 0; i < array.length; i++){
if(array[i] > 0)
System.out.printf("%5d\t%5d\n",i,array[i]);
}
}
public static void printDown(int[] array){
System.out.print("Descending");
for(int i = 0; i < array.length; i--){
if(array[i] > 0)
System.out.printf("%5d\t%5d\n",i,array[i]);
}
}
}//end of main
}//end of class
And i have this error.
Grade.java:37: error: illegal start of expression
public static void printUp(int[] array){
^
Grade.java:37: error: illegal start of expression
public static void printUp(int[] array){
^
Grade.java:37: error: ';' expected
public static void printUp(int[] array){
^
Grade.java:37: error: '.class' expected
public static void printUp(int[] array){
^
Grade.java:37: error: ';' expected
public static void printUp(int[] array){
^
Grade.java:44: error: illegal start of expression
public static void printDown(int[] array){
^
Grade.java:44: error: illegal start of expression
public static void printDown(int[] array){
^
Grade.java:44: error: ';' expected
public static void printDown(int[] array){
^
Grade.java:44: error: '.class' expected
public static void printDown(int[] array){
^
Grade.java:44: error: ';' expected
public static void printDown(int[] array){
^
10 errors
----jGRASP wedge2: exit code for process is 1.
----jGRASP: operation complete.
I am simply trying to use a method to display my array in ascending or descending order(depending on what the user chooses). When I compile the code i get about 10 errors all on the first line of each method. I have looked it up on google and I couldn't find anything useful. Please Help me out. ----jGRASP exec: javac -g Grade.java
Upvotes: 0
Views: 1523
Reputation: 14413
You can't declare a method inside a method.
public static void main(String args []){
// your code here..
}
public static void printUp(int[] array){
System.out.print("Ascending");
for(int i = 0; i < array.length; i++){
if(array[i] > 0)
System.out.printf("%5d\t%5d\n",i,array[i]);
}
}
public static void printDown(int[] array){
System.out.print("Descending");
for(int i = 0; i < array.length; i--){
if(array[i] > 0)
System.out.printf("%5d\t%5d\n",i,array[i]);
}
}
If you don't indent your code you'll never understand what you wrote. By the way i don't think that your printUp
and printDown
method is going to do what you want. First you have to sort the array i think.
Upvotes: 3