Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free triallee lewis
Courses Plus Student 5,796 Pointsneed help... this problems too hard
can somebody help me with this please... ive been stuck on it for 2 days and i'm getting nowhere. The previous answer I got from Tony Gemenie doesnt work... first because it doesnt recognise "startsWith" method... if thats a thing... second because its saying that ive not included "Mandela" and 3rd because it wont except 2 if statements as suggested in previous answer by Tony Gemenie.
also... Why has the level of difficulty increased so quickly... it seems like this task is asking way too much of someone who is at this level of coding skill... how am I supposed to be able to solve a problem that even the teachers cant give me an acurate answer too.... Have I accidently ended up at a more difficult level of the track or something. The last task I was doing was on go karts and it was more of a line by line thing... this is asking for entire peices of program to be written!! I cant even figure out where to start!
public class ConferenceRegistrationAssistant {
/**
* Assists in guiding people to the proper line based on their last name.
*
* @param lastName The person's last name
* @return The line number based on the first letter of lastName
*/
public int getLineNumberFor(String lastName) {
int lineNumber = 0;
/*
lineNumber should be set based on the first character of the person's last name*/
char getLetter = lastName.charAt(0);
/* Line 1 - A thru M*/
if (getLetter >= 'a' && getLetter <= 'M') {
lineNumber = 1;
}
else lineNumber = 2;
/* Line 2 - N thru Z*/
return lineNumber;
}
}
public class Example {
public static void main(String[] args) {
/*
IMPORTANT: You can compare characters using <, >. <=, >= and == just like numbers
*/
if ('C' < 'D') {
System.out.println("C comes before D");
}
if ('B' > 'A') {
System.out.println("B comes after A");
}
if ('E' >= 'E') {
System.out.println("E is equal to or comes after E");
}
// This code is here for demonstration purposes only...
ConferenceRegistrationAssistant assistant = new ConferenceRegistrationAssistant();
/*
Remember that there are 2 lines.
Line #1 is for A-M
Line #2 is for N-Z
*/
int lineNumber = 0;
/*
This should set lineNumber to 2 because
The last name is Zimmerman which starts with a Z.
Therefore it is between N-Z
*/
lineNumber = assistant.getLineNumberFor("Zimmerman");
/*
This method call should set lineNumber to 1, because 'A' from "Anderson" is between A-M.
*/
lineNumber = assistant.getLineNumberFor("Anderson");
/*
Likewise Charlie Brown's 'B' is between 'A' and 'M', so lineNumber should be set to 1
*/
lineNumber = assistant.getLineNumberFor("Brown");
}
}
2 Answers
Rumyana Dimitrieva
Java Web Development Techdegree Graduate 18,632 PointsHello, I think the problem is in your if statement
if (getLetter >= 'a' && getLetter <= 'M') {
lineNumber = 1;
}
else lineNumber = 2;
you have 'a' instead of 'A'. The ‘char' primitive data type has an associated integer value based on the Unicode table. The int value of 'a' is 97, and the int value of 'M' is 77 so the result of your if statement is always false. I hope that helps.
lee lewis
Courses Plus Student 5,796 Pointsno its not that.. ive been thru every combonation lower case and upper case... i got to be honest... i dont get this... for three days ive been asking for help and not a single person can do this. can someone help me to find someone who understands this???