Page 1 of 3 123 LastLast
Results 1 to 10 of 26
  1. #1
    Elite Member
    Join Date
    May 2011
    Gender
    Male
    Posts
    1,465

    Default Help in java. Arrays


    1. Ask of a specific String
    2. The array will only contain integral values
    3. Display the length of the original String
    4. Display the length of the array
    5. Display the highest integer of the array
    6. Display the lowest integer of the array
    7. Display the closest int to zero


    ex.
    String input: a97r2-5x1-1
    Array: [9,7,2,-5,1,-1]
    Length of String: 11
    Length of Array: 6
    Highest int = 9
    Lowest int = -5
    Int Closest to zero= 1(if the there are two int closest to zero like -1 and 1, it should be the negative)


    here is my source code pero libog ko, pwede patabang? TIA!:weep:


    Code:
    import java.util.Scanner;
    import java.util.*;
    import javax.swing.*;
    
    
    public class Prelim3 
    {
        public static void main(String args[])
        {
            
            int highestInt = 0, lowestInt =0;
            Scanner input = new Scanner(System.in);
            
            System.out.println("String input: ");
            String inputString = input.nextLine();
            
            int i =0, minus=0;
            
            String numbers = "[", forNumbersArray= "", forNumbersArrayLength ="";
            
            char inputStringArray [] = inputString.toCharArray();
            
            
            
            
            for(int x = 0; x<inputStringArray.length; x++)
            {
                if(Character.isDigit(inputStringArray[x]))
                {
                     if(x==0)
                     numbers += inputStringArray[x];
                     else
                     numbers += ","+ inputStringArray[x];
                
                     forNumbersArray += inputStringArray[x];
                    
                     forNumbersArrayLength +=inputStringArray[x];
                    
               }
                
                else if(inputStringArray[x]== '-')
                {  
                    
                    
                    if(x==0)
                        numbers += "-"+inputStringArray[x+1];
                        
                        
                    else
                        numbers += ","+"-"+inputStringArray[x+1];
                    
                    forNumbersArray +="-"+ inputStringArray[x+1];
                    forNumbersArrayLength +=inputStringArray[x+1];
                    
                    x++; //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);
           
           
           //DRI MAGSUGOD ANG PROBLEMA
     //=================================================================   
       
           /*  ******tang.tanga lng comment***
            
           String theNumbers [] = new String [numbersArray.length];
           for(int x = 0; x<inputStringArray.length; x++)
           {
               if(numbersArray[x]== '-')
                {  
                    theNumbers [i] = "-"+numbersArray[x+1];
                     x++; //x++;
                }
                else
                {
                    theNumbers [i] = numbersArray[x]+"";
                }
                i++;
               
           }
          
           
           
           
           for(int x = 0; x<theNumbers.length;x++)
           {
               
               System.out.println("theNumbers ["+x+"]= "+theNumbers[x]);
           }
           
           int theNumbersConverted [] = new int [theNumbers.length];
           
           for(int x=0; x<theNumbersConverted.length;x++)
           {
               
               theNumbersConverted[x] = Integer.parseInt(theNumbers[x]);//problema sad ni
               /nganu di ma converte ang array na String into array int? sakto man ta syntax
               
               
           }
           
           for(int x = 0; x<theNumbersConverted.length;x++)
           {
               if(highestInt<theNumbersConverted[x])
                   highestInt = theNumbersConverted[x];
               else
                   highestInt = highestInt;
               
           }
           
           
           
           System.out.println("The highest int: "+highestInt);
            
            
            
            
            * 
            */
            
            
        }
        
        
    }

  2. #2

    Default Re: Help in java. Arrays

    Code:
    import java.util.*;
    
    
    public class Prelim3 
    {
        public static void main(String args[])
        {
            
            int highestInt = 0, lowestInt =0;
            Scanner input = new Scanner(System.in);
            
            System.out.println("String input: ");
            String inputString = input.nextLine();
            
            int i =0, minus=0;
            
            String numbers = "[", forNumbersArray= "", forNumbersArrayLength ="";
            
            char inputStringArray [] = inputString.toCharArray();
            
            
            for(int x = 0; x<inputStringArray.length; x++){
                if(Character.isDigit(inputStringArray[x])){
                     if(x==0){
                         numbers += inputStringArray[x];
                     }else{
                         numbers += ","+ inputStringArray[x];
                     }
                     
                     forNumbersArray += inputStringArray[x];
                     forNumbersArrayLength +=inputStringArray[x];
                    
               }else if(inputStringArray[x]== '-'){  
                    if(x==0){
                        numbers += "-"+inputStringArray[x+1];
                    }else{
                        numbers += ",-"+inputStringArray[x+1];
                    }
                    forNumbersArray +="-"+ inputStringArray[x+1];
                    forNumbersArrayLength +=inputStringArray[x+1];
                    x++; //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){
                   
               }
               
           }
           
           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;
               }
               
           }
           System.out.println("The highest int: "+highestInt);
           System.out.println("The Lowest int: "+lowestInt);
        }
    }
    Try bro..

    First problem was, ang inputStringArray gihapon imu gi-FOR LOOP instead of numbersArray.

    Second problem, is gi-convert nimo to numbers, then kung aduna'y letters di man ma-convert og mag error man..
    so, gi-allow nato mo-continue sa error using

    try
    {

    }catch(NumberFormatError error)
    {

    }

  3. #3
    Elite Member
    Join Date
    May 2011
    Gender
    Male
    Posts
    1,465

    Default Re: Help in java. Arrays

    @thank you kaau bai stealthgost ha. ako ning sabton maau imo post. ang ako nlng ani buhaton kai kuhaon ang number nearest zero.

    pasabta ko anang try catch(NumberFormatException nfe) beh. ehehehe
    Last edited by jairoh_; 01-31-2012 at 07:37 PM.

  4. #4

    Default Re: Help in java. Arrays

    bro, try ni. kaw nalang limpyo. ako jud ni code para nmo

    Code:
    import java.util.Scanner;
    
    class ArrayNumbers{
    	public static void main(String[] args){
    		try{
    			Scanner in = new Scanner(System.in);
    			System.out.print("String input: ");
    			String str = in.nextLine();
    			new ArrayNumbers().process(str);
    		}catch(Exception e){
    			System.err.println("Error running program.");
    		}
    	}
    	
    	private void process(String str){
    		String digits = removeTrailing(",", extractString(str));
    		int[] arrayInt = convertToIntArray(digits);
    		int highestInt = getHighestInt(arrayInt);
    		int lowestInt = getLowestInt(arrayInt);
    		int closestToZero = getClosetToZero(arrayInt);
    		display(str, digits, arrayInt, highestInt, lowestInt, closestToZero);
    	}
    	
    	private void display(String inputString, String digitsArray, int[] intArray, int highestInt, int lowestInt, int closestToZero){	
    		System.out.println("Array: [" + digitsArray + "]");
    		System.out.println("Length of String: " + inputString.length());
    		System.out.println("Length of Array: " + intArray.length);
    		System.out.println("Highest int: " + highestInt);
    		System.out.println("Lowest int: " + lowestInt);
    		System.out.println("Closest to zero: " + closestToZero);
    	}
    	
    	private String extractString(String str){
    		char[] ch = str.toCharArray();
    		String digits = "";
    		for(char c : ch){
    			if(c == '-'){
    				digits += Character.toString(c);
    			}else if(Character.isDigit(c)){
    				if(c == '0')
    					digits = removeTrailing("-", digits);
    				digits += Character.toString(c) + ",";
    			}
    		}
    		return digits;
    	}
    	
    	private String removeTrailing(String pattern, String digitStr){
    		if(digitStr.lastIndexOf(pattern) > -1){
    			digitStr = digitStr.substring(0, digitStr.length()-1);
    		}
    		return digitStr;
    	}
    	
    	private int[] convertToIntArray(String digits){
    		String[] arrayStr = digits.split(",");
    		int[] arrayInt = new int[arrayStr.length];
    		for(int i=0;i<arrayStr.length;i++){
    			arrayInt[i] = Integer.parseInt(arrayStr[i]);
    		}
    		return arrayInt;
    	}
    	
    	private int getHighestInt(int[] ar){
    		int temp = 0;
    		for(int a : ar){
    			if(a > temp)
    				temp = a;
    		}
    		return temp;
    	}
    	
    	private int getLowestInt(int[] ar){
    		int temp = ar[0];
    		for(int a : ar){
    			if(a < temp)
    				temp = a;
    		}
    		return temp;
    	}
    	
    	private int getClosetToZero(int[] ar){
    		int[] posArray = {1,2,3,4,5,6,7,8,9};
    		int[] negArray = {-1,-2,-3,-4,-5,-6,-7,-8,-9};
    		
    		int posIndex = getIntIndex(getLowestPositiveInt(ar), posArray);
    		int negIndex = getIntIndex(getHighestNegativeInt(ar), negArray);
    		
    		int closest = 0;
    		if(posIndex < negIndex)
    			closest = posArray[posIndex];
    		else if(posIndex > negIndex || posIndex == negIndex)
    			closest = negArray[negIndex];
    		return closest;
    	}
    	
    	private int getIntIndex(int idx, int[] array){
    		for(int i=0;i<array.length;i++){
    			if(array[i] == idx)
    				return i;
    		}
    		return 0;
    	}
    	
    	private int getLowestPositiveInt(int[] ar){
    		int temp = 9;
    		for(int a : ar){
    			if(a > 0){
    				if(a < temp)
    					temp = a;
    			}
    		}
    		return temp;
    	}
    	
    	private int getHighestNegativeInt(int[] ar){
    		int temp = -9;
    		for(int a : ar){
    			if(a < 0){
    				if(a > temp)
    					temp = a;
    			}
    		}
    		return temp;
    	}
    }

  5. #5

    Default Re: Help in java. Arrays

    pasabta ko anang try catch(NumberFormatException nfe) beh. ehehehe
    bro, better google it and you'll be surprised how it works

  6. #6

    Default Re: Help in java. Arrays

    String: GwapoAko14344GwapoAko

    if i-convert ni nimo to Integer (whole number), di nimo ma-convert ang "GwapoAko" nga word.

    try catch statement will allow you to continue on (ignore errors and current value will be equal to null) or you can create an error trap inside catch statement,

    Code:
    String k = "143HI";
    try{
         Integer.parseInt(k);
    }catch(NumberFormatException nfe){
         //TRAPPING ERRORS AND DO SOMETHING
         //Change "HI" to it's equivalent number in alphabet
         //Example:
         // H = 8
         // I =  9
         // k = "14389"
         // Integer.parseInt(k);
    }

  7. #7
    Elite Member
    Join Date
    May 2011
    Gender
    Male
    Posts
    1,465

    Default Re: Help in java. Arrays

    @thinkspace, murag malibog ko anang imo kai ikaw mai gahimo gud. mas maau ta ug naai mga comments. hehe pero salamat, ako lng sabton. ka sweto nimo, hasta sa uyab2x sweto
    @stealthghost, lamat au bro

    bro asa ta maka.skwela na nindot na skul para sa programming? kai naa man ko dumaguete gud nya nahan ko muuli Cebu nya anha tiwas. ayaw lng sa USC. ok ra informatics?
    Last edited by jairoh_; 02-01-2012 at 08:13 AM.

  8. #8

    Default Re: Help in java. Arrays

    wa ko kahibaw asa nindut bro, pero try sa TESDA, basin naa pa sila'y offer nga training.

    Basin tagaan pa ka certificate inig human or ma-absorb sa company. NCR to sauna ang nag training didto.

  9. #9
    Elite Member
    Join Date
    May 2011
    Gender
    Male
    Posts
    1,465

    Default Re: Help in java. Arrays

    bro nako problema >>
    try
    String input:
    -3-A101B3
    array :[-3,-1,0,1,3] //ang ako kai [-3,-A,1,0,1,3]
    Length of original String: 9
    Length of array: 5 // ang ako kai 6
    The highest int: 3
    The Lowest int: -3
    Closest int to zero: 1


    //ok nani cya kung wai String value
    String input:
    ---------5---------3
    array :[,-5,-3]
    Length of original String: 20
    Length of array: 2
    The highest int: -3
    The Lowest int: -5
    Closest int to zero: -3

    if ang input kai: -b/b kai mu error


    Code:
    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 ="";
            
            
            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(Character.isDigit(inputStringArray[x])){
                     if(x==0){
                         numbers += inputStringArray[x];
                     }else{
                         numbers += ","+ inputStringArray[x];
                     }
                     
                     forNumbersArray += inputStringArray[x];
                     forNumbersArrayLength +=inputStringArray[x];
                    
               }
                else if(inputStringArray[x]== '-'){
                    
                   while(inputStringArray[x+1]== '-'){x++;}//mao dakop sa --------
                    
                  //if(Character.isDigit(inputStringArray[x])){}
                    if(x==0){
                        numbers += "-"+inputStringArray[x+1];
                    }else{
                        numbers += ",-"+inputStringArray[x+1];
                    }
                    forNumbersArray +="-"+ inputStringArray[x+1];
                    forNumbersArrayLength +=inputStringArray[x+1];
                    x++; //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]== '-')
                {  
                    //while(theNumbers[x+1].equalsIgnoreCase("-") ){x++;}//mao ni dakop sa --------
                    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);
        
           
           
        
        }
    }
    Last edited by jairoh_; 02-01-2012 at 01:14 PM.

  10. #10

    Default Re: Help in java. Arrays

    based sa imu code, ang "-" allowed mabutang sa second array (theNumbers) og wala nimo na-check if ang next nga character is number or letter.

    Code:
    for(int x = 0; x<numbersArray.length; x++)
           {
               if(numbersArray[x]== '-')
                {  
                    //while(theNumbers[x+1].equalsIgnoreCase("-") ){x++;}//mao ni dakop sa --------
                    theNumbers [i] = "-"+numbersArray[x+1];
                     x++; //x++;
                }
                else
                {
                    theNumbers [i] = numbersArray[x]+"";
                }
                i++;
               
           }
    String input:
    -s-b-f-r-s34132
    array :[-s,-b,-f,-r,-s,3,4,1,3,2]

    Mao ni ang output. wala nimo na-trap nga numbers ra ang mabutang diha after "-" sign which is dapat integer ra ang mo-gawas..

    pwede nimu butangan og try catch diha gihapon and i-parse ang character before nimo butangan og "-" sign..


    _________________________________
    EDIT: ang variable d.i nga "numbers" mao butangi og trap.

    Code:
    for(int x = 0; x<inputStringArray.length; x++)
            {
                if(Character.isDigit(inputStringArray[x])){
                     if(x==0){
                         numbers += inputStringArray[x];
                     }else{
                         numbers += ","+ inputStringArray[x];
                     }
                     
                     forNumbersArray += inputStringArray[x];
                     forNumbersArrayLength +=inputStringArray[x];
                    
               }
                else if(inputStringArray[x]== '-'){
                    
                   while(inputStringArray[x+1]== '-'){x++;}//mao dakop sa --------
                    
                  //if(Character.isDigit(inputStringArray[x])){}
                    if(x==0){
                        numbers += "-"+inputStringArray[x+1];
                    }else{
                        numbers += ",-"+inputStringArray[x+1];
                    }
                    forNumbersArray +="-"+ inputStringArray[x+1];
                    forNumbersArrayLength +=inputStringArray[x+1];
                    x++; //x++;
               }
               else{
               
               }
            }
    diri dapita butangi og try catch for number format...
    Last edited by stealthghost; 02-01-2012 at 02:20 PM.

  11.    Advertisement

Page 1 of 3 123 LastLast

Similar Threads

 
  1. Need Help in java. AGAIN! =)
    By jairoh_ in forum Programming
    Replies: 11
    Last Post: 02-29-2012, 08:13 AM
  2. Help in java
    By jairoh_ in forum Programming
    Replies: 12
    Last Post: 01-11-2012, 10:22 AM
  3. Need help in JAVA plsss.. help 25problems..
    By FrozenBoi in forum Programming
    Replies: 89
    Last Post: 02-09-2010, 02:26 PM
  4. NEED HELP in JAVA EXCELAPI
    By rastaman81 in forum Programming
    Replies: 1
    Last Post: 05-11-2009, 09:17 PM
  5. need help in java programming: creating a folder
    By rastaman81 in forum Programming
    Replies: 4
    Last Post: 03-11-2009, 08:51 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
about us
We are the first Cebu Online Media.

iSTORYA.NET is Cebu's Biggest, Southern Philippines' Most Active, and the Philippines' Strongest Online Community!
follow us
#top