Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

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

#1 03. 11. 2012 13:04

Seith
Zelenáč
Příspěvky: 3
Škola: FIT ČVUT
Pozice: student
Reputace:   
 

Algoritmus pro shodný člen dvou aritmetických posloupností

Dobrý den,

existuje nějaký postup jak pro dvě aritmetické posloupnosti zjistit hodnotu, která je v obou obsažena? Poslopnosti jsou rostoucí. Potřeboval bych nejnižší možnou hodnotu, která vyhovuje.

Nevím jestli jsem dostatečně pochopitelně formuloval můj problém, proto raději ještě uvedu příklad:

$a_1=13, d_a=2$

$b_1=9, d_b=7$

Posloupnost a: 13, 15, 17, 19, 21, 23, ...
Posloupnost b: 9, 16, 23, ...

Výsledkem je číslo 23.

Offline

 

#2 03. 11. 2012 13:53

JohnPeca18
Příspěvky: 651
Škola: MFF UK
Pozice: Absolvent 2014
Reputace:   81 
 

Re: Algoritmus pro shodný člen dvou aritmetických posloupností

Mne napada napsat si to jako
$a_1+md_a=b_1+nd_b$
Vyjadrit jsi třeba m
$m=\frac{b_1+nd_b-a_1}{d_a}$
A zistit pro které nejmensi n je vyraz delitelny. Nevim teda jestli je na to nejaky algoritmus.
Pripadne si vyjadrit analogicky n a zkouset to z obou stran.
Totiz niekedy to ani nemusi mat riesenie.
Povedzme
pre
$a_1=0, d_a=5,b_1=1, d_b=5$

Offline

 

#3 03. 11. 2012 14:17 — Editoval JohnPeca18 (03. 11. 2012 14:24)

JohnPeca18
Příspěvky: 651
Škola: MFF UK
Pozice: Absolvent 2014
Reputace:   81 
 

Re: Algoritmus pro shodný člen dvou aritmetických posloupností

Jo to ze to nema reseni, se da zistit tak, ze zistime Nejvetsi spolecny delitel (NSD) $k=NSD(d_a,d_b)$ vydelime obidve strany rovnice $a_1+md_a=b_1+nd_b$. $a_1$ a $b_1$ vydelim celociselne a pokial na obidvoch stranach neostane rovnaky zvysok po deleni, tak to riesenie nema. Pokial je zvysok rovnaky, tak by som tie zvysky odpocital a zostane mi jednoduchsia rovnica.
$\lfloor\frac{a_1}{k}\rfloor+m\frac{d_a}{k}=\lfloor\frac{b_1}{k}\rfloor+n\frac{d_b}{k}$

Offline

 

#4 03. 11. 2012 14:28 — Editoval Seith (03. 11. 2012 14:29)

Seith
Zelenáč
Příspěvky: 3
Škola: FIT ČVUT
Pozice: student
Reputace:   
 

Re: Algoritmus pro shodný člen dvou aritmetických posloupností

↑ JohnPeca18:
Pomocí tohoto vzorce by šel realizovat algoritmus

krok 1: pokud $d_a<d_b$, tak prohoď posloupnosti (algoritmus má pak méně iterací)
krok 2: $n = 0$
krok 3: platí $(a_1 + n d_a - b_1) mod\text{ } d_b = 0$ ?
-pokud ano $\text{společná hodota} = b_1+nd_b$
-pokud ne $n=n+1$ a znovu krok 3

Zkusím jej realizovat ve svém programu a uvidím, jestli projde kritériem časové složitosti, děkuji.

Offline

 

#5 03. 11. 2012 14:32 — Editoval JohnPeca18 (03. 11. 2012 14:33)

JohnPeca18
Příspěvky: 651
Škola: MFF UK
Pozice: Absolvent 2014
Reputace:   81 
 

Re: Algoritmus pro shodný člen dvou aritmetických posloupností

↑ Seith:
Urcite bych tam ale dal to ten test na soudelnost, jak sem psal v druhem prispevku, NSD se da rychle zistit Euklidovym algoritmem. Jinak se ti muze stat, ze program neskonci.

Offline

 

#6 03. 11. 2012 14:37

Seith
Zelenáč
Příspěvky: 3
Škola: FIT ČVUT
Pozice: student
Reputace:   
 

Re: Algoritmus pro shodný člen dvou aritmetických posloupností

↑ JohnPeca18:
Ano, ten tam dám. Prý to jde lépe pomocí rozšířeného euklidova algoritmu, bohužel po prostudování materiálů na internetu a s mým současným matematickým aparátem nejsem schopen přijít na to, jak jej použít.

Offline

 

#7 04. 11. 2012 14:50

Magicmaster
Místo: Plzeň
Příspěvky: 47
Škola: FIT ČVUT
Pozice: Student
Reputace:   
 

Re: Algoritmus pro shodný člen dvou aritmetických posloupností

↑ Seith:
Prošlo ti tohle řešení časově progtestem? Taky bojuju s tím, jak na to napasovat Eukleida, ale zatím nic

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson