จากโจทย์ในเว็บ http://pantip.com/topic/32295263
โจทย์ 98,23,17,6,70,45,52,80,44,61,38,8,13,15,39,26,88,10,66,28 แล้วผมทำการเรียงลำดับจากน้อยไปมากครับ 6,8,10,13,15,17,23,26,28,38,39,44,45,52,61,66,70,80,88,98 ผมจะเอาตัวเลขทั้งหมดมาบวกกันครับ เพื่อหาค่ากลาง ในโจทย์นี้จะได้ 827/2 = 413.5 เพราะฉะนั้นจะได้ X = 413 , Y = 414
/*
@Author: Mr.Suppakit Thongdee
@Website: www.sourcecode.in.th
*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
void main(){
int arrNum[20] = {98,23,17,6,70,
45,52,80,44,61,
38,8,13,15,39,
26,88,10,66,28};
int iTotal = 0;
int i;
int iX;
int iY;
int iTemp;
clrscr();
//Show Input
printf("Input:");
for(i=0; i<20; i++){
printf("%d ", arrNum[i]);
}
printf("\n");
//Order
for(i=0; i<20; i++){
for(int j=i+1; j<20; j++){
if(arrNum[i] > arrNum[j]){ //Swap
iTemp = arrNum[i];
arrNum[i] = arrNum[j];
arrNum[j] = iTemp;
}
}
}
//Show Order
printf("Output:");
for(i=0; i<20; i++){
printf("%d ", arrNum[i]);
}
printf("\n");
//Add
for(i=0; i<20; i++){
iTotal = iTotal + arrNum[i];
}
printf("Total = %d\n",iTotal);
iX = floor((double)iTotal/2);
iY = ceil((double)iTotal/2);
printf("X = %d\n", iX);
printf("Y = %d\n", iY);
getch();
}
|