作者smooth131 (囧rz)
看板Visual_Basic
標題[VBA ] 判斷數列是否呈現"遞增or遞減"
時間Wed Aug 17 23:30:28 2011
【目的】
1.求出以下數列是否呈現遞增or遞減的狀態
2.判斷遞增or遞減的起始點及終點的數值
【資料狀態】
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
【問題描述】
1. 如何判斷是否為遞增or遞減狀態已經好了,
目前想知道的是怎麼樣求得起始點及終點的值
2. 照我這樣寫,只要k > num 時k = 0,原意是想當k > num 時才判定成遞增
,現在想改卻不知道該從何下手
感謝各位大哥的協助 m(-_-)m
【程式碼】
Sub test()
Dim n As Integer, num As Integer
num = 10
Sheets("sheet1").Select
Range(Cells(1, 1), Cells(1, 1).End(xlDown)).Select
n = Selection.CountLarge
For i = 1 To n - 1
If Cells(i, 1).Value < Cells(i + 1, 1).Value Then
k = k + 1
If k > num Then
MsgBox "呈遞增現象"
k = 0
End If
ElseIf Cells(i, 1).Value > Cells(i + 1, 1).Value Then
k = k + 1
If k > num Then
MsgBox "呈遞減現象"
k = 0
End If
Else
k = 0
End If
Next
End Sub
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.254.232.245
※ 編輯: smooth131 來自: 114.40.164.111 (08/18 00:00)
→ MOONRAKER:用微積分的做法就可以了。 08/18 00:37
→ MOONRAKER:一階差分=>判斷斜率 二階差分=>判斷增減趨勢 08/18 00:38
→ smooth131:微積分…不太懂,是否可換種說法 thx 08/18 22:43
→ MOONRAKER:差分:鄰近兩點上y的差值除以x的差值 08/20 20:05