Crunchez vos adresses URL
|
Rejoignez notre discord
|
Hébergez vos photos
Page 1 sur 4 1234 DernièreDernière
Affichage des résultats 1 à 30 sur 96
  1. #1
    Le principe est simple, soit on poste un code et on doit trouver à quoi il sert (en lisant le code, pas en le compilant sinon c trop facile),
    soit on demande l'écriture d'un code le plus optimisé possible en précisant ce qu'il est censé faire.
    soit on poste un code avec des fautes à trouver, en précisant le nombre.

    A quoi sert cette fonction? La comprenez vous?

    Code:
    float CoinCoin(float number) {
        long i;
        float x, y;
        const float f = 1.5F;
        
        x = number * 0.5F;
        y  = number;
        i  = * ( long * ) &y;
        i  = 0x5f3759df - ( i >> 1 );
        y  = * ( float * ) &i;
        y  = y * ( f - ( x * y * y ) );
        y  = y * ( f - ( x * y * y ) );
        return number * y;
    }

  2. #2
    Moins drôle que Monsieur Cacao Avatar de Phatcobra
    Ville
    là bas, pas ici
    précise post réservé aux developpeurs / programmeurs.............. trop dur pour moi ce jeu

    .... et c'était bon !!

  3. #3
    Oh putain, un jeu pour les geeks.

    Kaï ! Kaï ! Kaï !

  4. #4
    Citation Envoyé par Phatcobra
    précise post réservé aux developpeurs / programmeurs.............. trop dur pour moi ce jeu
    Bon là j'avoue je commence un peu fort, mais c'est un code très célèbre

  5. #5
    Citation Envoyé par Phatcobra
    précise post réservé aux developpeurs / programmeurs.............. trop dur pour moi ce jeu
    précise post réservé aux developpeurs / programmeurs qui ont envie de se prendre la tête.............. trop chiant pour moi ce jeu

    (en plus ça me rapelle énormément un prof sadique qui nous posait ce genre de question dans certains exams pour nous faire comprendre à quel point un code lisible est un cadeau... par exemple on avait eu ça, indentation et mise en forme comprise :

    [codebox]#include <stdio.h>
    #include <math.h>
    double l;main(_,o,O){return putchar((_--+22&&_+44&&main(_,-43,_),_&&o)?(main(-43,++o,O),((l=(o+21)/sqrt(3-O*22-O*O),l*l<4&&(fabs(((time(0)-607728)%2551443)/405859.-4.7+acos(l/2))<1.57))[" #"])):10);}[/codebox])

  6. #6
    Citation Envoyé par Pen²
    Bon là j&#39;avoue je commence un peu fort, mais c&#39;est un code très célèbre
    Ca me rappelle à quel point ma licence d&#39;informatique est loin ... et ne me manque pas du tout :P

  7. #7
    Je suis sûr que le code dont il faut trouver l&#39;utilité ne sert à rien
    Athmos : Ça confirme ce que je suspectais depuis toujours, Ash_Crow est un vicieux. Son âme retorse ne vit que pour semer d'embûches le chemin des honnêtes canards, et sa fourberie n'a d'égale que sa profonde méchanceté. :fear:

  8. #8
    Citation Envoyé par Ash_Crow
    Je suis sûr que le code dont il faut trouver l&#39;utilité ne sert à rien
    Oh que si il sert, énormément même !

    Il a même été écrit par quelqu&#39;un que nous respectons tous

  9. #9
    La dernière fois que j&#39;ai programmé un truc, c&#39;était sous Locomotive Basic sur Amstrad CPC

    Aucune idée, ça fait faire le tour de l&#39;écran aux mots "coin coin" ??
    Greyjoy ! Pour noyer la subtilité et la bonne mesure.

  10. #10
    ca sert à multiplier à mettre le paramètre au carré ?

    enfin bon c&#39;est surement pas ça......

  11. #11
    Moi je dis approximation de Newton-Raphson de la racine carrée (ou rsqrt?) avec petite ruse sur la représentation IEEE du flottant, que tout le monde attribue à Carmack, alors que bon...
    D&#39;ailleurs ça sert plus à grand chose avec les plateformes x86 modernes, je pense!

    A moi de poser une question!

    Sleeping all day, sitting up all night
    Poncing fags that's all right
    We're on the dole and we're proud of it
    We're ready for 5 More Years

  12. #12
    Comment tester rapidement si un entier non signé est une puissance de 2?
    (Langage au choix)
    Sleeping all day, sitting up all night
    Poncing fags that's all right
    We're on the dole and we're proud of it
    We're ready for 5 More Years

  13. #13
    Citation Envoyé par Tramb
    Moi je dis approximation de Newton-Raphson de la racine carrée (ou rsqrt?) avec petite ruse sur la représentation IEEE du flottant, que tout le monde attribue à Carmack, alors que bon...
    D&#39;ailleurs ça sert plus à grand chose avec les plateformes x86 modernes, je pense!

    A moi de poser une question!
    Félicitations !
    je suis bluffé de la réponse

  14. #14
    Citation Envoyé par Tramb
    Moi je dis approximation de Newton-Raphson de la racine carrée (ou rsqrt?) avec petite ruse sur la représentation IEEE du flottant, que tout le monde attribue à Carmack, alors que bon...
    D&#39;ailleurs ça sert plus à grand chose avec les plateformes x86 modernes, je pense!
    A moi de poser une question!

    Mon gars, il va t&#39;arriver des bricoles à parler comme ça j&#39;ai compris, je vais ouvrir le topic de la psychopathologie clinique ou on ne sera que quatre à comprendre

    Sinon pour les noob dans mon genre ya moyen (Pen² ou Tramb) d&#39;avoir une petite expliquation propédeutique ???
    Greyjoy ! Pour noyer la subtilité et la bonne mesure.

  15. #15
    Citation Envoyé par Hochmeister

    Mon gars, il va t&#39;arriver des bricoles à parler comme ça j&#39;ai compris, je vais ouvrir le topic de la psychopathologie clinique ou on ne sera que quatre à comprendre

    Sinon pour les noob dans mon genre ya moyen (Pen² ou Tramb) d&#39;avoir une petite expliquation propédeutique ???
    Toutes les expliquations ici

  16. #16
    Citation Envoyé par Hochmeister
    Sinon pour les noob dans mon genre ya moyen (Pen² ou Tramb) d&#39;avoir une petite expliquation propédeutique ???
    En fait c&#39;est l&#39;application d&#39;une méthode itérative (mathématique) pour approximer uen fonction (ici la fonction racine carrée) appellée méthode de Newton-Raphson.
    http://fr.wikipedia.org/wiki/Méthode_de_Newton

    La seule finesse est qu&#39;il fait apparaître un nombre magique (le 0xbidule) qui a l&#39;air de venir de nulle part pour faire dans le domaine des entiers un calcul plutôt que dans le domaine de la virgule flottante en se basant sur la représentation des flottants( http://en.wikipedia.org/wiki/IEEE_754 ), c&#39;est là que ça rend le code beaucoup plus imbitable et un peu plus rapide, et c&#39;est plutôt malin!
    Sleeping all day, sitting up all night
    Poncing fags that's all right
    We're on the dole and we're proud of it
    We're ready for 5 More Years

  17. #17
    Citation Envoyé par Tramb
    Comment tester rapidement si un entier non signé est une puissance de 2?
    (Langage au choix)
    Rapidement je sais pas mais je pense qu&#39;on peut jouer avec les décalages :
    Code:
    int verif(uint num) {
      while(num && !(num&1))
        num = num >> 1;
      return !num;
    }

  18. #18
    Citation Envoyé par Pen²
    Il a même été écrit par quelqu&#39;un que nous respectons tous
    Ah parce que tu respectes carmack toi ?

  19. #19
    Citation Envoyé par Bouyi
    Ah parce que tu respectes carmack toi ?
    à fond, c&#39;est mon idole!
    j&#39;ai même des posters de lui dans ma chambre

  20. #20
    Citation Envoyé par Pen²
    à fond, c&#39;est mon idole!
    j&#39;ai même des posters de lui dans ma chambre
    Oh la mega lose.

  21. #21
    et tu manges des céréales "crousti-carmack" au ptit dej&#39; ?

  22. #22
    et je suis allé spécialement en Allemagne pour trouver un coiffeur capable de me faire sa coifure.

  23. #23
    Citation Envoyé par Daeke
    Rapidement je sais pas mais je pense qu&#39;on peut jouer avec les décalages :
    Code:
    int verif(uint num) {
      while(num && !(num&1))
        num = num >> 1;
      return !num;
    }
    Y&#39;a une solution sans boucle! Sauras-tu la trouver?
    Je précise qu&#39;on ne gère pas le cas avec la valeur d&#39;entrée 0.
    Sleeping all day, sitting up all night
    Poncing fags that's all right
    We're on the dole and we're proud of it
    We're ready for 5 More Years

  24. #24
    Citation Envoyé par Tramb
    Comment tester rapidement si un entier non signé est une puissance de 2?
    (Langage au choix)
    En gérant le cas zéro :
    Code:
    typedef int bool;
    
    int main (void)
    {
       unsigned int nb;
       bool resultat;
       
       resultat = !(nb & (nb-1)) && nb;
    
       return 0;
    }
    Mais je l&#39;ai pas trouvé moi-même, je le connaissais avant.
    Pour ceux qui ne comprennent pas, nb & (nb-1) est une technique pour calculer un modulo par une puissance de 2.


    Comment trouver le maximum de deux nombres sans faire de test ?

    Edit : quand je dis "sans test", c&#39;est sans que le processeur fasse de branchement. En C ça doit revenir à se débrouiller avec la valeur de retour d&#39;une comparaison...
    Citation Envoyé par Wanou Voir le message
    Je t'aime...
    :wq

  25. #25

  26. #26
    [codebox]HAI
    CAN HAS STDIO?
    VISIBLE "HAI WORLD!"
    KTHXBYE[/codebox]

  27. #27
    Citation Envoyé par Daeke
    Rapidement je sais pas mais je pense qu&#39;on peut jouer avec les décalages :
    Code:
    int verif(uint num) {
      while(num && !(num&1))
        num = num >> 1;
      return !num;
    }
    Je ne comprends pas ton code, il marche ? D&#39;après ce que je comprends, si num est nul, on ne passe pas dans la boucle et verif() retourne 1, sinon on décale jusqu&#39;à ce que le lsb soit égal à 1, et verif() retourne 0.
    Citation Envoyé par Wanou Voir le message
    Je t'aime...
    :wq

  28. #28
    Citation Envoyé par DaP
    Comment trouver le maximum de deux nombres sans faire de test ?
    Avec une valeur absolue.
    max(a,b⁠)=(a+b+|a−b|)/2.
    min(a,b⁠)=(a+b−|a−b|)/2.
    Pour comprendre, faites un dessin et placer le milieu (a+b⁠)/2, auquel vous ajoutez ou vous soustrayez la moitié de la distance entre a et b, à savoir |a−b|/2. Ensuite, on factorise.
    Cela dit, je doute que le calcul de la valeur absolue ne fasse pas intervenir de test.
    une balle, un imp (Newstuff #491, Edge, Duke it out in Doom, John Romero, DoomeD again)
    Canard zizique : q 4, c, d, c, g, n , t-s, l, d, s, r, t, d, s, c, jv, c, g, b, p, b, m, c, 8 b, a, a-g, b, BOF, BOJV, c, c, c, c, e, e 80, e b, é, e, f, f, f, h r, i, J, j, m-u, m, m s, n, o, p, p-r, p, r, r r, r, r p, s, s d, t, t
    Canard lecture

  29. #29
    Je ne fais pas de programmation, mais à tout hasard je propose Martian Gothic.
    Va te faire enculer.

  30. #30
    Citation Envoyé par ducon
    Avec une valeur absolue.
    max(a,b⁠)=(a+b+|a−b|)/2.
    min(a,b⁠)=(a+b−|a−b|)/2.
    Pour comprendre, faites un dessin et placer le milieu (a+b⁠)/2, auquel vous ajoutez ou vous soustrayez la moitié de la distance entre a et b, à savoir |a−b|/2. Ensuite, on factorise.
    Alors il faut trouver la valeur absolue sans faire de test. (je viens de regarder le code de abs() dans la DLL de Windows, elle utilise un branchement)
    En fait si on sait que l&#39;ordinateur a au moins un Pentium 2 on peut utiliser le jeu d&#39;instructions prévu pour ça, ça donne un truc du genre :

    Code:
    ; On stocke dans ECX le nombre le plus grand entre EAX et EBX
    mov ecx, eax
    cmp eax, ebx
    cmovb ecx, ebx
    Sinon on peut chipoter avec un booléen qui représente le résultat d&#39;une condition (si le compilateur est malin il utilise SETCC) et un masque pour avoir le bon résultat. Je laisse encore un peu chercher.

    Avec ta solution on peut faire comme ça :

    Code:
    int a, b, abs, max;
    int const masque = (a-b) >> 31;
    
    abs = a - b;
    abs = (abs ^ masque) - masque;
    
    max = (a + b + abs) / 2;
    A part le fabs du FPU je ne connais pas d&#39;autre moyen de trouver la valeur absolue.
    Citation Envoyé par Wanou Voir le message
    Je t'aime...
    :wq

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •