# Thread: Help with if/else statement

1. ## Help with if/else statement

I was wondering if someone could please look at this for me and try to explain what I am doing wrong? When I pull up the error console it tells me there are at least 2 mistakes which are:
Uncaught SyntaxError: Unexpected token else sureGrade.js:46
Any help would be greatly appreciated. Thank You.

Code:
```<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script>
{
var percent = parseFloat(percent);
var absences = parseInt(absences);

If (absences >= 5)
{
}
Else If (percent >= 90 || percent <= 100 && absences <= 2)
{
}
Else If (percent >= 90 || percent <= 100)
Else If (percent <= 89.9 || percent  >= 80)
{
}
Else If  (percent <= 89.9 || percent >= 80 && absences <= 2)
{
}
Else If (percent <= 79.9 || percent >= 70)
{
}
Else If (percent <= 79.9 || percent >= 70 && absences <= 2)
{
{
Else If (percent <= 69.9 || percent >= 60)
{
}
Else If (percent <= 69.9 || percent >= 60 && absences <= 2)
{
}
Else
{
document.gradeForm.comments.value = "I am sorry you have fail this semester. + \n"
}
}
</script>

<body>
<label for="absences">How many absences do you have?: </label><br />
<input type="text" name="absences" /><br />
<input type="text" name="percent" /><br />
</form>
</body>
</html>```

2. Hi plat.

There's something missing here. There is a reference to a sureGrade.js, which doesn't appear in your code.

3. I am sorry I have it all in one html page and then I have another in an html and a js page. here is the one with both sheets.

js

Code:
```function check_grade()
{
var percent = parseFloat(percent);
var absences = parseInt(absences);

If (absences >= 5)
{
}
If (percent >= 90 || percent <= 100 && absences <= 2)
{
}
If (percent >= 90 || percent <= 100)
If (percent <= 89.9 || percent  >= 80)
{
}
If (percent <= 89.9 || percent >= 80 && absences <= 2)
{
}
If (percent <= 79.9 || percent >= 70)
{
}
If (percent <= 79.9 || percent >= 70 && absences <= 2)
{
{
If (percent <= 69.9 || percent >= 60)
{
}
If (percent <= 69.9 || percent >= 60 && absences <= 2)
{
}
Else
{
document.gradeForm.comments.value = "I am sorry you have fail this semester. + \n"
}
}```
html

Code:
```<!doctype html>
<html>
<meta charset="utf-8" />
<body>
<label for="absences">How many absences do you have?: </label><br />
<input type="text" name="absences" /><br />
<input type="text" name="percent" /><br />
</form>
</body>
</html>```
Thank you for taking the time to look at it.

4. Maybe the error report was when the script was in an external file, unlike the code above.
Anyway:
• The <script> has to be: <script type="text/javascript">.
• All If's and Else If's have to be in lower case: if(...){...} and else if(...){...}.
• The opening { in the line before Else If (percent <= 69.9 || percent >= 60) has to be a closing }.
• The calling of the percent variable in the resulting value has to be outside the string of plain text:
• If you mean that the gain of 3% is added to the given percent, it has to be: + percent * 1.03 (instead of + percent * 0.3).
• Or: + parseInt(percent * 1.03) in case you want it rounded.
• Splitted strings over more code lines:
Code:
```(...).value="..."
"..."```
have to be connected by a + sign:
Code:
```(...).value="..."
+"..."```

=======
Besides, I'm afraid the OR (||) and AND (&&) in the formulas aren't adequate.
I suppose it has to be something like:
Code:
```...
if (absences >= 5){
}
else if (percent>=90 && percent<=100){
if (absences <= 2){
}
else {
}
}
else if (percent>=80 && percent<=89.9){
if (absences <= 2){
}
else {
}
}
and so on.```

5. Thank You for taking the time to help me. It all helps plus I had a bracket backwards which was driving me crazy. Thank you.

6. As I was trying to guide you Plat through your errors on the other forum, you have to first walk before you can run.

You don't need to understand every term your Javascript Console throws at you, just the line number and that is only a guide as I pointed out, the line number above contains the error which you now know that you had an opening brace rather than a closing brace (curly bracket)