mirror of
https://github.com/TheAlgorithms/C
synced 2024-11-22 21:41:59 +03:00
55 lines
1.5 KiB
C
55 lines
1.5 KiB
C
|
#include<stdio.h>
|
||
|
#include <stdlib.h>
|
||
|
#include<math.h>
|
||
|
|
||
|
int main() {
|
||
|
|
||
|
int *ARRAY=NULL,ARRAY_LENGTH,i,TEMPORARY_ELEMENT,isSorted=0;
|
||
|
float MEAN=0,VARIANCE=0,STAND;
|
||
|
|
||
|
|
||
|
printf("Enter no. for Random Numbers :");
|
||
|
scanf("%d",&ARRAY_LENGTH);
|
||
|
ARRAY=(int *)realloc(ARRAY,ARRAY_LENGTH*(sizeof(int))); //We allocate the dedicated memory
|
||
|
for(i=0;i<ARRAY_LENGTH;i++) //We generate the random numbers
|
||
|
ARRAY[i]=rand()%100;
|
||
|
|
||
|
printf("Random Numbers Generated are :\n"); //We display them
|
||
|
for(i=0;i<ARRAY_LENGTH;i++)
|
||
|
printf("%d ",ARRAY[i]);
|
||
|
|
||
|
printf("\nSorted Data: ");//Then we sort it using Bubble Sort..
|
||
|
|
||
|
while(!isSorted){ //While our array's not sorted
|
||
|
isSorted=1; //we suppose that it's sorted
|
||
|
for(i=0;i<ARRAY_LENGTH-1;i++){ //then for each element of the array
|
||
|
if(ARRAY[i]>ARRAY[i+1]){ // if the two elements aren't sorted
|
||
|
isSorted=0; //it means that the array is not sorted
|
||
|
TEMPORARY_ELEMENT=ARRAY[i]; //and we switch these elements using TEMPORARY_ELEMENT
|
||
|
ARRAY[i]=ARRAY[i+1];
|
||
|
ARRAY[i+1]=TEMPORARY_ELEMENT;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
for(i=0;i<ARRAY_LENGTH;i++) {
|
||
|
printf("%d ",ARRAY[i]);
|
||
|
MEAN=MEAN+ARRAY[i];
|
||
|
}
|
||
|
MEAN=MEAN/(float)ARRAY_LENGTH;
|
||
|
|
||
|
for(i=0;i<ARRAY_LENGTH;i++)
|
||
|
VARIANCE=VARIANCE+(pow((ARRAY[i]-MEAN),2));
|
||
|
|
||
|
VARIANCE=VARIANCE/(float)ARRAY_LENGTH;
|
||
|
STAND=sqrt(VARIANCE);
|
||
|
|
||
|
|
||
|
printf("\n\n- Mean is: %f\n",MEAN);
|
||
|
printf("- Variance is: %f\n",VARIANCE);
|
||
|
printf("- Standard Deviation is: %f\n",STAND);
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|