-3

This is my assignment : " Write a function that finds the larger of two integers input (in the main program) but allows you to change the value of the integers in the function using pass by reference." I been trying to find out whats wrong with my code but I cant find out what it is. Someone please help me !! this assignment is due tonight!! Here is my code as of right now :

#include <iostream>

using namespace std;

int change(int& x, int& y)

{
    int temp=0;

    cout << "Function(before change): " << x << " " << y << endl;

    temp = x;
    x = y;
    y = temp;

    cout << "Function(after change): " << x << " " << y << endl;

}

int main()

{
    int x,y;

    cout << " Please Enter your first number: ";
    cin >> x;

    cout << " Please Enter your second number: ";
    cin >> y;

    if (x > y)
        cout << x << " is greater than " << y << endl;

    if (x < y)
        cout << y << " is greater than " << x << endl;

    if (x == y)
        cout << x << " is equal to " <<y << endl;

    cout << "Main (before change): " << x << " " << y << endl;
    change(x, y);

    cout << "Main (after change): " << x << " " << y << endl;

    system("Pause");

    return 0;

}
Arsalan
  • 9
  • 2

1 Answers1

3

change is declared as returning an int, but it never returns anything. It doesn't look like your function should return anything, so just declare it as void:

void change(int& x, int& y)
TartanLlama
  • 63,752
  • 13
  • 157
  • 193