online faq recherche accueil
 

Il y a 195 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :  1  2  3  4  5  ..  23  24  25  26  27  28  29
Auteur
 Sujet :

[topic unique] Aide au développement informatique (C++, java, algo...)

 
n°5354536
guigolum
noone can stop us now
Posté le 16-04-2008 à 00:43:18  profilanswer
 

Reprise du message précédent :
en fait ce que tu vas faire depend surtout du cadre d'utilisation. si t'as juste quelques booleans à stocker de maniere temporaire, autant utiliser un tableau de char. si la gestion de la memoire devient importante(par exemple, memorisation des etats pour traitement ulterieur et analyse temporelle) là tu peux avoir interet à utiliser une structure plus finement declarée.
mais là, si tu utilises que 71*32 octets, ça devrait pas poser de probleme pour faire un tableau de char. surtout si tu te serts directement des valeurs

 

un truc du genre (en supposant que la taille reste fixe)

 

#define LARG_BOOL_TABLE 32
#define HAUT_BOOL_TABLE 71
char tableau_bool[LARG_BOOL_TABLE*HAUT_BOOL_TABLE];

 

static void set_bool( char* tableau, int hauteur, int largeur, int valeur){
  tableau[largeur+hauteur*LARG_BOOL_TABLE]=valeur;
}

 

tu peux faire un test de debordement, mais bon, tu peux aussi le mettre en precondition(declarer les bornes dans les conditions)

 

pour l'acces tu fais pareil dans l'autre sens(tu renvoies la valeur). si la taille n'est pas fixe, là il te faudra un malloc.
de toute façon, quelque soit la methode que tu utilisera au final, tu peux utiliser celle là pour commencer, apres tant que tu as tes interfaces decrites, changer l'implementation n'est pas un probleme, et ça te permet de tester le reste pendant que tu reflechis/te renseignes sur les problemes pointilleux.


Message édité par guigolum le 16-04-2008 à 00:44:48

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5354537
kypper_667
Im'avalounède, lol.
Posté le 16-04-2008 à 00:58:17  profilanswer
 

CdE a écrit :

pour une boucle for pourrie et un tableau d'int sans malloc, non, quand même pas :D

Ma boucle est pas pourrie et j'ai expliqué au-dessus comment se passer d'un malloc. Tu ne voudrais pas non plus que Naz sache ce qu'est un pointeur ? :o
Non mais.
 
 
:ack:


---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
n°5354579
DooMeeR
DooM shall never die.
Posté le 16-04-2008 à 10:28:03  profilanswer
 

guigolum a écrit :

soit tu te debrouilles autrement(multiplications, divisions par deux et restes sur des tableaux de char avec des fonctions de gestion)
cela dit, je me demande s'il est possible de decaler un pointeur d'un seul bit...


 
Plutôt que des shl et shr, utilise des masques (avec l'opération and bit-à-bits: & ).
 
On ne peut pas décaler un pointeur d'un seul bit, pour la simple raison qu'ajouter 1 à un pointeur, c'est rajouter un octet.
 
Sinon, si tu as vraiment besoin d'une structure où 1 octet = 8 bits, tu peux éventuellement être intéressé par les structures. En effet, on peut préciser de quel bit à quel bit vont chaque champ de la structure.
 


---------------
www.doomeer.com
n°5354581
guigolum
noone can stop us now
Posté le 16-04-2008 à 10:41:24  profilanswer
 

ha.. je croyais que ajouter 1 à un pointeur, c'etait le decaler de + la taille de la donnée pointée...(genre 8 pour un char/int, sizeof(bla) pour un bla* )
 
tu pourrais donner un lien pour les structures avec definition de taille des données?


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5354623
DooMeeR
DooM shall never die.
Posté le 16-04-2008 à 12:19:24  profilanswer
 

Pour le pointeur je parlais de sa représentation au niveau de l'assembleur :p Sinon oui t'as raison ^^
 
Pour le lien euh j'en n'ai pas :ack: Bon allez j'vais googliser ça pour toi...
 
Et pouf en 2s en cherchant "C struct bit" je tombe sur :
http://www.cs.cf.ac.uk/Dave/C/node13.html
Regarde la section "bit fields".
 
Sinon j'ai fais très peu de C hein, donc je suis pas très habitué honnêtement  :p


---------------
www.doomeer.com
n°5354633
guigolum
noone can stop us now
Posté le 16-04-2008 à 12:54:29  profilanswer
 

hum ok, donc autant faire une structure de stockage et utiliser les masques
genre
char masque[8]={1,10,100,1000,10000,100000,1000000,10000000};
et pour obtenir le bit i d'un char c faire un c&masque[i]??
(c'est bien ce que tu disais?)
apres, comment le stocker aussi?à moins de chopper sequentiellement les bits(avec des shl entre deux captures), ça risque d'etre tendu non?
 
et pour le C, idem, j'ai commencé cette année... sans cours :ack:  
(mais j'apprends vite..)


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5354707
DooMeeR
DooM shall never die.
Posté le 16-04-2008 à 16:44:41  profilanswer
 

Si tu veux utiliser des masques:

 

Pour tester le bit (i+1) de machin, en supposant que << soit bien le "shl" :

Code :
  1. machin & (1 << i)


(tu peux mettre les 1 << i dans une table si tu veux mais je doute que ça soit plus efficace, à mon avis ça l'est même moins)

 

Pour obtenir machin mais en ayant modifié le bit i en 1 :

Code :
  1. machin | (1 << i)


Et pour le modifier en 0 (je connais pas la syntaxe du xor) :

Code :
  1. machin xor (1 << i)
 

En gros (1 << i) te donne un entier qui, vu en binaire, a un unique bit à 1 : le (i-1)ème en partant du bit de poids faible. Donc après il suffit d'utiliser les opérateurs logiques bit-à-bits.


Message édité par DooMeeR le 16-04-2008 à 16:46:39

---------------
www.doomeer.com
n°5354763
Olive
Dans le noir
Posté le 16-04-2008 à 19:57:15  profilanswer
 

Je préfère ça pour remettre à 0 :

Code :
  1. machin &= ~(1 << i)


Au moins t'es sûr de remettre le bit à 0, contrairement au xor (syntaxe ^).

n°5354799
DooMeeR
DooM shall never die.
Posté le 16-04-2008 à 21:25:31  profilanswer
 

Oui effectivement j'ai fumé, le xor inverse le bit en fait :p


---------------
www.doomeer.com
n°5354800
Olive
Dans le noir
Posté le 16-04-2008 à 21:29:13  profilanswer
 

Même si en asm, c'est effectivement souvent ce qui est utilisé pour faire une remise à 0.

n°5354911
DooMeeR
DooM shall never die.
Posté le 17-04-2008 à 10:25:28  profilanswer
 

Oui mais c'est pas pareil, c'est utilisé en faisant un xor avec soi-même dans ce cas là :p


Message édité par DooMeeR le 17-04-2008 à 10:25:35

---------------
www.doomeer.com
n°5354919
Gaendal
Why so serious ?
Posté le 17-04-2008 à 11:03:42  profilanswer
 

http://www.albatoraxor.com/files/13/56_i_26_g.jpg
?
 
 
 
 
 
 
 
 
 
 
 
 
 
:dehors:


---------------
So, he comes at me with the knife,
"Why so SERIOUS?!"
He sticks the blade in my mouth,
"Let's put a smile on that face!
n°5354920
Lord Kellm​ar
Einheri
Posté le 17-04-2008 à 11:06:27  profilanswer
 

http://www.glastonbridge.co.uk/img/xcam.jpg ?

n°5354945
Naz
Censurez moi.
Posté le 17-04-2008 à 12:39:29  profilanswer
 
n°5356915
guigolum
noone can stop us now
Posté le 22-04-2008 à 23:07:26  profilanswer
 

salut, cette fois c'est moi qui ait un probleme, en C
 
on doit determiniser, completer, reduire, supprimer les etats inutiles d'une matrice de transition d'un automate non deterministe.
 
la structure (matrans) est définie comme suit: (c'est moi qui l'ai définie ainsi, c'etait la partie 1: définir une structure et un format de fichier pour la stocker, et faire un programme qui la charge et donne l'expression reguliere associée à cet automate)
trois listes chainées de string: une pour l'ensemble d'etats, une pour les etats initiaux, une pour les etats finaux. avec la fonction qui permet de recuperer le n ieme etat, et celle donnant la position de l'etat dont on passe le nom en parametre
le nombre d'etats au total est aussi stocké, et une matrice de char * (donc un char **) de taille nbetats*nbetats , dans lesquels on stocke les transition de chaque etat: matrans[i][j] donne la transition de l'etat i à l'etat j(0 si non existant, chaine vide si epsilon transition)
 
le probleme est pour la determinisation: on doit utiliser des macros etats, on n'en connait pas le nombre au depart, donc je dois utiliser des structures dynamiques.
 
je dois pouvoir les stocker et comparer l'egalité(si un macro etat A a une transition vers  un macro etat B , mais que B a déjà été traité/placé en attente, on ne va pas re traiter B):
vu que les macros etats sont fait de au maximum nbetats etats, on peut coder un id de macro etat  sur nbetats bits: par exemple, si on a le macro etat qui contient les etats 0 et 2, ça fait 101.
 
du coup se pose le probleme du stockage en binaire: je pense creer un macro etat en utilisant des char[nbetat/8 +1] alloués dynamiquement, et de fonctions de recuperation/setter de bit dessus:
en effet, au debut du prog, on va simplement chopper les etats de l'automate, calculer leur epsilon fermeture, et ajouter le macro etat correspondant à la file des macro etats à trier(eventuellement commencer par les etats initiaux pour virer plus facilement les etats non accessibles). donc, il faut pouvoir ajouter un etat à un macro etat...
 
 
la structure que je pense utiliser serait une file simple(avec un pointeur de debut pour l'ajout, et un pointeur pour le macro etat à traiter) de couple (id macro etat,liste des transitions).
 
donc:
vous auriez des conseils pour une meilleure structure/un moyen de faire ça plus vite? en théorie, ça va très bien. en pratique, c'est chiant et long...
ou des conseils/liens pour le stockage d'informations en binaire sur des elements de taille variable? plutot que faire un malloc(nbetats/8 +1) qui au final risque de me creer des bugs..??


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5356959
kypper_667
Im'avalounède, lol.
Posté le 23-04-2008 à 02:23:39  profilanswer
 

Aha le déterminisme des automates j'ai du le recoder 2 fois cette année. :>
 
Mais c'est pas à 2h du mat' pendant mes vacances que je vais aller me pencher là-dessus. :ack:
 
(Mon post est super utile, je sais)


---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
n°5356980
guigolum
noone can stop us now
Posté le 23-04-2008 à 08:34:45  profilanswer
 

bon ok. donc je vais commencer à le faire, et puis si on me donne des conseils, je le recoderai...
 
m'enfin, de toute façon c'est optionnel, mais ça m'a l'air la partie la plus interressante...
 
bon, go.
 
si vous avez des conseils, hesitez pas. parce que là je pars dans du triple liste chainée recursive, avec des recherches dans celles du dessus :/
et c'est crade, dans ma tete avant meme que je le code..


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5360231
Sbizz
J'ai vraiment une vie de merde
Posté le 30-04-2008 à 20:18:53  profilanswer
 

Plop ici.

 

Je post sur Judge Hype, car le Site du Zéro... comment dire... si un jour j'arrive à poster, ça sera un miracle (la page se charge, il se passe rien, et j'vais vite m'énerver si je continue à essayer...)...

 

Bref, voici le post que j'ai essayé de faire :

 
Citation :

B'jour !

 

Voila, je suis confronté à un "petit" problème. Je commence à créer des fonctions, pour mon jeu et je suis entrain d'effectuer l'experience qui est necessaire pour obtenir un niveau. Pour cela, j'utilise une fonction avec x (où X = niveau). Le problème, c'est que je dois ajouter la valeur que je vais trouver à.. comment dire... aux autres valeurs des niveaux inférieurs. Je sais pas si vous voyez, donc un exemple jusqu'au niveau 4 (c'est un exemple, pour comprendre facilement). La fonction est : (x-1)*5

 

Niveau 1 : 0 d'exp (logique)
Niveau 2 : 5 d'exp (0 (du niveau 1) + 5 (de la fonction(2-1*5 = 5))
Niveau 3 : 15 d'exp (5 (du niveau 1 + niveau 2) + 10 (de la fonction(3-1*5 = 10))
Niveau 4 : 30 d'exp (15 (du niveau 1 + niveau 2 + niveau 3) + 15 (de la fonction(4-1*5 = 15))

 

Bref, vous voyez le truc. Maintenant, j'ai deux solutions :
- Soit je passe par la base de donnée ; c'est à dire que je fais une colonne dans la table qui signifie "l'expérience que le joueur devait avoir pour passer le niveau auquel il est actuellement", je récupère cette valeur, et j'ajoute la fonction. C'est la méthode BDD

 

- Soit je passe par le PHP, et je fais une boucle for(i=1; i <= x; i++) (où x = niveau) et je mets la f(x) à l'intérieur, donc ça fait une série de calculs.

 

Alors qui serait le plus rapide, et le moins lourd ? Je pense que le PHP serait rapide, sachant que les niveaux ne s'atteignent pas comme ça, le temps qu'un joueur dépasse le niveau 40 déjà... 'fin bon.

 

J'essaie d'aller le moins possible dans ma BDD, pour éviter d'avoir trop de requête. À savoir que cette fonction est à faire à chaque actualisation de la page !!

 

Merci


Si vous pouviez répondre à la question, ça serait cool ! Merci !


Message édité par Sbizz le 30-04-2008 à 20:21:39
n°5360234
Sbizz
J'ai vraiment une vie de merde
Posté le 30-04-2008 à 20:23:16  profilanswer
 

Franchement Naz, arrête de faire des commentaires à la con à chaque fois que je post. Parce que ça aussi, ça va vite me gonfler, et je vais avoir la gachette facile -.- Si tu veux te rendre utile, répond à la question, ou passe ton chemin, y'a rien de compliqué.

n°5360259
guigolum
noone can stop us now
Posté le 30-04-2008 à 21:55:40  profilanswer
 

en fait tu veux le resultat de la série non?
autrement dit, on va noter Un le nombre d'xp à gagner pour passe de debut de niveau n à niveau n+1. dans ton cas, (x-1)*5
donc, tu veux la série Sn, ou Sn+1=Sn+Un ?
dans ton cas, ça doit etre un truc du genre 5*n*(n-1)/2 -5n

 

je fais les calculs, et je te dis ça

 

et je plussoie fortement pour naz. il pourrit le forum.

 

edit:
en fait c'est 5/2 * n² -5n/2


Message édité par guigolum le 30-04-2008 à 22:03:04

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5360263
DooMeeR
DooM shall never die.
Posté le 30-04-2008 à 22:02:19  profilanswer
 

Alors Sbizz, parmis les deux solutions que tu as proposées, le moins lourd c'est clairement le PHP.

 

Cependant, je tiens à faire quelques remarques.

 

A) Où stocker la table "xp"

 

Au lieu d'utiliser une BDD, ce qui est débile, utilise un tableau que tu déclares dans ton programme et initialise-le au début du programme, soit à la main (ce qui est débile), soit à l'aide de ta boucle for, soit en utilisant l'une des deux méthodes ci-dessous.

 

Tu peux aussi ne pas mettre l'xp dans une table et appeler la fonction à chaque fois. C'est un peu moins efficace.

 

B) Comment calculer la table "'xp"

 

Au lieu d'utiliser une boucle for, je te propose...

 

1) La définition que tu donnes de ta fonction "xp" est une définition récursive : l'xp du niveau n est définie en fonction de l'xp du niveau n-1. Donc tu peux utiliser une fonction récursive. Je sais pas si ça existe en PHP mais j'vois pas pourquoi ça existerait pas.

 

Note technique : ta fonction récursive sera peut-être moins efficace qu'une boucle si le langage n'optimise pas les fonctions récursives terminales, ce qui est probablement le cas du PHP vu que c'est un langage de merde. Oups, non, j'ai rien dit, c'était un troll :D

 

2) Il est quasiment certain que ta fonction XP soit en fait un polynôme d'ordre 2, vu que c'est une somme de polynômes d'ordre 1. Mais là, je crois que je me suis fait grillé par guigolum.


Message édité par DooMeeR le 30-04-2008 à 22:02:59

---------------
www.doomeer.com
n°5360267
guigolum
noone can stop us now
Posté le 30-04-2008 à 22:07:32  profilanswer
 

exactement, c'est une fonction carré, donc c'est hyper rapide

 

et je plussoie pour la table. en fait, une bdd ne sert que lorsque tu as des données DYNAMIQUES, c'est une perte de temps de mettre des données statiques dedans(hormis dans le cas où elles doivent interagir avec des données dynamiques, car dans ce cas il est plus interressant de faire les calculs en sql plutot que de faire moitié sql/moitié php. d'autant plus que ainsi, le resultat est directement sotcké dans la bdd, sans devoir faire plein de parsing)

 

bref, là, ou tu te serts de la fonction en polynomiale, ou tu utilises un tableau(array) simple, statique. sachant que la premiere est aussi rapide que la deuxieme, et que de toute façon pour permettre de modifier facilement ton code par la suite, tu ferais mieux de faire appel à une fonction, je ne peux que te conseiller d'utiliser la premiere. quitte à changer son corps par la suite

 


@doomer: tous les langages recents optimisent le code, et de toute façon, tant qu'il rend sa fonction recursive finale, ce sera aussi rapide que la fonction iterative. si.


Message édité par guigolum le 30-04-2008 à 22:09:09

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5360270
CdE
๏̯͡๏) ๏̯͡๏) ๏̯͡๏) ๏̯͡๏)
Posté le 30-04-2008 à 22:10:26  profilanswer
 

Fais ton jeu en web 2.0 sur une servlet et injecte tes valeurs avec un fichier de conf spring à l'initialisation.

n°5360271
Sbizz
J'ai vraiment une vie de merde
Posté le 30-04-2008 à 22:21:28  profilanswer
 

Bah euh non, ça marche pas votre fonction. Bon, j'évite l'exemple, je vais donner ce que je fais (car j'ai remarqué y'a 5 minutes que j'me suis gourré, c'pas x-1 ! mais x tout court, j'explique)

 
Citation :

function HW_ExpForNextLevel()
{
$niveau = HW_Niveau();
 for($i=1;$i <= $niveau; $i++)
 {
 $experience += $niveau * 1000;
 }
$base_exp = HW_RateExpForPersonnage();
$experience = $base_exp/100 * $experience;
return $experience;
}

 

Vous occupez pas de ce qui se passe après la boucle for, c'est des détails apportés.

 

Enfaite, le principe de cette fonction, c'est de déterminer l'experience necessaire pour le PROCHAIN niveau. Comme un con, ma fonction (x-1)*1000 donnait l'experience necessaire pour le niveau ACTUEL !

 

Mais je pense pas qu'on puisse faire ça avec un calcul comme tu as fait guigo, vu que pour chaque niveau, la valeur n'est pas la même. Jusqu'au niveau 5 :

 

Niveau 1 : 0 xp
Niveau 2 : 1000 xp (+1000)
Niveau 3 : 3000 xp (+2000)
Niveau 4 : 6000 xp (+3000)
Niveau 5 : 10,000 xp (+4000)

 

Et merci pour la réponse du plus rapide. Et j'm'étais fait avoir au par avant pour la BDD, j'l'utilisais pour des valeurs statistiques, alors que le PHP est beaucoup plus adapté ! Et le problème, c'est qu'en fesant ça, bein à chaque je devais me connecter sur la BDD, sur les bonnes tables, faire les calculs, etc...

 

Edit: aufaite, les mots complexes... j'suis pas encore de votre niveau :s


Message édité par Sbizz le 30-04-2008 à 22:27:28
n°5360277
cali
Posté le 30-04-2008 à 22:47:29  profilanswer
 

Sauf qu'il a un peu raison guigolum et que ca s'appelle même la récurrence. Un truc de dingue parfois.
 
PS : 500*n*(n-1) devrait t'aller parfaitement.


---------------

n°5360279
Sbizz
J'ai vraiment une vie de merde
Posté le 30-04-2008 à 23:07:22  profilanswer
 

Han merci :love:

 

Edit: comment tu trouves le "500" ? Car j'aimerais changer la valeur par défaut (1000) et la passer à 250. C'est la moitié ?


Message édité par Sbizz le 30-04-2008 à 23:13:18
n°5360281
CdE
๏̯͡๏) ๏̯͡๏) ๏̯͡๏) ๏̯͡๏)
Posté le 30-04-2008 à 23:22:27  profilanswer
 

réfléchis un peu quand tu remplaces n par 2 et 3.
 
niveau 2 = x*2*1 = x*2
niveau 3 = x*3*2 = x*6

n°5360284
guigolum
noone can stop us now
Posté le 30-04-2008 à 23:36:37  profilanswer
 

et ecoutes surtout pas cde, car faut jamais te fier aux premieres valeurs. sauf si tu sais que c'est un polynome de degré n, auquel cas, il te suffit d'interpoler avec les n+1 premiers resultats.

 

(autremenent dit, tu resouds un systeme à n+1 equation, qui correspond aux valeurs de ton polynome aux points deja connus)

 

bref, là t'as un polynome de degré 2 (car ça integre un poly de degré 1), donc suffit de trouver pour tois valeurs d'entrée la valeur de sortie, et tu as ton polynome.(de degré 2 donc de la forme Sn=a*n²+b*n+c : tu as trois inconnues a, b, c que tu peux donc resoudre avec un systeme de ... trois equations differentes)

 


pour trouver la valeur sans à priori, il faut faire un peu de calcul formel(autrement dit, ecrire ton equation sous la forme de suites et de séries), et resoudre tout ça. ça se fait assez bien quand on a les elements de base. mais c'est plus des maths que de l'info.


Message édité par guigolum le 30-04-2008 à 23:37:51

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5360285
Sbizz
J'ai vraiment une vie de merde
Posté le 30-04-2008 à 23:40:41  profilanswer
 

Ouai, parce que je comprends pas trop ton charabia :ack:
 
Bah l'équation, ça serait quoi surtout ? Parce que bon, j'vois pas ce que j'peux mettre d'un côté et de l'autre. Ca serait n+1 = x ? où n = niveau et x = experience necessaire pour le prochain niveau ?

n°5360287
guigolum
noone can stop us now
Posté le 30-04-2008 à 23:52:56  profilanswer
 

bah, de maniere simple, si pour passer d'un niveau n au suivant, il faut a*n (a constante, c'est toi qui la determe), alors en tout, pour arriver au niveau n+1 il faut avoir cumulé a*n*(n-1)/2
 
donc oui, le 500, c'est 1000/2. donc pour 250, ça sera 125.
 
serieux, tu sais ce qu'est un polynome j'espere?


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5360296
Sbizz
J'ai vraiment une vie de merde
Posté le 01-05-2008 à 00:18:55  profilanswer
 

@CdE : Taggle un peu ? Merci.
 
@gui: Non je ne sais pas c'quoi un polynome. Jamais entendu parlé. On apprend surement ça après la 2nd ? lol C'est pour ça que je suis pas ton truc là enfaite ^.^

n°5360307
guigolum
noone can stop us now
Posté le 01-05-2008 à 01:15:51  profilanswer
 

ha ok. donc integration, polynome, suite et série ça te parle pas trop? parce qu'effectivement, on voit ça en terminale.
bon, dans ce cas, quand t'as des fonctions qui sont recursives(la valeur en n depend de la valeur en n-1), passe sur le topic des matheux, on poeut te filer des manieres de les resoudre.

 

en touta cas, un resultat à savoir: la somme des entiers de 1 à n c'est n*(n+1)/2 (si tu veux une preuve facile, demande par mp- ça tient sur 3 lignes)
donc si tu multiplies les entiers par A, ça fait du A*n*(n+1)/2.
voila voila.

 

en tout cas, persevere, plus tu commences tot et plus tu aura de chances de comprendre plus tard.


Message édité par guigolum le 01-05-2008 à 01:16:22

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5360311
kypper_667
Im'avalounède, lol.
Posté le 01-05-2008 à 01:44:32  profilanswer
 

'Drapeau !
 
 
:ack:
 
Non j'déconne. -_-


---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
n°5360323
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 01-05-2008 à 03:34:08  profilanswer
 

Les commentaires useless ne sont pas bienvenus, merki.

Message cité 1 fois
Message édité par KuBi4K le 01-05-2008 à 03:34:36

---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5360345
Sbizz
J'ai vraiment une vie de merde
Posté le 01-05-2008 à 10:52:04  profilanswer
 

Ok, merci gui de ton aide ! Je vais essayer de retenir la formule. J'pense avoir un peu compris le principe, mais c'est encore une peu flou :)

n°5360466
kypper_667
Im'avalounède, lol.
Posté le 01-05-2008 à 14:09:28  profilanswer
 

KuBi4K a écrit :

Les commentaires useless ne sont pas bienvenus, merki.

Autant que les commentaires de remerciement quand on demande de l'aide et qu'on gueule en retour ?
 

Sbizz a écrit :

@CdE : Taggle un peu ? Merci.



---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
n°5360819
KuBi4K
Cleanse, Purge, KILL !
Profil : Modérateur
Posté le 02-05-2008 à 01:59:40  profilanswer
 

/pan.


---------------
Hope is the first step on the road to disappointment.
 
May the Emperor forgive you, for we will not.
 
n°5362454
guigolum
noone can stop us now
Posté le 07-05-2008 à 10:36:06  profilanswer
 

bon, une question en C: je dois definir un const char[]="";
j'ai fait un #define MIN_X, MAX_X, PAS et j'aimerais les affichier dans le char[]. je fais comment? il me faut une macro pour ça non?

 

bon en fait j'ai trouve:
http://www.delorie.com/gnu/docs/gcc/cpp_17.html

 

je pensais que ce serait plus complique que ça.


Message édité par guigolum le 07-05-2008 à 10:42:19

---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5362533
Olive
Dans le noir
Posté le 07-05-2008 à 16:06:49  profilanswer
 

C'est heureux que tu aies trouvé, parce que je comprends rien à ta question.
 
ps : et outre # qui transforme le paramètre de la macro en chaîne de caractère, tu peux aussi utiliser ## avec le preprocesseur. Ex:

Code :
  1. #define declare_var(a)   int ##a
  2. declare_var(nom_de_variable);
  3. va être substitué par :
  4. int nom_de_variable;


Cela peut servir à générer du code générique par ex, en évitant de dupliquer le code à tour de bras.


Message édité par Olive le 07-05-2008 à 16:08:15
n°5362543
guigolum
noone can stop us now
Posté le 07-05-2008 à 16:35:46  profilanswer
 

bah en fait dans mon code j'ai:
 

Code :
  1. #define xstr(s) str(s)
  2. #define str(s) #s
  3. #define PAS 0.001
  4. #define MIN_X 0.0
  5. #define MAX_X 1.0
  6. const char nom_traitement[]="integrale de f de "xstr(MIN_X)" a "xstr(MAX_X)" par pas de "xstr(PAS);


 
le but c'est d'avoir une chaine constante dans le code(sans appel de fonction), qui puisse etre récupérée ailleurs, et qui contienne une description du plug in
 
comme ça je peux facilement changer mon plugin en modifiant les define.
 
c'est mieux expliqué?


---------------
il y a ceux qui s'etonnent, qui s'affolent et questionnent; les autres s'en tamponnent tellement la beuh est bonne;
laissez bruler la weed, et n'oubliez personne; dans la fumée des dieux s'effondre babylone..
le libéralisme, c'est la course à l'ovule : pour qu'une personne reussise, un millier doivent crever.
n°5362545
kypper_667
Im'avalounède, lol.
Posté le 07-05-2008 à 16:38:32  profilanswer
 

Fais un fichier de conf' ou des arguments...


---------------
Posté le o3|11|2oo7 à 12|2o|46 par Shoggynou : Non mais Kypper depuis genre 6 mois il est passé d'un gars à très cool à Grubnatz :hmm: - Posté le 29-o8-2oo7 à 14|26|05 par Incubeee_ : Oui, mais pour moi tu seras toujours Arcueid :o - Posté le o4-12-2oo6 à 21|55|41 par Simulacre : Ne t'inquiète pas, je te défoncerai tôt ou tard. : ) - Posté le 13-o4-2oo6 à o1|o8|37 par Bellandy : Sinon tu habites chez tes parents ? - Posté le 31-12-2oo5 à 21|3o|37 par Loline : mais mais Kyppy, tu n'as pas une grande vie sexuelle :heink: - Posté le o5-o8-2oo4 à 17|47|18 par Zack : J'ai l'impression d'être le seul à pas vraiment connaître Kypper... o_O
 Page :  1  2  3  4  5  ..  23  24  25  26  27  28  29

Aller à :
Ajouter une réponse