Call method(s) within the same class
I am new to programming and Java. I am trying to make 3 methods. One gets the largest number, one gets the middle, and the last gets the smallest. I do not think I created them correctly. I am getting a compiler error in Jgrasp saying illegal start to expression for
each method. Then how do I call them? Here is my code:
Code :
import java.util.*;
public class Ch4_PrExercise2
{
public static void main(String [] args)
{
Scanner console = new Scanner(System.in);
int num1, num2, num3;
System.out.println("Please input 3 numbers separated by spaces: ");
System.out.println();
num1 = console.nextInt();
num2 = console.nextInt();
num3 = console.nextInt();
public int largest()
{
if(num1 > num2 && num1 > num3)
return num1;
else if(num2 > num1 && num2 > num3)
return num2;
else if(num3 > num1 && num3 > num2)
return num3;
}
public int smallest()
{
if(num1 < num2 && num1 < num3)
return num1;
else if(num2 < num1 && num2 < num3)
return num2;
else if(num3 < num1 && num3 < num2)
return num3;
}
public int middle()
{
if((num1 < num2 && num1 >num3) || (num1 > num2 && num1 < num3))
return num1;
else if((num2 > num1 && num2 < num3) || (num2 < num1 && num2 >num3))
return num2;
else if((num3 > num2 && num3 < num1) || (num3 < num2 && num3 > num1))
return num3;
}
System.out.println("Your numbers in nondescending order are: " + " " + smallest() + " " + middle() + " " largest());
}
}
thanks in advance
Re: Call method(s) within the same class
try this:
Code Java:
import java.util.*;
public class TestIf
{
public static void main(String [] args)
{
Scanner console = new Scanner(System.in);
int num1, num2, num3, smallest, largest, middle;
System.out.println("Please input 3 numbers separated by spaces: ");
System.out.println();
num1 = console.nextInt();
num2 = console.nextInt();
num3 = console.nextInt();
smallest= smallest(num1, num2, num3);
largest= largest(num1, num2, num3);
middle= middle(num1, num2, num3);
System.out.println("Your numbers in nondescending order are: " + " " + smallest + " " + middle + " " + largest);
}
public static int largest(int num1, int num2, int num3)
{
if(num1 > num2 && num1 > num3)
return num1;
else if(num2 > num1 && num2 > num3)
return num2;
else if(num3 > num1 && num3 > num2)
return num3;
return 0;
}
public static int smallest(int num1, int num2, int num3)
{
if(num1 < num2 && num1 < num3)
return num1;
else if(num2 < num1 && num2 < num3)
return num2;
else if(num3 < num1 && num3 < num2)
return num3;
return 0;
}
public static int middle(int num1, int num2, int num3)
{
if((num1 < num2 && num1 >num3) || (num1 > num2 && num1 < num3))
return num1;
else if((num2 > num1 && num2 < num3) || (num2 < num1 && num2 >num3))
return num2;
else if((num3 > num2 && num3 < num1) || (num3 < num2 && num3 > num1))
return num3;
return 0;
}
}
Re: Call method(s) within the same class
Re: Call method(s) within the same class
actually it didn't
here's the compiler errors I got:
----jGRASP exec: javac -g Ch4_PrExercise2.java
Ch4_PrExercise2.java:27: error: illegal start of expression
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: illegal start of expression
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: ';' expected
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: '.class' expected
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: ';' expected
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: <identifier> expected
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: not a statement
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:27: error: ';' expected
public static int largest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: illegal start of expression
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: illegal start of expression
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: ';' expected
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: '.class' expected
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: ';' expected
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: <identifier> expected
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: not a statement
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:40: error: ';' expected
public static int smallest(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: not a statement
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: ';' expected
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: ';' expected
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: <identifier> expected
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: not a statement
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: ';' expected
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:51: error: ';' expected
publicstatic int middle(int num1, int num2, int num3)
^
Ch4_PrExercise2.java:64: error: ')' expected
System.out.println("Your numbers in nondescending order are: " + " " + smallest + " " + middle + " " largest);
^
Ch4_PrExercise2.java:64: error: illegal start of expression
System.out.println("Your numbers in nondescending order are: " + " " + smallest + " " + middle + " " largest);
^
25 errors
----jGRASP wedge2: exit code for process is 1.
----jGRASP: operation complete.
Re: Call method(s) within the same class
Did you make sure to change the class name back? I changed it so it would work in my project
Re: Call method(s) within the same class
Re: Call method(s) within the same class
I am an idiot, it works fine.
2 typos cause all those errors.
thank you!
Re: Call method(s) within the same class
Haha don't worry about it. Happens to everyone. Glad I could help
Re: Call method(s) within the same class
Bertorox, it's good that you helped him, but next time better not feed spoon. You must stick with the forum rules.
Thanks