Need help with UNIX C programming assignment

profileGFL
assign1-starter.tgz

assign1/cmpsc311-sum19-assign1.c

//////////////////////////////////////////////////////////////////////////////// // // File : cmpsc311-sum19-assign1.c // Description : This is the main source code for for the first assignment // of CMPSC311 at Penn State University. See the related // assignment page for details. // // Author : ???? // Last Modified : ???? // // Include Files #include <stdio.h> #include <math.h> #include <stdlib.h> // Project Includes #include <cmpsc311-sum19-assign1-support.h> // // Functions //////////////////////////////////////////////////////////////////////////////// // // Function : main // Description : The main function for the CMPSC311 assignment #1 // // Inputs : argc - the number of command line parameters // argv - the parameters // Outputs : 0 if successful test, -1 if failure int main(int argc, char *argv[]) { // Local variables // NOTE: this is where you will want to add some new variables float f_array[20]; int i_array[20], m_array[25]; ??? // Step #1 - read in the float numbers to process for (i=0; i<20; i++) { scanf("%f", &f_array[i]); } // Step #2 - convert the input values ??? // Step #3 - convert the floating point values to integers ??? // Step #4 - print out the integer and floating point arrays ??? // Step #5 - figure out number of odds in each array ??? // Step #6 - fill up the new array, compute moving root mean square // NOTE ** THIS IS PROVIDED CODE, JUST CREATE FUNCTIONS IN ASSIGNMENT make_array(m_array, 25, 3, 17); moving_rms(m_array, 25); make_array(m_array, 25, 3, 19); moving_rms(m_array, 25); // Step #8 graph out functions printf("\n\n"); graph_functions(1.0, 1.0); printf("\n\n"); graph_functions(1.3, 2.3); printf("\n\n"); graph_functions(0.6, 4.3); // Return successfully return(0); }

assign1/test-input1.txt

14.1 -1.45 333.145 67.0 0.0 41.56 0.9876 -91.48 -81.81 46.72 7.501 11.1 48.48 6.33 -90.87 1.48 117.654 -18.54 0.500 67.313

assign1/Makefile

# # CMPSC311 - Utility Library # Code for the CMPSC311 Projects # # Make environment INCLUDES=-I. CC=gcc CFLAGS=-I. -c -g -Wall $(INCLUDES) LINKARGS=-lm LIBS=-lm # Files OBJECT_FILES= cmpsc311-sum19-assign1.o \ cmpsc311-sum19-assign1-support.o # Productions all : cmpsc311-sum19-assign1 cmpsc311-sum19-assign1 : $(OBJECT_FILES) $(CC) $(LINKARGS) $(OBJECT_FILES) -o $@ $(LIBS) cmpsc311-sum19-assign1.o : cmpsc311-sum19-assign1.c cmpsc311-sum19-assign1-support.h $(CC) $(CFLAGS) $< -o $@ cmpsc311-sum19-assign1-support.o : cmpsc311-sum19-assign1-support.c cmpsc311-sum19-assign1-support.h $(CC) $(CFLAGS) $< -o $@ clean : rm -f cmpsc311-sum19-assign1 $(OBJECT_FILES)

assign1/test-output1.txt

Floating point arrary: float[0] = 38.3278 float[1] = 1.4500 float[2] = 905.5820 float[3] = 182.1249 float[4] = 0.0000 float[5] = 112.9718 float[6] = 0.9876 float[7] = 91.4800 float[8] = 81.8100 float[9] = 126.9981 float[10] = 20.3898 float[11] = 30.1729 float[12] = 131.7823 float[13] = 6.3300 float[14] = 90.8700 float[15] = 1.4800 float[16] = 319.8167 float[17] = 18.5400 float[18] = 0.5000 float[19] = 182.9757 Integer arrary: integer[0] = 38 integer[1] = 1 integer[2] = 906 integer[3] = 182 integer[4] = 0 integer[5] = 113 integer[6] = 1 integer[7] = 91 integer[8] = 82 integer[9] = 127 integer[10] = 20 integer[11] = 30 integer[12] = 132 integer[13] = 6 integer[14] = 91 integer[15] = 1 integer[16] = 320 integer[17] = 19 integer[18] = 1 integer[19] = 183 The floating point array has 7 odd numbers and the integer array has 10 odd numbers. Array (3^i) mod 17 arr[0] = 1 arr[1] = 3 arr[2] = 9 arr[3] = 10 arr[4] = 13 arr[5] = 5 arr[6] = 15 arr[7] = 11 arr[8] = 16 arr[9] = 14 arr[10] = 8 arr[11] = 7 arr[12] = 4 arr[13] = 12 arr[14] = 2 arr[15] = 6 arr[16] = 1 arr[17] = 3 arr[18] = 9 arr[19] = 10 arr[20] = 13 arr[21] = 5 arr[22] = 15 arr[23] = 11 arr[24] = 16 Root mean square for 25 numbers 1.0000 2.2361 5.5076 6.9101 8.4853 8.0104 9.3350 9.5590 10.4722 10.8766 10.6472 10.3923 10.0460 10.1980 9.8658 9.6695 9.3840 9.1469 9.1393 9.1842 9.4011 9.2466 9.5690 9.6328 9.9659 Array (3^i) mod 19 arr[0] = 1 arr[1] = 3 arr[2] = 9 arr[3] = 8 arr[4] = 5 arr[5] = 15 arr[6] = 7 arr[7] = 2 arr[8] = 6 arr[9] = 18 arr[10] = 16 arr[11] = 10 arr[12] = 11 arr[13] = 14 arr[14] = 4 arr[15] = 12 arr[16] = 17 arr[17] = 13 arr[18] = 1 arr[19] = 3 arr[20] = 9 arr[21] = 8 arr[22] = 5 arr[23] = 15 arr[24] = 7 Root mean square for 25 numbers 1.0000 2.2361 5.5076 6.2249 6.0000 8.2158 8.0534 7.5664 7.4087 9.0443 9.8811 9.8911 9.9808 10.3199 10.0233 10.1581 10.6826 10.8244 10.5382 10.2932 10.2353 10.1444 9.9761 10.2347 10.1252 Graph: D = cos(x)*1.0, E = sin(x)*1.0 ------------------------------------------------------------- 3.0 | | | 2.9 | | | 2.8 | | | 2.7 | | | 2.6 | | | 2.5 | | | 2.4 | | | 2.3 | | | 2.2 | | | 2.1 | | | 2.0 | | | 1.9 | | | 1.8 | | | 1.7 | | | 1.6 | | | 1.5 | | | 1.4 | | | 1.3 | | | 1.2 | | | 1.1 | | | 1.0 | DDDDDDD EEEEEE | 0.9 | DD | DD EE EEE | 0.8 | DD | DD EE E | 0.7 | D | E EE | 0.6 | D | EE D E | 0.5 | DD | E DD E | 0.4 | D | E D E | 0.3 | D | E D E | 0.2 | D | E D E | 0.1 | D |E D E| 0.0 |--------------D---------------E---------------D--------------| -0.1 |E D E| D | -0.2 | E D E | D | -0.3 | E D E | D | -0.4 | E D E | D | -0.5 | E D E | D | -0.6 | E D EE | D | -0.7 | EE E | DD | -0.8 | D E EE | D | -0.9 | DDD EEE EE | DDD | -1.0 |DD EEEEEE | DD| -1.1 | | | -1.2 | | | -1.3 | | | -1.4 | | | -1.5 | | | -1.6 | | | -1.7 | | | -1.8 | | | -1.9 | | | -2.0 | | | -2.1 | | | -2.2 | | | -2.3 | | | -2.4 | | | -2.5 | | | -2.6 | | | -2.7 | | | -2.8 | | | -2.9 | | | -3.0 | | | -3 -2 -1 0 1 2 3 0123456789012345678901234567890123456789012345678901234567890 ------------------------------------------------------------- Graph: D = cos(x)*1.3, E = sin(x)*2.3 ------------------------------------------------------------- 3.0 | | | 2.9 | | | 2.8 | | | 2.7 | | | 2.6 | | | 2.5 | | | 2.4 | | | 2.3 | | EEEE | 2.2 | | E EE | 2.1 | | E E | 2.0 | | E E | 1.9 | | E E | 1.8 | | E | 1.7 | | E | 1.6 | | E E | 1.5 | | E | 1.4 | | E | 1.3 | DDDDD E | 1.2 | DD | DD E | 1.1 | DD | ED | 1.0 | D | D E | 0.9 | D | E D | 0.8 | D | D E | 0.7 | D | E D | 0.6 | D | D E | 0.5 | D | E D | 0.4 | | | 0.3 | D | D E| 0.2 | D |E D | 0.1 | D | D | 0.0 |--------------D---------------E---------------D--------------| -0.1 | | | -0.2 | D E| D | -0.3 |E D | D | -0.4 | D | D | -0.5 | D E | D | -0.6 | E | | -0.7 | D E | D | -0.8 | E D | D | -0.9 | D E | D | -1.0 | E DD | DD | -1.1 | D E | D | -1.2 | DDE | DD | -1.3 |DD E | DD| -1.4 | E | | -1.5 | E | | -1.6 | E E | | -1.7 | E | | -1.8 | E | | -1.9 | E E | | -2.0 | E E | | -2.1 | E E | | -2.2 | EE E | | -2.3 | EEEE | | -2.4 | | | -2.5 | | | -2.6 | | | -2.7 | | | -2.8 | | | -2.9 | | | -3.0 | | | -3 -2 -1 0 1 2 3 0123456789012345678901234567890123456789012345678901234567890 ------------------------------------------------------------- Graph: D = cos(x)*0.6, E = sin(x)*4.3 ------------------------------------------------------------- 3.0 | | | 2.9 | | E | 2.8 | | E | 2.7 | | | 2.6 | | E | 2.5 | | | 2.4 | | E | 2.3 | | | 2.2 | | E | 2.1 | | E | 2.0 | | | 1.9 | | | 1.8 | | E | 1.7 | | E | 1.6 | | | 1.5 | | | 1.4 | | E | 1.3 | | E | 1.2 | | | 1.1 | | | 1.0 | | E | 0.9 | | E | 0.8 | | | 0.7 | | | 0.6 | DDDDDDDDD E| 0.5 | DDD | DDD | 0.4 | DD |E DD | 0.3 | DD | DD | 0.2 | DD | DD | 0.1 | D | D | 0.0 |--------------DD--------------E--------------DD--------------| -0.1 | DD | DD | -0.2 | DD | DD | -0.3 | D | D | -0.4 | DDD E| DDD | -0.5 | DDD | DDD | -0.6 |EDD | DDD| -0.7 | | | -0.8 | | | -0.9 | E | | -1.0 | E | | -1.1 | | | -1.2 | | | -1.3 | E | | -1.4 | E | | -1.5 | | | -1.6 | | | -1.7 | E | | -1.8 | E | | -1.9 | | | -2.0 | | | -2.1 | E | | -2.2 | E | | -2.3 | | | -2.4 | E | | -2.5 | | | -2.6 | E | | -2.7 | | | -2.8 | E | | -2.9 | E | | -3.0 | | | -3 -2 -1 0 1 2 3 0123456789012345678901234567890123456789012345678901234567890 -------------------------------------------------------------

assign1/cmpsc311-sum19-assign1-support.h

#ifndef CMPSC311_A1SUPPORT_INCLUDED #define CMPSC311_A1SUPPORT_INCLUDED //////////////////////////////////////////////////////////////////////////////// // // File : cmpsc311-sum19-assign1-support.h // Description : This is a set of general-purpose utility functions we use // for the 311 homework assignment #1. // // Author : ???? // Created : ???? // // Functional Prototypes int float_display_array(????); // This function prints out the array of floating point values int integer_display_array(????); // This function prints out the array of integer values int float_odds(????); // Return the number of odd numbers in the array (float version) int integer_odds(????); // Return the number of odd numbers in the array (int version) int moving_rms(????); // Compute the rms for the first n numbers int graph_functions(????); // Print out the functions sin(x)*mult1 and cos(x)*mult2 // Honors: print '+' for region between functions #endif // CMPSC311_A1SUPPORT_INCLUDED