Help: expected a statement

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";
This ain't python. Whitespace is free.
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
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
}
@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";
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.
Thanks for your help guys. :)
Topic archived. No new replies allowed.