Quote:
import java.util.*;
public class Prelim5
{
public static void main(String args[])
{
int highestInt = -99999999, lowestInt =0,i =0, closestToZero, lowestPosi=999,highestNega=-999999;
String numbers = "[", forNumbersArray= "", forNumbersArrayLength ="";
int a = 0;
//int CHARACTER_IS_NUMBER = 9;
Scanner input = new Scanner(System.in);
System.out.println("String input: ");
String inputString = input.nextLine();
char inputStringArray [] = inputString.toCharArray();
for(int x = 0; x<inputStringArray.length; x++)
{
if(inputStringArray[x]== '-'){
while(inputStringArray[x+1]=='-'){x++;}
if(x==0){
if(Character.getType(inputStringArray[x+1])==Character.DECIMAL_DIGIT_NUMBER){
numbers += "-"+inputStringArray[x+1];
}
}else{
if(Character.getType(inputStringArray[x+1])==Character.DECIMAL_DIGIT_NUMBER){
numbers += ",-"+inputStringArray[x+1];
}
}
if(Character.getType(inputStringArray[x+1])==Character.DECIMAL_DIGIT_NUMBER){
forNumbersArray +="-"+ inputStringArray[x+1];
}
if(Character.getType(inputStringArray[x+1])==Character.DECIMAL_DIGIT_NUMBER){
forNumbersArrayLength +=inputStringArray[x+1];
}
x++; //x++;
}else if(Character.isDigit(inputStringArray[x])){
if(x==0){
numbers += inputStringArray[x];
}else{
numbers += ","+ inputStringArray[x];
}
forNumbersArray += inputStringArray[x];
forNumbersArrayLength +=inputStringArray[x];
}
else{
}
}
System.out.println("array :"+numbers+"]");
System.out.println("Length of original String: "+inputStringArray.length);
char numbersArrayLength [] = forNumbersArrayLength.toCharArray();
char numbersArray [] = forNumbersArray.toCharArray();
System.out.println("Length of array: "+numbersArrayLength.length);
//System.out.println("length katong taas: "+numbersArray.length);
//================================================== ============================
String theNumbers [] = new String [numbersArray.length];
for(int x = 0; x<numbersArray.length; x++)
{
if(numbersArray[x]== '-')
{
theNumbers [i] = "-"+numbersArray[x+1];
x++; //x++;
}
else
{
theNumbers [i] = numbersArray[x]+"";
}
i++;
}
int theNumbersConverted [] = new int [theNumbers.length];
for(int x=0; x<theNumbersConverted.length;x++)
{
try
{
theNumbersConverted[x] = Integer.parseInt(theNumbers[x]);
}catch(NumberFormatException nfe)
{
theNumbersConverted[x] = Integer.parseInt(theNumbers[0]);
}
}
for(int x = 0; x<theNumbersConverted.length;x++)
{
if(lowestInt>theNumbersConverted[x]){
lowestInt = theNumbersConverted[x];
}
if(highestInt<theNumbersConverted[x]){
highestInt = theNumbersConverted[x];
}else{
highestInt = highestInt;
}
}
/*
for(int x=0; x<theNumbersConverted.length;x++)
{
try
{
}catch(NumberFormatException nfe)
{
theNumbersConverted[x] = lowestInt;
}
}
*
*/
System.out.println("The highest int: "+highestInt);
System.out.println("The Lowest int: "+lowestInt);
for(int x =0; x<theNumbersConverted.length;x++)
{
//if(lowestPosi>theNumbersConverted[x])
//lowestPosi= theNumbersConverted[x];
if(theNumbersConverted[x]<0)
{
if(highestNega<theNumbersConverted[x])
highestNega = theNumbersConverted[x];
}
else
{
if(theNumbersConverted[x]==0){}
else if(lowestPosi>theNumbersConverted[x])
lowestPosi= theNumbersConverted[x];
}
}
closestToZero=lowestPosi;
if(lowestPosi<Math.abs(highestNega))
closestToZero= lowestPosi;
else if(lowestPosi>=Math.abs(highestNega))
closestToZero = highestNega;
//System.out.println("Lowest Positive: "+lowestPosi);
//System.out.println("Highest Negative: "+highestNega);
System.out.println("Closest int to zero: "+closestToZero);
}
}