JeuxOnLineForumsPlusCréer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > switch, int et constantes RSS
   
Répondre
Partager Outils Rechercher
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
bon, ba merci, je vais tt me relire, si g pas émergé dans deux jours, c que je suis mort, ou que je me suis enfin endormi :lol:
(galère ca ... fin bon, c le métiers qui entre )
Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
plouploum
bon, ba pour me simplifier la vie, g vaguement essayé un truc
je vaisle teste dans un instant mais si vous pouviez me confirmer que ca va pas marcher (en fait, je fais mumuse je m'entraine quoi

Code PHP:
//a appliquer a sNbToNormalize (une string de chiffres), si plus de chiffres que nNorme, alors on enleve les plus à gauche
//si plus cours, on rajoute des 0 devant
string NormalizeNbStrstring sNbToNormalizeint nNorme);

string NormalizeNbStrstring sNbToNormalizeint nNorme)
{
   
string sF;
   
int nTaille=GetStringLength(sNbToNormalize);
   if(
nTaille nNorme)
       {
      
sF GetStringRight(sNbToNormalizenNorme);
      
SendMessageToAllDMs("pb pdt normalization de "+sNbToNormalize+" de "+IntToString(nNorme)+"plus de caracteres que la norme");
       }
   else
      {
      
int nDif nNorme;
      
nDif =- nTaille;
      
sF sNbToNormalize;
      while(
nDif 0)
         {
         
sF "0"+sF;
         
nDif--;
         }
      }

return 
sF;



Lien direct vers le message - Vieux
Avatar de 'Az
'Az [P.H.]
Alpha & Oméga
 
Avatar de 'Az
 
Citation:
@ Azraël > Même en C, on n'as droit qu'aux char en plus et comme ce sont des entiers déguisés...
Vi, et tu veux y mettre quoi d'autre ?

des string ? ca existe pas en C (sauf par les bibliotèques bien sur)
les float ? oui ca aurais pu, mais c'est telement grotesque que je l'ai pas pris en compte.

Quoi !! de la mauvaise fois ? Meuh non..... ^_^
Lien direct vers le message - Vieux
Avatar de Jedaï
Jedaï
Alpha & Oméga
 
Avatar de Jedaï
 
Les char sont des int, c'est tout ce que je voulais souligner. De plus même si les string n'existent pas, les tableaux si, et les chaînes dans les tableaux aussi donc...

Enfin tu semblais dire que le C acceptait d'autre type que int alors qu'il n'accepte que ça ! (char == unsigned short int)

Par contre ce qui est chiant, c'est qu'on ait pas des fonctions ASCII<---->int, ça permettrait de passer au-dessus de cette limitation !
Lien direct vers le message - Vieux
Avatar de 'Az
'Az [P.H.]
Alpha & Oméga
 
Avatar de 'Az
 
Citation:
Enfin tu semblais dire que le C acceptait d'autre type que int alors qu'il n'accepte que ça !
disons plutot que je l'ignorais

Pour ce qui est des fonctions de passage int<--->ascii, ben que dire... il est vrai qu'a première vue ce n'est pas fondamental, il n'y a que si on se plonge profondément dans le scripting que ca devient interessant.

Moi de toutes facon je m'en fous du passage décimal <> ascii, il m'ont mis mes opérateurs binaires, je ne peux que ronronner
Lien direct vers le message - Vieux
Yizashi
Alpha & Oméga
 
Question
Je profite de ce post pour poser deux petites questions :

1)
Code PHP:
int i XXXX//ton nombre
IntToString (i);
if (
i<10)
"000" ;
else if ( 
i<100)
"00" ;
else if ( 
i<1000)
"0" 
A quoi servent les else, on peut pas écrire :
Code PHP:
int i XXXX//ton nombre
IntToString (i);
if (
i<10)
"000" ;
if ( 
i<100)
"00" ;
if ( 
i<1000)
"0" 
Sinon pour les if : quelle différence entre ?
if (condition && condition)
et
if (condition & condition)

Voilà c'est tout, bonne journée et merci d'avance !
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
sans le else, les condition vont etre regardéees une a une, donc

- 9 est inferieur a 10, s = ("000" + i)
puis
- 9 est inferieur a 100, s= "00"+("000" + i)
puis
- 9 est inferieur a 1000, s= "0" + ("00"+("000" + i))


donc, a la fin, tu obtiens pas 000i, mais 000000i
^^
Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
huhuhu, j'avais failli poser la même question
d'ailleur, tu peu aussi mettre la fonction que g donné dans une bibliothèque elle marche bien, perso je m'en sers pas mal passke c bien sciant qd même cette histoire de 0 qui passe a la trappe :O

(non non c pas de la pub, c de l'entraide , ma première fonction )

et pour la deuxieme question .. euh .. g jamais vu avec un seul &, ca fait qq chose
Lien direct vers le message - Vieux
Avatar de 'Az
'Az [P.H.]
Alpha & Oméga
 
Avatar de 'Az
 
l'explication de eM donne deja un argument, j'en ai un autre :

Code PHP:
int i XXXX//ton nombre
IntToString (i);
if (
i<10)
"000" ;
else if ( 
i<100)
"00" ;
else if ( 
i<1000)
"0" 
la, l'instruction if (i<10) est lancée, puis l'instruction else if ( i<100) n'est testée QUE SI le dernier test est faut.

par contre, la

Code PHP:
int i XXXX//ton nombre
IntToString (i);
if (
i<10)
"000" ;
if ( 
i<100)
"00" ;
if ( 
i<1000)
"0" 
les tests sont tous effectué dans tout les cas.
A ton avis lequel des cas est le plus léget pour les ressources ?


pour la seconde question :

if (condition1 && condition2)
la il faut que les deux conditions soient juste pour être executée

if (condition1 & condition2)
La c'est faut, les info a mettre ne sont pas des conditions, mais des valeurs, puisque le & unique est le & binaire, utilisé pour les opérations binaires (POWAAAAA)

si ca interesse quelqu'un je pourrais faire un tut la dessus a l'occasion, ca peut servir a plein de choses, comme par exemple compresser les donnés qui ne prennent que deux valeurs (TRUE et FALSE)
Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
*intrigué*
*donc intéressé*
Lien direct vers le message - Vieux
Yizashi
Alpha & Oméga
 
C'est étrange ce que tu dis à propos du & car dans mes scripts il fonctionnait pour les conditions comme le fait && dans ton explication.
Lien direct vers le message - Vieux
Avatar de 'Az
'Az [P.H.]
Alpha & Oméga
 
Avatar de 'Az
 
ce que tu me dis la est étrange. Je n'ai jamais testé les opérations binaires dans le cadre de neverwinter, mais en C je les utilise très souvent.

en général l'opération if( n1 & n2) renvoye une valeur, donc laisse passer la boucle, si on prend n1 = 4, n1 & n2 ne revera 0 que si n2 = 3, car
4 = 100b
3 = 011b
or 100b & 011b = 0b = 0

....
Bon j'écrirais mon tut se sera mieux ^_^ (pi je testerais tout ca sur neverwinter pour voir si ca marche bien O_o

EDIT : oui je viens d'essayer c'est bien ca. Je pense que tu as été victime d'une malheureuse coincidence en trouvant un
if( n1 && n2) avec le meme effet qu'un if( n1 & n2)
Lien direct vers le message - Vieux
Avatar de Jedaï
Jedaï
Alpha & Oméga
 
Avatar de Jedaï
 
Evidemment s'il a utilisé uniquement des tests du genre GetIs0bjectValid() ou "==" ou ">" Ca a marché pour lui vu que tous ces tests renvoient uniquement 0 ou 1 (FALSE et TRUE) donc on a bien :
(FALSE & TRUE) == 0 == FALSE == (FALSE && TRUE)
et (TRUE & TRUE & TRUE) == 1 == TRUE == (TRUE && TRUE && TRUE)

Mais ce n'est pas du tout une bonne habitude de programmation, surtout lorsqu'on commence à utiliser directement des valeurs pour vérifier si elles sont différentes de 0...
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
Par définition en programmation en c, il faut bien faire une distinction entre :

| et ||
& et &&
= et == (et ===)
etc...

Enfin bon, tu en as pleins, je pourrai si vous voulez tous les mettre mais je ne pense pas que cela vous serve à quelque chose
Lien direct vers le message - Vieux
Avatar de 'Az
'Az [P.H.]
Alpha & Oméga
 
Avatar de 'Az
 
euh... ===
ca sert a quoi ca ?
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > switch, int et constantes
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 19h30.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite