Υπολογισμός τετραγωνικών αποκλίσεων σε πίνακα C++
Μια τυπική εφαρμογή της χρήσης πινάκων είναι να βρεθεί η τετραγωνισμένη απόσταση από το μέσο. Αν x είναι διάνυσμα αριθμητικών τιμών, να βρεθεί η ποσότητα:
$$ (x-\bar{x})^2 $$
Για το λόγο αυτό, οι τιμές του διανύσματος x χρειάζονται δύο φορές: μία για να υπολογιστεί ο μέσος, και άλλη μία για να υπολογιστεί η διαφορά.
#include <stdio.h>
#include <math.h>
using namespace std;
#define N 5
int main()
{
int i;
double x[N] = {4.5, 2.3, 5.5, 6.7, 4};
double s[N];
double sum = 0;
double ave = 0;
for (i=0; i < N; i++)
{
sum += x[i];
}
ave = sum / N;
printf ("%5s %12s %12s\n", "i", "x", "s");
printf ("-------------------------------\n");
for (i=0; i < N; i++)
{
s[i] = pow(ave-x[i], 2.0);
printf ("%5d %12.6f %12.6f\n", i+1, x[i], s[i]);
}
printf("\n");
return 0;
}
Μεταγλώττιση και εκτέλεση:
astavrak@apollonia:~$ g++ program.cpp
astavrak@apollonia:~$ ./a.out
i x s
-------------------------------
1 4.500000 0.010000
2 2.300000 5.290000
3 5.500000 0.810000
4 6.700000 4.410000
5 4.000000 0.360000
Η στήλη x τυπώνει τα στοιχεία του πίνακα, ενώ η στήλη s τυπώνει τη τετραγωνισμένη διαφορά από τον μέσο.
σχολιασμοί, εξωτερικοί σύνδεσμοι, βοήθεια, ψηφοφορίες, αρχεία, κτλ.
Εκπαιδευτικό υλικό από τον
Αθανάσιο Σταυρακούδη
σας παρέχετε κάτω από την άδεια
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License.
Σας παρακαλώ να ενημερωθείτε για κάποιους επιπλέον περιορισμούς
http://stavrakoudis.econ.uoi.gr/stavrakoudis/?iid=401.