/* June 15, 1998 */ /* program to find largest, smallest and average values in a collection of N numbers and display range and standard deviation*/ #include #include /* function prototype */ double std_dev (double ave, double sum, int snum); main () { /* begin main */ /* declaration */ int num; int i; double total; double average; double current_num; double smallest; double largest; double sum_squares; /* Get N */ printf("Enter value of N> "); scanf("%d", &num); /* values initialization */ total = 0; /* determine smallest and largest number */ for (i = 1; i <= num; ++i) { /* begin for loop */ /* request input */ printf("Enter current number> "); scanf("%lf", ¤t_num); if (i == 1) { smallest = current_num; largest = current_num; } if (current_num < smallest) { smallest = current_num; } if (current_num > largest) { largest = current_num; } total += current_num; sum_squares += pow(current_num, 2); } /* end for loop */ /* calculate average */ average = total / num; /* display results */ printf("The smallest number is %.2f.\n", smallest); printf("The largest number is %.2f.\n", largest); printf("The average is %.2f.\n", average); printf("Standard deviation is %.2f\n", std_dev(average, sum_squares, num)); } /* end main */ /* function definition */ double std_dev (double ave, double sum, int snum) { return (sqrt((sum / snum) - pow(ave, 2))); }