編程找中間數
1. VB編程求5個數的中位數問題
老師與你們鬧著玩?
用If語句嵌套,把你們的頭弄暈為止!
你還是老老實實,排序,然後輸出中間的一個數字C!
比如,從小到大排!
首先,更正你的Dim語句是錯誤的理解?
Dim a As Double, b As Double, c As Double, d As Double, e As Double
Dim T As Double '我再加一個變數,交換用
a = Val(InputBox("請輸入第一隻小雞的體重(以kg為單位)"))
b = Val(InputBox("請輸入第二隻小雞的體重(以kg為單位)"))
c = Val(InputBox("請輸入第三隻小雞的體重(以kg為單位)"))
d = Val(InputBox("請輸入第四隻小雞的體重(以kg為單位)"))
e = Val(InputBox("請輸入第五隻小雞的體重(以kg為單位)"))
'開始排序
If a > b Then
T = a:a = b:b = T '中間是冒號,不太看得清!!!
End If
If a > c Then
T = a:a = c:c = T '中間是冒號,不太看得清!!!
End If
If a > d Then
T = a:a = d:d = T '中間是冒號,不太看得清!!!
End If
If a > e Then
T = a:a = e:e = T '中間是冒號,不太看得清!!!
End If
'經過以上四個IF,a里是最小的了
If b > c Then
T = b:b = c:c = T '中間是冒號,不太看得清!!!
End If
If b > d Then
T = b:b = d:d = T '中間是冒號,不太看得清!!!
End If
If b > e Then
T = b:b = e:e = T '中間是冒號,不太看得清!!!
End If
'經過以上三個IF,b里是第2小的了
If c > d Then
T = c:c = d:d = T '中間是冒號,不太看得清!!!
End If
If c > e Then
T = c:c = e:e = T '中間是冒號,不太看得清!!!
End If
'經過以上兩個IF,c里是第3小的了----也就是中間那個數了
Print c
2. C語言 計算總和\平均值\中間值\方差
這個題沒有必要進行排序
#include<stdio.h>
void main()
{
int s[20],sum=0,i;
float b=0,ave=0;
for(i=0;i<20;i++)
{
scanf("%d",&s[i]);
}
for(i=0;i<20;i++)
sum+=s[i];
ave=(float)sum/20;
for(i=0;i<20;i++)
b+=((float)s[i]-ave)*((float)s[i]-ave);
printf("平均數%f,中間數%d,%d,方差%f",ave,s[9],s[10],b);
}