Computers and Technology
Computers and Technology, 11.02.2020 20:14, minaricks

You are given a file named hw02q3.c. All instructions are given in the form of comments in the file. You are to again run the file in both GCC and Visual Studio (2017 or 2015 version). Observe the outputs and make changes as asked.

#include
#pragma warning(disable : 4996) // needed in VS

// CSE 240 Fall 2018 Homework 2 Question 3 (25 points)
// Note: You may notice some warnings when you compile in GCC or VS, that is okay.

#define positive_1(x) ((x > 0) ? x : 0)

#define polynomial_2(a, b) (a*a + 2*a + 4*a*b - b*b)

int function_1(int a, int b) {
return (a*a + 2*a + 4*a*b - b*b);
}

// Part 1:
// We want to pass the value of 11 to positive_1 and expect the result of positive_1 to be 11, why is the result 12? Correct the error (5 points)
void part1(int x) {

int result;

result = positive_1(++x);

printf("positive_1(11) = %d \n\n", result);

// Why did this error occur? Please provide the answer in your own words below:
printf("Explanation: \n\n\n"); // (2.5 points)
}

// Part 2:
// We want to pass incremented values of x and y to the macro and function to compare their outputs in VS and GCC.
// Correct the program so that function_1 and polynomial_2 produce same correct output of 371. // (5 points)
// Run this program in Visual Studio(VS) and then again in GCC. Note the output values for function_1 and polynomial_2.
void part2(int x, int y) {
int x_copy = x, y_copy = y;

printf("function_1(x, y) = %d \n polynomial_2(x, y) = %d \n\n", function_1(++x, ++y), polynomial_2(++x_copy, ++y_copy));

// Replace the 4 blank spaces below with the actual output observed when running the code in VS and GCC.
printf("In VS : the result of function_1 = __ and polynomial_2 = __ \n"); // (5 points)
printf("In GCC: the result of function_1 = __ and polynomial_2 = __ \n\n"); // (5 points)

// Explain in a short sentence why VS and GCC could possibly produce a different value for the same program and for the same input.
printf("Explanation: \n\n"); // (2.5 points)
}

// Do not edit main()
int main()
{
int x = 10, y = 5;

printf("Part 1:\n\n");
part1(x);
printf("Part 2:\n\n");
part2(x, y);

return 0;
}

answer
Answers: 1

Other questions on the subject: Computers and Technology

image
Computers and Technology, 22.06.2019 09:50, laurentsofia09
Assume that you have an sorted array of records. assume that the length of the array (n) is known. give two different methods to search for a specific value in this array. you can use english or pseudo-code for your algorithm. what is the time complexity for each algorithm and why?
Answers: 1
image
Computers and Technology, 22.06.2019 22:00, bbysl15
What is the name of the option in most presentation applications with which you can modify slide elements? 1. the option enables you to modify a slide element in most presentation applications.
Answers: 3
image
Computers and Technology, 23.06.2019 18:30, emmaishere69
List 3 items that were on kens resume that should have been excluded
Answers: 1
image
Computers and Technology, 23.06.2019 18:30, janny48
How often does colleges update the cost of attendance on their website? . a)every two years b) every four years c) every year d) every semester
Answers: 1
Do you know the correct answer?
You are given a file named hw02q3.c. All instructions are given in the form of comments in the file....

Questions in other subjects:

Konu
Mathematics, 28.07.2019 12:00
Konu
History, 28.07.2019 12:00
Konu
Mathematics, 28.07.2019 12:00