#include "math.h"
#include "stdio.h"
struct statStruct
{
double sum;
double average;
double stdDev;
};
struct statStruct statsCalc(int a, int b, int c, int d, int e);
int main(void)
{
struct statStruct stats = statsCalc(3, 6, 9, 6, 6);
printf("Sum of inputs: %f\n Average of inputs: %f\n Standard deviation of inputs: %f\n", stats.
sum, stats.
average, stats.
stdDev); }
struct statStruct statsCalc(int a, int b, int c, int d, int e)
{
double argArray[5] = {(double)a, (double)b, (double)c, (double)d, (double)e};
double varArray[5];
double varSum = 0;
double sum=0;
double average=0;
double stdDev=0;
int i;
//calculating sum
for ( i = 0; i < 5; i++)
{
sum = sum + argArray[i];
}
//calculating average
average = sum/5;
//calculating std. deviation
for ( i = 0; i < 5; i++)
{
varArray
[i
] = pow(argArray
[i
] - average
, 2); varSum = varSum + varArray[i];
}
//initializing the struct object to be returned (stats.attribute) is used to read and not write
struct statStruct stats = {sum,average,stdDev}; //at it's herat THIS IS WHAT YOU WERE MISSING
return stats;
}
I2luY2x1ZGUgIm1hdGguaCIKI2luY2x1ZGUgInN0ZGlvLmgiCgpzdHJ1Y3Qgc3RhdFN0cnVjdAp7CiAgICBkb3VibGUgc3VtOwogICAgZG91YmxlIGF2ZXJhZ2U7CiAgICBkb3VibGUgc3RkRGV2OyAgCn07CgpzdHJ1Y3Qgc3RhdFN0cnVjdCBzdGF0c0NhbGMoaW50IGEsIGludCBiLCBpbnQgYywgaW50IGQsIGludCBlKTsKCmludCBtYWluKHZvaWQpCnsgICAgICAgCiAgICBzdHJ1Y3Qgc3RhdFN0cnVjdCBzdGF0cyA9IHN0YXRzQ2FsYygzLCA2LCA5LCA2LCA2KTsKICAgIHByaW50ZigiU3VtIG9mIGlucHV0czogJWZcbiBBdmVyYWdlIG9mIGlucHV0czogJWZcbiBTdGFuZGFyZCBkZXZpYXRpb24gb2YgaW5wdXRzOiAlZlxuIiwgc3RhdHMuc3VtLCBzdGF0cy5hdmVyYWdlLCBzdGF0cy5zdGREZXYpOwp9CgpzdHJ1Y3Qgc3RhdFN0cnVjdCBzdGF0c0NhbGMoaW50IGEsIGludCBiLCBpbnQgYywgaW50IGQsIGludCBlKQp7CiAgICBkb3VibGUgYXJnQXJyYXlbNV0gPSB7KGRvdWJsZSlhLCAoZG91YmxlKWIsIChkb3VibGUpYywgKGRvdWJsZSlkLCAoZG91YmxlKWV9OwogICAgZG91YmxlIHZhckFycmF5WzVdOwogICAgZG91YmxlIHZhclN1bSA9IDA7CgoJZG91YmxlIHN1bT0wOwoJZG91YmxlIGF2ZXJhZ2U9MDsKCWRvdWJsZSBzdGREZXY9MDsKCWludCBpOwoJLy9jYWxjdWxhdGluZyBzdW0KICAgIGZvciAoIGkgPSAwOyBpIDwgNTsgaSsrKQogICAgewogICAgICAgIHN1bSA9IHN1bSArIGFyZ0FycmF5W2ldOwogICAgfQoJLy9jYWxjdWxhdGluZyBhdmVyYWdlCiAgICBhdmVyYWdlID0gc3VtLzU7CgkvL2NhbGN1bGF0aW5nIHN0ZC4gZGV2aWF0aW9uCiAgICBmb3IgKCBpID0gMDsgaSA8IDU7IGkrKykKICAgIHsKICAgICAgICB2YXJBcnJheVtpXSA9IHBvdyhhcmdBcnJheVtpXSAtIGF2ZXJhZ2UsIDIpOwogICAgICAgIHZhclN1bSA9IHZhclN1bSArIHZhckFycmF5W2ldOwogICAgfQogICAgc3RkRGV2ID0gc3FydCh2YXJTdW0vNSk7CiAgICAvL2luaXRpYWxpemluZyB0aGUgc3RydWN0IG9iamVjdCB0byBiZSByZXR1cm5lZCAoc3RhdHMuYXR0cmlidXRlKSBpcyB1c2VkIHRvIHJlYWQgYW5kIG5vdCB3cml0ZQogICAgc3RydWN0IHN0YXRTdHJ1Y3Qgc3RhdHMgPSB7c3VtLGF2ZXJhZ2Usc3RkRGV2fTsgLy9hdCBpdCdzIGhlcmF0IFRISVMgSVMgV0hBVCBZT1UgV0VSRSBNSVNTSU5HCiAgICByZXR1cm4gc3RhdHM7Cn0=