Help: expected a statement
Apr 8, 2013 at 5:59am UTC
This program is incomplete but halfway through my programme I receive an error from 'else', the message is 'expected a statement'.
Why is it displaying that message. I'm still a newbie to C++.
// weekgrosssales.cpp
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
const int sales = 10;
int counter;
int totalsales;
int group1, group2, group3, group4, group5, group6, group7, group8, group9;
int salesperson[sales];
totalsales = 200 + (salesperson[sales] * 9/100 );
while ( counter < salesperson[sales] )
cout << "Please enter your weekly sales";
cin >> salesperson[sales];
if (sales >= 200 && sales < 300)
++group1;
++counter;
if (sales >= 300 && sales < 400)
++group2;
++counter;
if (sales >= 400 && sales < 500)
++group3;
++counter;
if (sales >= 500 && sales < 600)
++group4;
++counter;
if (sales >= 600 && sales < 700)
++group5;
++counter;
if (sales >= 700 && sales < 800)
++group6;
++counter;
if (sales >= 800 && sales < 900)
++group7;
++counter;
if (sales >= 900 && sales < 1000)
++group8;
++counter;
if (sales >= 1000 )
++group9;
++counter;
else
cout << "The following weekly gross sales is ignored";
Apr 8, 2013 at 6:03am UTC
This ain't python. Whitespace is free.
Apr 8, 2013 at 6:17am UTC
Yeah the else should come right after the if block. So the syntax must be:
1 2 3 4 5 6 7 8
if (condition)
{......}
else {.…}
//or
if (condition) ...
else .....
In your code, a statement(++counter;) comes before the else whiles that statwmwnt is not in the if block, causing an error.
HTH,
Aceix.
Last edited on Apr 8, 2013 at 6:19am UTC
Apr 8, 2013 at 6:17am UTC
Always make a habit to use curly braces ({, }), even if the condition is a one liner.
1 2 3 4 5 6 7 8
if (something)
{
//do this
}
else
{
//do something else
}
Apr 8, 2013 at 9:20am UTC
@Angry Food
It should be like this>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
// weekgrosssales.cpp
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
const int sales = 10;
int counter;
int totalsales;
int group1, group2, group3, group4, group5, group6, group7, group8, group9;
int salesperson[sales];
totalsales = 200 + (salesperson[sales] * 9/100 );
while ( counter < salesperson[sales] )
cout << "Please enter your weekly sales" ;
cin >> salesperson[sales];
if (sales >= 200 && sales < 300){
++group1;
++counter;
}
else if (sales >= 300 && sales < 400){
++group2;
++counter;
}
else if (sales >= 400 && sales < 500){
++group3;
++counter;
}
else if (sales >= 500 && sales < 600){
++group4;
++counter;
}
else if (sales >= 600 && sales < 700){
++group5;
++counter;
}
else if (sales >= 700 && sales < 800){
++group6;
++counter;
}
else if (sales >= 800 && sales < 900){
++group7;
++counter;
}
else if (sales >= 900 && sales < 1000){
++group8;
++counter;
}
else if (sales >= 1000 ){
++group9;
++counter;
}
else
cout << "The following weekly gross sales is ignored" ;
Apr 8, 2013 at 9:41am UTC
First you are trying to access an element of salesperson that has NO value(Error 1). Second is counter does not have a value too, you need to initialize counter .
Apr 8, 2013 at 1:47pm UTC
Thanks for your help guys. :)
Topic archived. No new replies allowed.