// Assume all libraries are included void func(int a, // int main () { int i = 5, j = 4, k = 3; 3 int &b, int &c); 4 7 8. func (i, j, k); func (j, i, k); cout << j << k << i « endl; 9. 10 11 13 return 0; 14 // void func(int 16 a, int &b, int &c) 17 { 18 a = 2*c + b; 19 b a; 20 c = a + 3*b; C 21 } // 22 Il |||| H N M 456 N H H H HH H 2 N ON

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
```cpp
// Assume all libraries are included

void func(int a, int &b, int &c);
// ------------------------------

int main()
{
    int i = 5, j = 4, k = 3;

    func(i, j, k);
    func(j, i, k);
    cout << j << k << i << endl;

    return 0;
}
// ------------------------------

void func(int a, int &b, int &c)
{
    a = 2*c + b;
    b = c - a;
    c = a + 3*b;
}
// ------------------------------
```

This C++ code demonstrates a program using functions with reference parameters. In the `func` function, the parameters `b` and `c` are references, meaning changes to them will affect the original variables passed to the function.

### How It Works:

1. **Initialization:**
   - Variables `i`, `j`, and `k` are initialized to 5, 4, and 3 respectively.

2. **First Function Call `func(i, j, k)`:**
   - `a` is set as `2*k + j`.
   - `b` is updated to `k - a`.
   - `c` is updated to `a + 3*b`.

3. **Second Function Call `func(j, i, k)`:**
   - The values of `j`, `i`, and `k` are now passed to the function, modifying them again through similar calculations.
   
4. **Output:**
   - `cout << j << k << i << endl;` will output the values of `j`, `k`, and `i` after the function calls have been executed.

This code highlights the usage of reference parameters in C++ and how they can be utilized to alter the values of the variables passed to the function.
Transcribed Image Text:```cpp // Assume all libraries are included void func(int a, int &b, int &c); // ------------------------------ int main() { int i = 5, j = 4, k = 3; func(i, j, k); func(j, i, k); cout << j << k << i << endl; return 0; } // ------------------------------ void func(int a, int &b, int &c) { a = 2*c + b; b = c - a; c = a + 3*b; } // ------------------------------ ``` This C++ code demonstrates a program using functions with reference parameters. In the `func` function, the parameters `b` and `c` are references, meaning changes to them will affect the original variables passed to the function. ### How It Works: 1. **Initialization:** - Variables `i`, `j`, and `k` are initialized to 5, 4, and 3 respectively. 2. **First Function Call `func(i, j, k)`:** - `a` is set as `2*k + j`. - `b` is updated to `k - a`. - `c` is updated to `a + 3*b`. 3. **Second Function Call `func(j, i, k)`:** - The values of `j`, `i`, and `k` are now passed to the function, modifying them again through similar calculations. 4. **Output:** - `cout << j << k << i << endl;` will output the values of `j`, `k`, and `i` after the function calls have been executed. This code highlights the usage of reference parameters in C++ and how they can be utilized to alter the values of the variables passed to the function.
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Function Arguments
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education