5.19 LAB: Adjust list by normalizing When analyzing data sets, such as data for human heights or for human weights, a common step is to adjust the data. This can be done by normalizing to values between 0 and 1, or throwing away outliers. For this program, adjust the values by dividing all values by the largest value. The input begins with an integer indicating the number of floating-point values that follow. Assume that the list will always contain less than 20 floating-point values. For coding simplicity, follow every output value by a space, including the last one. And, output each floating-point value with two digits after the decimal point, which can be achieved as follows: printf("%0.2lf ", yourValue); Ex: If the input is: 5 30.0 50.0 10.0 100.0 65.0 the output is: 0.30 0.50 0.10 1.00 0.65 The 5 indicates that there are five floating-point values in the list, namely 30.0, 50.0, 10.0, 100.0, and 65.0. 100.0 is the largest value in the list, so each value is divided by 100.0. For coding simplicity, follow every output value by a space, including the last one. #include int main () { int n; scanf("%d", &n); float a[n]; for(int i = 0; i < n; i++) { scanf("%f", &a[i]); // read the float values } float max = -1; for(int i = 0; i < n; i++) { if(a[i] > max) // finding max value { max = a[i]; } } for(int i = 0; i < n; i++) { a[i] = a[i] / max; // printnig the result printf("%0.2lf ", a[i]); } return 0; } 1:Compare outputkeyboard_arrow_up 0 / 3 Output is nearly correct, but whitespace differs. See highlights below. Special character legend Input 5 30.0 50.0 10.0 100.0 65.0 Your output 0.30 0.50 0.10 1.00 0.65 Expected output 0.30 0.50 0.10 1.00 0.65 (newline symbol) 2:Compare outputkeyboard_arrow_up 0 / 4 Output is nearly correct, but whitespace differs. See highlights below. Special character legend Input 7 5.0 10.0 15.0 20.0 25.0 30.0 35.0 Your output 0.14 0.29 0.43 0.57 0.71 0.86 1.00 (newline symbol) Expected output 0.14 0.29 0.43 0.57 0.71 0.86 1.00 3:Compare outputkeyboard_arrow_up 0 / 3 Output is nearly correct, but whitespace differs. See highlights below. Special character legend Input 4 99.9 52.5 12.6 200.0 Your output 0.50 0.26 0.06 1.00 Expected output 0.50 0.26 0.06 1.00 (newline symbol)

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter17: Linked Lists
Section: Chapter Questions
Problem 11SA
icon
Related questions
Question

5.19 LAB: Adjust list by normalizing

 

When analyzing data sets, such as data for human heights or for human weights, a common step is to adjust the data. This can be done by normalizing to values between 0 and 1, or throwing away outliers.

For this program, adjust the values by dividing all values by the largest value. The input begins with an integer indicating the number of floating-point values that follow. Assume that the list will always contain less than 20 floating-point values.

For coding simplicity, follow every output value by a space, including the last one. And, output each floating-point value with two digits after the decimal point, which can be achieved as follows:
printf("%0.2lf ", yourValue);

Ex: If the input is:

5 30.0 50.0 10.0 100.0 65.0

the output is:

0.30 0.50 0.10 1.00 0.65

The 5 indicates that there are five floating-point values in the list, namely 30.0, 50.0, 10.0, 100.0, and 65.0. 100.0 is the largest value in the list, so each value is divided by 100.0.

For coding simplicity, follow every output value by a space, including the last one.

 

#include <stdio.h>

int main () {
    int n;
    scanf("%d", &n);
    float a[n];
    for(int i = 0; i < n; i++)
    {
        scanf("%f", &a[i]); // read the float values
    }
    float max = -1;
    for(int i = 0; i < n; i++)
    {
        if(a[i] > max) // finding max value
        {
            max = a[i];
        }
    }
    
    for(int i = 0; i < n; i++)
    {
        a[i] = a[i] / max; // printnig the result
        printf("%0.2lf ", a[i]);
    }
 
   return 0;
}

 

1:Compare outputkeyboard_arrow_up
0 / 3
Output is nearly correct, but whitespace differs. See highlights below. Special character legend
Input
5 30.0 50.0 10.0 100.0 65.0
Your output
0.30 0.50 0.10 1.00 0.65
Expected output
0.30 0.50 0.10 1.00 0.65 (newline symbol)
2:Compare outputkeyboard_arrow_up
0 / 4
Output is nearly correct, but whitespace differs. See highlights below. Special character legend
Input
7 5.0 10.0 15.0 20.0 25.0 30.0 35.0
Your output
0.14 0.29 0.43 0.57 0.71 0.86 1.00 (newline symbol)
Expected output
0.14 0.29 0.43 0.57 0.71 0.86 1.00
3:Compare outputkeyboard_arrow_up
0 / 3
Output is nearly correct, but whitespace differs. See highlights below. Special character legend
Input
4 99.9 52.5 12.6 200.0
Your output
0.50 0.26 0.06 1.00
Expected output
0.50 0.26 0.06 1.00 (newline symbol)
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 5 steps with 2 images

Blurred answer
Follow-up Questions
Read through expert solutions to related follow-up questions below.
Follow-up Question

I actually wanted it coded in C Programming.

Solution
Bartleby Expert
SEE SOLUTION
Knowledge Booster
Linked List Representation
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
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr