Jak zwrocic strukture przez funkcje ktora jest typu tej struktury

0
#include <iostream>

using namespace std;

struct fun_lin
{
    int a,b;
};


fun_lin wpr(fun_lin var)
{
    cout << "Podaj argument a: ";
    cin >> var.a;
    cout << endl << "Podaj argument b: ";
    cin >> var.b;

    return var;
}

int zero(fun_lin var)
{
    int y=0, x;
    x=(y-var.b)/var.a;
    return x;

}

int wart(fun_lin var, int x)
{
    int y;
    y=(var.a*x)+var.b;
    return y;
}

int main(int argc, char * argv[])
{
    int x=3;
    fun_lin var;
    wpr(var);
    cout << "argument a: " << var.a << endl << "argument b: " << var.b << endl;
    zero(var);
    wart(var, x);
    cout << zero(var) << endl << wart(var, x);
    return 0;

}

Mam do napisania program ktory liczy pewne wartosci funkcji liniowej. Parametry a i b maja byc zawarte w strukturze. Problem w tym, ze funkcja nie zwraca podanych przez uzytkownika wartosci a i b, a zamiast tego sa to losowe liczby.
Pozdrawiam :)

0

ale nigdzie zwróconej struktury nie przypisujesz!

 int zwrocpiec(){ return 5;}

int main() {
int tobedziepiec = zwrocpiec();
return 0;
}

Chyba że chcesz zmienić strukturę która wysyłasz to przekaż argument przez wskaźnik albo referencje

0

Faktycznie, wystarczylo w mainie dopisac

var = wpr(var);

:) Podziekowac!

0

Nie musisz przekazywać:

fun_lin wpr()
  {
   fun_lin var;
    cout<< "Podaj argument a: ";
    cin>>var.a;
    cout<<"Podaj argument b: ";
    cin>>var.b; 
    return var;
  }

fun_lin var=wpr();
0

W taki sposob sie nie kompiluje. Wyrzuca blad, ze parametry var.a i var.b nie zostaly zadeklarowane

1 użytkowników online, w tym zalogowanych: 0, gości: 1