1樓:**辦公軟體課程
分享兩個求平均分的方法,前提是分別去掉乙個最高分和最低分。
vb程式 去掉乙個最高分乙個最低分求平均分
2樓:網友
dim a(10)是定義有10個成員的一維陣列,a(i)是對陣列中的第i個成員的引用。
vb算完平均分後排序。
3樓:寧宇碧凡桃
首先把你這10個平均數儲存在乙個陣列裡,可以在上面的程式中新增賦值給陣列的語句,然後排序、輸出結果。
public
a(10)private
subcommand3_click()
從小到大排序。fori
toforj
toiifa(j)a(j
thenca(j)a(j)a(j
a(jcend
ifnextjnext
i輸出。fori
toprinta(i
nextiendsub
請幫忙編寫vb**:有n個人的分數,去掉最高分和最低分後,以n-2個資料的平均值作為最終分數。跪謝啊!!
4樓:網友
n=? '值可以用輸入框輸入或文字框輸入dim a(1 to n) as integermin=a(1)
max=a(1)
for i=1 to n
if a(i)>max then max=a(i)if a(i)next i
pjs=(sum-min-max)/(n-1) '平均分數。
5樓:網友
private sub command1_click()
if val( = 0 then
msgbox "你輸入的評分人數不正確!"
exit sub
end if
dim rs as integer, fs() as single, gd as single, zf as single
將輸入的評分人數儲存到變數 rs 中。
rs = val(
redim fs(1 to rs) '動態陣列初始化。
產生rs個的隨機數,由於是隨機數,每次結果是不同的。
for i = 1 to rs
randomize
fs(i) = int(rnd * 100 + 900) / 10
next i
下面是將分數以小到大排序。
for i = 1 to rs - 1
for j = i + 1 to rs
if fs(i) >fs(j) then
gd = fs(i): fs(i) = fs(j): fs(j) = gd
end if
next j
next i
去掉最高分和最低分,排序後第乙個肯定是最小數,最後乙個肯定是最大數,將它們賦值為0,就是清除了分數。
fs(1) = 0: fs(rs) = 0
for i = 1 to rs '求分數總數。
zf = zf + fs(i)
next i
求平均分數,rs - 2 的意思就是有分數的只有rs - 2 個。
round((zf / (rs - 2)),3)
end sub
private sub form_load()
求平均分數"
end sub
6樓:網友
定義乙個陣列並賦值,用for函式吧最大值和最小值提出dim a(n) as single
dim i, max,min sum p as integer,max = 1
給陣列賦值)
for i = 2 to n
if a(max) >a(i) thenmin = max
max = i
end if
next i
for i = i to n
if i = max or i = min thennext i
elsesum = sum + i
end if
next i
p = sum / n
print p
vb中求得分 去掉最高分和最低分後求平均分為選手的的最終得分
在窗體中做一個文字框,複製後貼上7份 做成控制元件陣列 text1 0 text1 6 放裁判打分,最後一個放平均分 private sub command1 click s val text1 0 text max s min s for i 1 to 6 x val text1 i text i...
為什麼不能把幾個平均數相加然後求平均數
將所有的加起來除以基數就是表示各個人分的蘋果的權重是一樣的,但是按照樓主後面說的情況就是指個人分的蘋果的權重不一樣 如果要用幾組數的平均數來求也可以 比如你的例子 就應該 2 3 4 1 4 而不是直接4 2然後除以4 只有每組數的個數相同時,才能直接求,但也只是一種簡便形式 大姐 基數後來怎麼變成...
求算術平均數加權平均數方差的計算公式
m x1 x2 xn n x bar x1 f1 x2 f2 xk fk n s 2 1 n x1 x 2 x2 x 2 xn x 2 方差 標準差 加權平均數 平均數公式 方差 標準差 加權平均數 將各數值乘以相應的權數,然後加總求和得到總體值,再除以總的單位數。平均數 加權平均數求方差?50 n...