Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ เพื่อคำนวณค่าเบี่ยงเบนมาตรฐาน


ส่วนเบี่ยงเบนมาตรฐานคือการวัดการกระจายของตัวเลขในข้อมูล คือรากที่สองของความแปรปรวน โดยที่ความแปรปรวนคือค่าเฉลี่ยของผลต่างกำลังสองจากค่าเฉลี่ย

มีโปรแกรมคำนวณค่าเบี่ยงเบนมาตรฐานดังนี้

ตัวอย่าง

#include <iostream>
#include <cmath>
using namespace std;
int main() {
   float val[5] = {12.5, 7.0, 10.0, 7.8, 15.5};
   float sum = 0.0, mean, variance = 0.0, stdDeviation;
   int i;
   for(i = 0; i < 5; ++i)
   sum += val[i];
   mean = sum/5;
   for(i = 0; i < 5; ++i)
   variance += pow(val[i] - mean, 2);
   variance=variance/5;
   stdDeviation = sqrt(variance);
   cout<<"The data values are: ";
   for(i = 0; i < 5; ++i)
   cout<< val[i] <<" ";
   cout<<endl;
   cout<<"The standard deviation of these data values is "<<stdDeviation;
}

ผลลัพธ์

The data values are: 12.5 7 10 7.8 15.5
The standard deviation of these data values is 3.1232

ในโปรแกรมข้างต้น ขั้นแรกจะได้รับผลรวมของค่าข้อมูล จากนั้นหาค่าเฉลี่ยโดยการหารผลรวมด้วยจำนวนองค์ประกอบ มีให้ในข้อมูลโค้ดต่อไปนี้

for(i = 0; i < 5; ++i)
sum += val[i];
mean = sum/5;

ความแปรปรวนของข้อมูลหาได้โดยการยกกำลังผลต่างจากค่าเฉลี่ย บวกแล้วจึงหาค่าเฉลี่ย ซึ่งแสดงในข้อมูลโค้ดต่อไปนี้

for(i = 0; i < 5; ++i)
variance += pow(val[i] - mean, 2);
variance=variance/5;

ค่าเบี่ยงเบนมาตรฐานหาได้จากการหาค่ารากที่สองของความแปรปรวน จากนั้นจะแสดงค่าข้อมูลทั้งหมดและค่าเบี่ยงเบนมาตรฐาน ได้ดังนี้

stdDeviation = sqrt(variance);
cout<<"The data values are: ";
for(i = 0; i < 5; ++i)
cout<< val[i] <<" ";
cout<<endl;
cout<<"The standard deviation of these data values is "<<stdDeviation;