Python/C/C++/JAVA

Moderate Practice Programs with Code and Concept

By D.S

Program to Calculate Standard Deviation

If you need to calculate the standard deviation of a set of data in any programming language, fear not! There are many straightforward solutions available. For instance, in C or C++, you can use the statistical functions implemented in the math library. Python has the NumPy and SciPy libraries with built-in methods for handling statistics, including calculating standard deviation. Java also has its own set of libraries used for calculations like this, such as Apache Math Commons or JMathTools. In each instance, it's merely a matter of using the appropriate library and calling the necessary method to arrive at your result. With just a little bit of coding know-how, you’ll be able to quickly and easily determine standard deviation across all these languages.

(a.) C Code

#include <stdio.h>
#include 
double calculateMean(int arr[], int n) {
        int sum = 0;
        for (int i = 0; i < n; ++i) {
            sum += arr[i];
        }
        return (double)sum / n;
    }
    
    double calculateSD(int arr[], int n) {
        double mean = calculateMean(arr, n);
        double sum = 0;
        for (int i = 0; i < n; ++i) {
            sum += pow(arr[i] - mean, 2);
        }
        return sqrt(sum / n);
    }
    
    int main() {
        int arr[] = {2, 4, 4, 4, 5, 5, 7, 9};
        int n = sizeof(arr) / sizeof(arr[0]);
        printf("Standard Deviation: %.6lf", calculateSD(arr, n));
  return 0;
}
Output:-
Standard Deviation: 1.914854

(b.) C++ Code

#include <iostream>
#include 
using namespace std;

      
      double calculateMean(int arr[], int n) {
          int sum = 0;
          for (int i = 0; i < n; ++i) {
              sum += arr[i];
          }
          return (double)sum / n;
      }
      
      double calculateSD(int arr[], int n) {
          double mean = calculateMean(arr, n);
          double sum = 0;
          for (int i = 0; i < n; ++i) {
              sum += pow(arr[i] - mean, 2);
          }
          return sqrt(sum / n);
      }
      
      int main() {
          int arr[] = {2, 4, 4, 4, 5, 5, 7, 9};
          int n = sizeof(arr) / sizeof(arr[0]);
          cout << "Standard Deviation: " << calculateSD(arr, n);

    return 0;
}
Output:-
Standard Deviation: 1.914854

(c.) Python Code

def calculate_mean(arr):
      return sum(arr) / len(arr)
  
  def calculate_sd(arr):
      mean = calculate_mean(arr)
      variance = sum((x - mean) ** 2 for x in arr) / len(arr)
      return variance ** 0.5
  
  arr = [2, 4, 4, 4, 5, 5, 7, 9]
  print("Standard Deviation:", calculate_sd(arr))
Output:-
Standard Deviation: 1.914854

(d.) Java Code

public class Main {
      public static double calculateMean(int[] arr) {
          int sum = Arrays.stream(arr).sum();
          return (double) sum / arr.length;
      }
  
      public static double calculateSD(int[] arr) {
          double mean = calculateMean(arr);
          double sum = Arrays.stream(arr).mapToDouble(num -> Math.pow(num - mean, 2)).sum();
          return Math.sqrt(sum / arr.length);
      }
  
      public static void main(String[] args) {
          int[] arr = {2, 4, 4, 4, 5, 5, 7, 9};
          System.out.println("Standard Deviation: " + calculateSD(arr));
      }
  }
Output:-
Standard Deviation: 1.914854