aspose file tools*
The moose likes Java in General and the fly likes Abecedarian Testing - Problem with char's and While loops Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Java in General
Bookmark "Abecedarian Testing - Problem with char Watch "Abecedarian Testing - Problem with char New topic
Author

Abecedarian Testing - Problem with char's and While loops

Alex Richards
Greenhorn

Joined: Mar 07, 2011
Posts: 9
This in an exercise in my book:

Exercise 7.6
A word is said to be “abecedarian” if the letters in the word appear
in alphabetical order. For example, the following are all 6-letter English abecedarian
words.
abdest, acknow, acorsy, adempt, adipsy, agnosy, befist, behint, beknow,
bijoux, biopsy, cestuy, chintz, deflux, dehors, dehort, deinos, diluvy,
dimpsy

What this excercise wants us to do is simply test if a string is abecedarian or not. Here is my code so far:



... The output of this code is:

'Acknow' is an abecedarian?: true
'Sevenfold' is an abecedarian?: false
'Abcdefgh' is an abcedarian?: true
'Abcdefhg' is an abcedarian?: true

______________________________
What I noticed is that my while loop seems to only be testing for the first 2 letters of the string. Hence, it realizes that "sevenfold" is not abecedarian, but doesn't realize that "abcdefhg" is not either. What did I do wrong/what should I change in my program so that it tests ALL the letters in each string?
Joanne Neal
Rancher

Joined: Aug 05, 2005
Posts: 3556
    
  15
You never change the values of a and b in your loop, so all you are doing is continuously comparing the first and second letters.

You've also got way too many variables in there. Keep it simple and get rid of x (replace it with index), first and second (just use s.charAt()), a and b (you can compare chars using >, so you don't need to convert them to ints) and length (replace it with s.length()).


Joanne
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Abecedarian Testing - Problem with char's and While loops