functions in calculator

i dont get what im doing wrong...when i press 1 to add it goes right to the restart screen?

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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
#include <iostream>
#include <cstdlib>

using namespace std;



void add()
{
    int Total = 0;
	int Amount;
	int Number;
	int whatoperation;
	int answertoaverage;
	int restart;
    cout << "Enter in how many numbers you want to use" << endl;
	cin >> Amount;

	for(int i = 0; i < Amount; i++)   // Keeps looping until i == Amount
	{
		cout << "Number " << i << ": " ;  // Shows user what number they are entering
		cin >> Number;

		Total = Number + Total;  // Adds number to total
	}

	cout << "The total is " << Total << endl;  // Prints out total value when loop has finished
	Total = 0;  // resets total back to zero

}

int main()
{
    int Total = 0;
	int Amount;
	int Number;
	int whatoperation;
	int answertoaverage;
	int restart;

	while (restart) {

	cout << "Here are your choices(enter the number before the operation)" << endl << endl;
	cout << "1.Addition" << endl;
	cout << "2.Subtraction" << endl;
	cout << "3.Multiplication" << endl;
	cout << "4.Division" << endl;
	cout << "5.Average Calculator" << endl;

	cin >> whatoperation;

	system("CLS");

	switch(whatoperation){
    case 1:
    int add();
	break;

	case 2:
	cout << "Enter in how many numbers you want to use" << endl;
	cin >> Amount;

	for(int i = 0; i < Amount; i++)
	{
		cout << "Number " << i << ": " ;
		cin >> Number;

		if(i == 0)
		{
			Total = Total + Number;
		}

		else
		{
			Total = Total - Number;
		}
	}

	cout << "The total is " << Total << endl;
	Total = 0;
	break;

	case 3:
	cout << "Enter in how many numbers you want to use" << endl;
	cin >> Amount;

	for(int i = 0; i < Amount; i++)
	{
		cout << "Number " << i << ": " ;
		cin >> Number;

		if(i == 0)
		{
			Total = Total + Number;
		}

		else
		{
			Total = Total * Number;
		}
	}
	cout << "The answer is " << Total << endl;
    Total = 0;
	break;

	case 4:
	cout << "Enter in how many numbers you want to use" << endl;
	cin >> Amount;

	for(int i = 0; i < Amount; i++)
	{
		cout << "Number " << i << ": " ;
		cin >> Number;

		if(i == 0)
		{
			Total = Total + Number;
		}

		else
		{
			Total = Total / Number;
		}
	}
	cout << "The total is " << Total << endl;
	Total = 0;
	break;
	case 5:
	cout << "Enter how many numbers you want to find the average of: ";
	cin >> Amount;

	for(int i = 0; i < Amount; i++)
	{
	    cout << "Number " << i << ": " ;
		cin >> Number;

		Total = Number + Total;
	}
	answertoaverage = Total / Amount;
	cout << "The average of those " << Amount << " numbers is " << answertoaverage << endl;
	answertoaverage = 0;
}
	cout << "enter 1 to restart or 2 to quit: ";
	cin >> restart;
	if(restart == 1){
    }else{
        break;
    }

    }

    cin.get();
	return 0;
}
55
56
57
    case 1:
    int add();
	break;
Here, you are telling the compiler that there exists a function which returns an int and takes no parameters. Telling the compiler that it exists is probably not what you meant, so I will assume you wanted to instead actually call the function. To do this, don't give a return type.
As it was already pointed out you define function int add(); instead of calling your early defined function void add();

To call the function you should write add();

Topic archived. No new replies allowed.