It turns out that struct s in C (not C++) are passed by value, both in and out of a function.
That means there is actually no need to use malloc and pass pointers around.
Thus, the function make_rat in presented in lecture could be defined like this:
Rat make_rat(int p, int q) {
int g = gcd(p, q);
Rat r = {p/g, q/g};
return r;
}
Provide an alternate implementation of Rat ADT without using pointers, along with the operations add_rat, sub_rat, mul_rat, div_rat.
Assume that the gcd function has been defined.
Change the code below to without pointer
Rat * add_rat(Rat *x, Rat *y) {
int nx = numer(x), dx = denom(x);
int ny = numer(y), dy = denom(y);
return make_rat(nx * dy + ny * dx,
dx * dy);
}
Numbers and figures are an essential part of our world, necessary for almost everything we do every day. As important…
APPROVED BY CLIENTS
"assignmentexpert.com" is professional group of people in Math subjects! They did assignments in very high level of mathematical modelling in the best quality. Thanks a lot
Comments
Leave a comment