Signaler

Algorithme de calcul pour tournoi [Résolu]

Posez votre question jiantox 1053Messages postés mardi 30 septembre 2008Date d'inscription 13 janvier 2017 Dernière intervention - Dernière réponse le 13 janv. 2017 à 17:54 par jiantox
Bonjour,

je recherche un ou des algorithmes permettant de calculer le numéro du match suivant pour un tournoi.
Dans l'image ci-dessous (en 16 matchs) 1 et 2 donnent 17, 3 et 4 donnent 18 etc.


Je voudrais que l'algorithme puisse fonctionner pour 16 matchs (comme sur l'image) mais aussi pour 8, 4 et 2 (les tournois ne sont pas tous en 16 match dès le départ).

Merci à vous d'avance !
Afficher la suite 
Utile
+0
moins plus
bonjour, peux-tu décrire plus précisément les entrées et les sorties de ton algorithme?
jordane45 15696Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 13 janvier 2017 Dernière intervention - 13 janv. 2017 à 17:35
Bonjour
Un algo est independant du langage....
Trouve deja l'algo... avant d'essayer de le coder
Répondre
jiantox 1053Messages postés mardi 30 septembre 2008Date d'inscription 13 janvier 2017 Dernière intervention - 13 janv. 2017 à 17:02
Je viens d'essayer sans le TRUNC et non ça ne fonctionne pas

$futur = $nmatch+(1+$match)/2;
ou $nmatch = 16 et $match = 2

$futur est alors égal à 1.5 au lieu de 17 :/
Une autre solution ?
Répondre
yg_be 1422Messages postés lundi 9 juin 2008Date d'inscription 13 janvier 2017 Dernière intervention - 13 janv. 2017 à 17:18
$futur = $nmatch+floor((1+$match)/2);
Répondre
jiantox 1053Messages postés mardi 30 septembre 2008Date d'inscription 13 janvier 2017 Dernière intervention - 13 janv. 2017 à 17:24
idem :/

$nmatch = 16 et $match = 2
$futur est de 1 au lieu de 17 :/
Répondre
yg_be 1422Messages postés lundi 9 juin 2008Date d'inscription 13 janvier 2017 Dernière intervention - 13 janv. 2017 à 17:33
$futur = 16+floor((1+$match)/2);
Répondre
Donnez votre avis
Utile
+0
moins plus
La dernière solution à l'air bonne :

$futur = $nmatch+floor((1+$match)/2);
ou $nmatch est le nombre de match et $match est le match actuel.

Merci beaucoup yg_be !
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !