- Yettel topik
- Samsung Galaxy S22 Ultra - na, kinél van toll?
- Magisk
- Mobil flották
- Egy szenzor, két zoomkamera: újraírta a Huawei a mobilfotózás történetét
- Bemutatkozott a Poco X7 és X7 Pro
- Xiaomi 11 Lite 5G NE (lisa)
- Samsung Galaxy A56 - megbízható középszerűség
- Google Pixel topik
- Samsung Galaxy A55 - új év, régi stratégia
-
Mobilarena
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Mutt
senior tag
válasz
#77257183 #53400 üzenetére
Szia,
Itt az én makrós változatom.
Option Explicit
Dim fibonacci(1000) As Variant 'megtalált fibonacci számok listája
Sub Valaszt()
Dim c As Long
Dim r As Double
Dim pozicio As Long
'Rnd() függvénynek kell, különben nem lesz igazán véletlenszám
Randomize
'1-es poziciótól indulunk
pozicio = 1
With ActiveSheet
'fejléc a füzetre
.Range("A1") = "Lépés"
.Range("B1") = "Pozíció"
.Range("C1") = "Véletlen szám"
.Range("D1") = "Fibonacci szám"
'100 lépéses ciklus
For c = 1 To 100
r = Rnd()
'fel-le lépkedünk a listában
If r < 0.5 Then
pozicio = pozicio + 1
Else
If pozicio > 2 Then
pozicio = pozicio - 2
Else
pozicio = 1
End If
End If
'kiírtajuk a kapott eredeményeket
.Cells(c + 1, "A") = c
.Cells(c + 1, "B") = pozicio
.Cells(c + 1, "C") = r
.Cells(c + 1, "D") = FibonacciNum(pozicio)
Next c
End With
End Sub
'rekurzív fibonacci szám generátor
Function FibonacciNum(n As Long)
If Not IsEmpty(fibonacci(n)) Then
FibonacciNum = fibonacci(n)
Exit Function
End If
If n = 0 Then
FibonacciNum = 0
fibonacci(0) = 0
Exit Function
End If
If n = 1 Then
FibonacciNum = 1
fibonacci(1) = 1
Exit Function
End If
FibonacciNum = FibonacciNum(n - 1) + FibonacciNum(n - 2)
fibonacci(n) = FibonacciNum
End Function
üdv
-
föccer
nagyúr
válasz
#77257183 #53400 üzenetére
Makró beszúrása, ha a munkalapon vagy, akkor alt+F11.
Gombot a fejlesztőeszközök menöből lehet kirakni.Munka1 munkafüzeten, ez a makró:
Sub Gomb1_Click()
Dim Fib_sorszam As Integer
Dim Lepes_szam As Integer
Dim i As Integer
Fib_sorszam = 1
Lepes_szam = Sheets("Munka1").Range("F2").Value
For i = 1 To Lepes_szam
If Application.RandBetween(0, 1) = 0 Then
Fib_sorszam = Fib_sorszam + 1
End If
Next
Sheets("Munka1").Range("F3").Value = Sheets("Munka1").Cells(Fib_sorszam, 2).Value
Sheets("Munka1").Range("F4").Value = Fib_sorszam
End Sub
ps: egyébként nagyon érzékeny az eredmény arra, hogy az első 1-2-3 lépésben mennyi pozitív lépés van.
Új hozzászólás Aktív témák
- SD-kártyát vennél? Ezért ne csak a GB-ot nézd! – Tech Percek #9
- A fociról könnyedén, egy baráti társaságban
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Macron betiltatná az EU-ban a közösségi médiát a 15 év alattiaknak
- Gaming notebook topik
- Atomenergiával dübörögnek tovább az Amazon adatközpontok, SMR-ek is jöhetnek
- Luck Dragon: Asszociációs játék. :)
- Plazma TV topic
- Háztartási gépek
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- További aktív témák...
- 124 - Lenovo Yoga Pro 7 (14IMH9) - Intel Core Ultra 9 185H, RTX 4060 (48 hónap garancia!) (ELKELT)
- MSI CreatorPro Z16P - i7-12700H, RTX A5500, értintőkijelző
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- Lenovo Legion 5 Gaming. Az ár irányár, komoly érdeklődés esetén van lehetőség egyeztetésre
- Országosan a legjobb BANKMENTES részletfizetési konstrukció! Vásárolj okosan, fizess kényelmesen!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged