Error with the program

Hi would you kindly help me with the following program, it display wrong answer.

This program must calculate : How many people do not read a newspaper,
how many men older than 40 years read a newspaper or twice a week,
how many woman older than 40 read a newspaper once a week, and
how many men read a newspaper 7 days a week.


#include <iostream>
using namespace std;

int main()
{
int age, numDaysPerWeek, number, i, people, var1, var2, var3, var4;
char gender, m, f;

for (int i = 1; i <= 30; i++)
{
cout << "Person number "<< endl;
cout << i << endl;
cout << endl;


cout << " How old are you? " << endl;
cin >> age;
cout << age <<" years old "<< endl<<endl;

do
{
cout << "What is your gender ? Enter M(for Male)or F(for female) "<< endl;
cin >> gender;
if (gender != 'M' && gender != 'F')
cout << "Type M or F "<< endl;
}while (gender != 'M' && gender != 'F');
cout <<"The gender is ("<< gender <<")"<< endl<<endl;
do
{
cout <<"How many days per week do you read a newspaper? " << endl;
cout <<"Answer 0, 1, 3, 4, 5, 6, or 7 " << endl;
cin >> numDaysPerWeek;
if (numDaysPerWeek >= 0 && numDaysPerWeek >= 8)
cout <<"Enter 0, 1, 2, 3, 4, 5, or 7 "<< endl;
}while (numDaysPerWeek >= 0 && numDaysPerWeek >= 8);
cout <<numDaysPerWeek<<" Times Per week "<< endl<< endl;
}
var1 = 0;
var2 = 0;
var3 = 0;
var4 = 0;

if (numDaysPerWeek == 0) {
var1++;
}else if (gender = 'M' && numDaysPerWeek == 2) {
var2++;
} else if (gender = 'F' && numDaysPerWeek == 1) {
var3++;
} else if (gender = 'M' && numDaysPerWeek == 7) {
var4++;
}


cout << "Number of people who dont read newspaper "<< var1 << endl;
cout << "Number of man older than 40yrs read newspaper "<< var2<<endl;
cout << "Number of woman older than 40yrs read newspaper " << var3 << endl;
cout << "Number of man read newspaper 7 days a week " << var4 << endl;


return 0;
}
first of all, you have to change
for (int i = 1; i <= 30; i++)
to:
for (i = 1; i <= 30; i++)

because you reference "i" here:
int age,[...], i,[...];
Last edited on
Topic archived. No new replies allowed.