Example 1: finding min and max from given number in java
Scanner input = new Scanner(System.in);
// Minimum And Maximum
int count = 0;
int min = 0;
int max = 0;
boolean bugSolved = true;
/* or we can use :
int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;
*/
while (true){
int cnt = count++;
System.out.print("Enter Number #"+(cnt+1)+": ");
boolean isValid = input.hasNextInt();
if(isValid){
int num = input.nextInt();
/* if (bugSolved){
bugSolved = false;
min = num;
max = num;
}
boolean (bugSolved) at the top, if you use
int min = Integer.MAX_VALUE and int max =
Integer.MIN_VALUE */
if (num < min) {
min = num;
}else if (num > max){
max = num;
}
}else{
System.out.println("Invalid input..");
break;
}
input.nextLine();
}
System.out.println("Min Number : " + min);
System.out.println("Max Number : " + max);
Example 2: java min function
void shift_solution(int & x, int & y, int a, int b, int cnt) {
x += cnt * b;
y -= cnt * a;
}
int find_all_solutions(int a, int b, int c, int minx, int maxx, int miny, int maxy) {
int x, y, g;
if (!find_any_solution(a, b, c, x, y, g))
return 0;
a /= g;
b /= g;
int sign_a = a > 0 ? +1 : -1;
int sign_b = b > 0 ? +1 : -1;
shift_solution(x, y, a, b, (minx - x) / b);
if (x < minx)
shift_solution(x, y, a, b, sign_b);
if (x > maxx)
return 0;
int lx1 = x;
shift_solution(x, y, a, b, (maxx - x) / b);
if (x > maxx)
shift_solution(x, y, a, b, -sign_b);
int rx1 = x;
shift_solution(x, y, a, b, -(miny - y) / a);
if (y < miny)
shift_solution(x, y, a, b, -sign_a);
if (y > maxy)
return 0;
int lx2 = x;
shift_solution(x, y, a, b, -(maxy - y) / a);
if (y > maxy)
shift_solution(x, y, a, b, sign_a);
int rx2 = x;
if (lx2 > rx2)
swap(lx2, rx2);
int lx = max(lx1, lx2);
int rx = min(rx1, rx2);
if (lx > rx)
return 0;
return (rx - lx) / abs(b) + 1;
}