• Support PF! Buy your school textbooks, materials and every day products via PF Here!

More CompSci homework help needed

  • Thread starter JasonJo
  • Start date
429
2
hey I need to write a Java program to ask the user for a string input, that should be a binary number. i am to check if the string input is a valid binary number and then convert it into decimal. i know how to program the converting into decimal, but i am having a nightmare as to checking whether or not it is a binary number.

i used the following if condition in my program (psuedo code is used to simpifly it)

num1 = the string to be input by the user
i = 0;
z = length of the string
while (i < z)
if (character i of the string is not equal to 0 and it is not equal to 1) //character i would be the 0th character, using 0 indexing
print the number input is not a valid binary number
else
i = i + 1 //search the entire string

anyone see why i cant seem to properly check to see if its a binary number?

thanks a lot
 
check brackets and if your if condition is indeed the one you put there.

OR you can revers the if and else.

plus you don't have a termination condition. to exit while loop
 
Last edited:
35
0
Try:

Code:
String input = <input from user>...

for (int i = 0; i < input.length(); i++) {
    if ((input.charAt(i) != '0') && (input.charAt(i) != '1')) {
        // error and quit...
    }
}

// success
 

Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving
Top