4) What is the value assigned to the variable in each of these cases? Explain curious results. Be careful! int x, Y a) x= 1/2; b) y= 3.0/2.0; double z, w, t c) z= 1/2; d) w= 3/2; e) t= 3.0/2.0;

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
**Question 4:**

What is the value assigned to the variable in each of these cases? Explain curious results. Be careful!

```cpp
int x, y;
```

**a)** `x = 1/2;`

**b)** `y = 3.0/2.0;`

```cpp
double z, w, t;
```

**c)** `z = 1/2;`

**d)** `w = 3/2;`

**e)** `t = 3.0/2.0;`

### Explanation:

- **a) `x = 1/2;`**

  Here, `1` and `2` are integers. Integer division in C++ discards any fractional part, so `1/2` results in `0`. Hence, `x` will be assigned the value `0`.

- **b) `y = 3.0/2.0;`**

  Here, `3.0` and `2.0` are floating-point numbers. Floating-point division preserves the fractional part, so `3.0/2.0` results in `1.5`. However, since `y` is of type `int`, the fractional part is truncated and `y` will be assigned the value `1`.

- **c) `z = 1/2;`**

  Here again, `1` and `2` are integers. Integer division results in `0`, and then `0` is assigned to the double variable `z`. Hence, `z` will be `0.0`.

- **d) `w = 3/2;`**

  Both `3` and `2` are integers, and integer division of `3/2` results in `1`. Hence, `w` will be assigned the value `1.0` (converted to double).

- **e) `t = 3.0/2.0;`**

  Both `3.0` and `2.0` are floating-point numbers. Floating-point division preserves the fractional part, so `3.0/2.0` results in `1.5`. Hence, `t` will be assigned the value `1.5`.

Be mindful of the types of your variables and the operators you use, as they can produce different results especially when dealing with integer and floating-point types.
Transcribed Image Text:**Question 4:** What is the value assigned to the variable in each of these cases? Explain curious results. Be careful! ```cpp int x, y; ``` **a)** `x = 1/2;` **b)** `y = 3.0/2.0;` ```cpp double z, w, t; ``` **c)** `z = 1/2;` **d)** `w = 3/2;` **e)** `t = 3.0/2.0;` ### Explanation: - **a) `x = 1/2;`** Here, `1` and `2` are integers. Integer division in C++ discards any fractional part, so `1/2` results in `0`. Hence, `x` will be assigned the value `0`. - **b) `y = 3.0/2.0;`** Here, `3.0` and `2.0` are floating-point numbers. Floating-point division preserves the fractional part, so `3.0/2.0` results in `1.5`. However, since `y` is of type `int`, the fractional part is truncated and `y` will be assigned the value `1`. - **c) `z = 1/2;`** Here again, `1` and `2` are integers. Integer division results in `0`, and then `0` is assigned to the double variable `z`. Hence, `z` will be `0.0`. - **d) `w = 3/2;`** Both `3` and `2` are integers, and integer division of `3/2` results in `1`. Hence, `w` will be assigned the value `1.0` (converted to double). - **e) `t = 3.0/2.0;`** Both `3.0` and `2.0` are floating-point numbers. Floating-point division preserves the fractional part, so `3.0/2.0` results in `1.5`. Hence, `t` will be assigned the value `1.5`. Be mindful of the types of your variables and the operators you use, as they can produce different results especially when dealing with integer and floating-point types.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Constants and Variables
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
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