Matematické Fórum


1. 8. 2026 (L) Fórum bude brzy uzavřeno 😿

Nejste přihlášen(a). Přihlásit

#1 05. 11. 2016 17:17

krucibrk
Příspěvky: 88
Reputace:   
 

Spolecna hodnota dvou posloupnosti

Ahoj,

hledam nejnizsi spolecnou hodnotu dvou posloupnosti.

Napriklad:

zacatek1: 36, diference: 20
zacatek2: 29, diference: 17

nejnizsi spolecna hodnota je 216.

Nektere posloupnosti ale nebudou mit spolecnou hodnotu, a ja nemuzu prijit na zpusob, kterym bych to lehce zjistil.
Poradi mi nekdo jak na to?

Diky za odpoved.

Offline

 

#2 05. 11. 2016 17:22

misaH
Příspěvky: 13467
 

Re: Spolecna hodnota dvou posloupnosti

↑ krucibrk:

A ako si našiel tú 216?

Offline

 

#3 05. 11. 2016 17:26

krucibrk
Příspěvky: 88
Reputace:   
 

Re: Spolecna hodnota dvou posloupnosti

↑ misaH:
celkem tupě, postupne sem pricital vzdy k mensimu cislu jeho diferenci dokud se nerovnali :D

Offline

 

#4 05. 11. 2016 17:57

Stýv
Vrchní cenzor
Příspěvky: 5710
Reputace:   215 
Web
 

Re: Spolecna hodnota dvou posloupnosti

vygoogli si pojem (lineární) diofantická rovnice

Offline

 

#5 06. 11. 2016 21:26 — Editoval krucibrk (06. 11. 2016 21:29)

krucibrk
Příspěvky: 88
Reputace:   
 

Re: Spolecna hodnota dvou posloupnosti

↑ Stýv:
Tak jsem to pogooglil, a vychazi mi to jen pro nejake priklady.
Treba pro 20x - 17y = -7 to funguje dobre, ale pak treba pro 25x - 17y = -17 nebo 56x-72y=24 mi to nefunguje.
(Snazim se napsat program ktery to vypocita).
Pouzivam k vypoctu rozsireny eukliduv algoritmus.

K vysledku se dostanu takhle:
pomoci euklida zjistim x0 a y0, dosadim do  a*x0 + b*y0 = 1,vezmu si x0,y0, vynasobim c-ckem a pouziju vzorec
x = x0 - (b/gcd(a,b))*t
y = y0 + (a/gcd(a,b))*t

x a y chci mit obe kladne, a tak zvysuju 't' dokud se tak nestane.

Offline

 

#6 07. 11. 2016 17:40 — Editoval mák (07. 11. 2016 20:10)

mák
Místo: Vesmír, Galaxie MD
Příspěvky: 920
Reputace:   63 
 

Re: Spolecna hodnota dvou posloupnosti

Zdravím,

Tato funkce najde nejbližší souběh dvou posloupností, pokud není, vrátí nulu.

Code:

Function Shoda(Z1,P1,Z2,P2)
    Dim N    
    N = P1 + P2
    Do Until Z1=Z2
        If Z2>Z1 Then
            Z1 = Z1 + P1
        Else
            Z2 = Z2 + P2
        EndIf
        If N>0 Then
            N = N - 1
        Else
            Z1 = N
            Exit Do
        EndIf
    Loop
    Shoda = Z1    
End Function

Z1 - počáteční hodnota první posloupnosti
P1 - pravidelný přírůstek první posloupnosti
analogicky Z2,P2

Jak velký násobek P1, či P2 to je, už si dopočítáš...


LibreOffice Verze: 25.8.4.2, Maxima 5.49.0 (SBCL)

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson