Jump to content
php.lv forumi

matemātika, kur tad bez tās


ezis

Recommended Posts

hei!

Vajag palīdzību ar matemātiskiem rēķiniem :(

Ir jāizveido matemātiska formula, kurā nodefinējot mainīgo x iegūst attiecīgo vērtību - piemēram y.

Tātad, ja x ir 4, tad atbilde ir 2, ja x ir skaitlis no 5 liidz 8, tad atbilde ir 4, ja x ir skaitlis no 9 lidz 16, tad atbilde ir 8, ja 17 utt. tad atbilde ir 16...

y vērtības var būt ar komatu. It kā jau ar x vērtībām 4, 8, 16, 32 dotu arā vesalus skaitļus..

Link to comment
Share on other sites

Reāli nesaskatu nekādu konsikvenci tavos dotajos piemēros...

Varbūt piemeklē labākus piemērus? Vai vispār pastāsti, kāda ir tā doma, kāds rezultāts ir vajadzīgs...

 

Iespējams, ka te pietiks ar dalīšanu un apaļošanu (uz augšu, vai uz leju)

Edited by briedis
Link to comment
Share on other sites

visas vērtības atrastas pēc novērojumiem ^^ vienkārši tā sanāk, ja raksta ar roku visus mainīgos.. bet vajag atrast tieši formulu, lai attiecīgi pēc mainīga atrastu vajadzīgo atbildi..

pagaidām cik esmu pamanījis, tad atbildes atkārtojas ar attiecību.. tas ir: ja ir 4, tad atbilde ir viens, tātad atkārtojas 1x reizi, no 5 līdz 8, tad atbilde atkārtojas 4 reizes, ja no 9 līdz 16, tad atkārtojas 8 reizes.. no tā izskatās, ka atbildes atkārtojas par 2^2, 2^3, 2^4

kā jau minēju uz skaitļiem 4, 8, 16, 32 varētu būt vesalas vērtības, bet pārējās ar komatiem.. vērā ņemts tiktu any way tikai vesalais

 

Tiek veidota Double Elimination turnīra tabula. Respektīvi tās ģenerators. Lai izskaitļotu cik pavisam fināli un pusfināli man būs, es izmantoju formulu log2(x/2).. Bet ar patreiz meklēto formulu es varēšu pareizi sakārtot tabulu arī nepāra skaita komandām.. ne tikai komandām 4, 8, 16, 32, 64 utt..

 

http://www.printyourbrackets.com/17teamdoubleelimination.html

šeit var redzēt, ka no sākuma spēlē divas komandas un pēc tam 16

http://www.printyourbrackets.com/8teamdoubleelimination.html

šeit atkal visas 8 spēlē uzreiz. nav vajadzības dalīt..

 

ar atrasto sakarību varēs automātiski salikt cik un kad spēlēs..

Edited by ezis
Link to comment
Share on other sites

tur jau nevis funkcija, bet gan kaut kāda sistēma sanāk.

define('x',7);// komandus skaits
for($i = 1;2^$i<x;$i++){
$y = 2^$1;
if(x <= $y){
 print "Būs $y tabuliņas pirmajā tūrnīra tabulas slānī";
 break;
}
}

 

Palabojat, ja kļūdos.

Edited by waplet
Link to comment
Share on other sites

Sapratu, kā notiek kārtošana :D Tā kā formulu nezinu un nezinu vai tāda vispār eksistē šai sakarībai, bet atrast cik kad spēlēs var ^^ Ja tabulu uztaisa pēc maksimums iespējama komandu skaita, tā lai sanāktu šāda tabula: http://www.printyourbrackets.com/8teamsingleelimination.html , tas ir tabula, kura nav jāsadala savādāk.. tad no visu komandu skaita atņem to komandu skaitu, cik sanāca, lai izveidotu tādu smuku tabulu.. iegūst komandu atlikumu.. tagad var uzzināt cik spēles būs pirms tam. tā kā viens uzvarētājs ies tālāk no pāra, tad jāatbrīvo vieta, tas nozīmē, kad attiecīgi cik pārī spēlēs pirms tam, tik pāri/2 vēl nāks klāt pirmajās spēlēs.. un tā uz priekšu.. grūti izskaidrot, bet zinu, ka tā darbojas :D

 

EDIT:

 

Ko Tu biji domājis ar $1 ? Respektīvi $i ?

Edited by ezis
Link to comment
Share on other sites

$y = pow( 2, ceil( log( $x / 2, 2 ) ) )

Pēēldies.. Vis sanāk ideāli šādi:

$y = pow( 2, ceil( log( $x / 2, 2 ) ) ) / 2

Nezināju par tādu ceil... ^^ Iepriekš ņēmos neveiksmīgi ar visādiem round() utt.. ^^

Link to comment
Share on other sites

Pēēldies.. Vis sanāk ideāli šādi:

$y = pow( 2, ceil( log( $x / 2, 2 ) ) ) / 2

Nezināju par tādu ceil... ^^ Iepriekš ņēmos neveiksmīgi ar visādiem round() utt.. ^^

 

nu tad tagad atceries, ir arī tādi ceil un floor (griesti/grīda)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...