IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Humour Informatique Discussion :

Ivre, il écrit une fonction qui pèse 100 Mo pour savoir si un nombre est pair

  1. #1
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    janvier 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : janvier 2021
    Messages : 2
    Points : 13
    Points
    13
    Par défaut Ivre, il écrit une fonction qui pèse 100 Mo pour savoir si un nombre est pair
    Bonjour à toutes et à tous,

    Les amis, on ne va pas se mentir : en tant que développeurs, vous êtes forcément déjà tombés sur des aberrations de programmation, qui ont probablement su vous donner de belles sueurs froides.

    Je pense notamment à ces forçages à gros coups de IF ou SWITCH (qui a connu les GOTO ?), incrustés dans le code du fait d'une mauvaise conception, souvent parfois par flemme, et pour certains cas dans l'urgence ("TODO : refactoriser ce bout de code", OUAIS OUAIS, C'EST ÇA OUAIS !).


    Qui sait, vous avez peut-être même quelques-unes de ces petites abominations à votre actif ? 👀
    Rassurez-vous : il existe bien pire que tout ce que vous avez pu voir ! Au détour de mon surf sur les internets, je suis tombé sur un package JavaScript assez... particulier. 😅

    Sobrement prénommé is-even (comprenez "est pair"), celui-ci se présente comme une fonction visant à indiquer si le nombre qui lui est transmis en paramètre est pair.

    Seul hic, son unique fichier pèse quasiment 100 Mo (94,8 Mo pour être précis) ! Vous avez bien lu. CENT. P*****. DE. MEGA. OCTETS.
    Alors comme moi à mon arrivée sur la page de ce projet, vous devez probablement vous demander quoi le fuck ?! GitHub s'avoue d'ailleurs lui-même vaincu face à la taille du fichier pour sa preview :
    Mais figurez-vous que c'est bien lorsque l'on force l'ouverture dudit fichier que toute la magie opère :
    ET BIM !
    Des IF. Des ELSE. De la condition de grosse brutasse (comparaison stricte avec le triple
    Des IF. Des ELSE. De la condition de grosse brutasse (comparaison stricte avec le triple égal), et de l'alternance true/false, évidemment.

    Et c'est comme ça jusqu'à 1 000 001.
    Avouez que du coup, on comprend mieux les 100 Mo. 👀

    Rassurez-vous : ce projet du développeur vénézuélien Samuel Mariña, qui comptabilise 1200 étoiles sur GitHub et pas moins de 195 forks (&#128561 est bien évidemment à caractère humoristique. Il suffit pour cela de jeter un œil à son README :

    "Ce projet est 100% sérieux et a été créé pour aider la communauté. Il y a beaucoup de situations où les jeunes développeurs éprouvent des difficultés pour déterminer si un nombre est pair, alors j'ai décidé de les aider en créant ce magnifique package. Avec un peu de chance, celui-ci sera un jour complet..."

    Afin d'aider encore plus de monde dans sa démarche, on notera que Samuel a également pensé à créer le package is-odd, qui permet de savoir si un nombre est... impair (ben ouais, non mais fallait y penser aussi) !

    On espère néanmoins pour lui et les contributeurs de son projet que le fichier a été généré de manière automatisée. 👀

    Rappelons gentiment que le moyen le plus simple pour déterminer si un nombre est pair est la division par 2 : si le reste (modulo, opérateur % en JavaScript) de celle-ci vaut zéro, c'est que votre nombre est pair. 😉

  2. #2
    Expert confirmé

    Inscrit en
    août 2006
    Messages
    3 882
    Détails du profil
    Informations forums :
    Inscription : août 2006
    Messages : 3 882
    Points : 5 514
    Points
    5 514
    Par défaut
    Bonjour,

    Citation Envoyé par theend10 Voir le message
    Rappelons gentiment que le moyen le plus simple pour déterminer si un nombre est pair est la division par 2 : si le reste (modulo, opérateur % en JavaScript) de celle-ci vaut zéro, c'est que votre nombre est pair. 😉
    C'est gentil de nous le rappeler, j'avais oublié.
    "Mon pied droit est jaloux de mon pied gauche.
    Quand l'un avance, l'autre veut le dépasser.
    Et moi, comme un imbécile, je marche !"
    [Raymond Devos]

  3. #3
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    juillet 2006
    Messages
    9 720
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : juillet 2006
    Messages : 9 720
    Points : 13 913
    Points
    13 913
    Par défaut
    Citation Envoyé par theend10 Voir le message
    Bonjour à toutes et à tous,
    [--snip--]
    Ah, ça y est, ils t'ont relâché ?

    Et donc tu t'empresses de venir gaspiller l'espace disque du site avec des choses pour lesquelles un simple lien aurait suffi, participant ainsi allègrement à la consommation de ressources énergétiques et donc au dérèglement climatique.

    On ne te félicitera pas.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  4. #4
    Expert éminent sénior
    Avatar de Glutinus
    Homme Profil pro
    Freelance EURL / Business Intelligence ETL
    Inscrit en
    avril 2005
    Messages
    5 649
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance EURL / Business Intelligence ETL
    Secteur : Finance

    Informations forums :
    Inscription : avril 2005
    Messages : 5 649
    Points : 26 787
    Points
    26 787
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par droggo Voir le message
    Bonjour,

    C'est gentil de nous le rappeler, j'avais oublié.
    Cela dit, quand je dis à mes collègues que "la fonction modulo donne le reste de la division euclidienne" on me regarde avec des yeux ronds
    - So.... what exactly is preventing us from doing this?
    - Geometry.
    - Just ignore it !!
    ****
    "The longer he lived, the more he realized that nothing was simple and little was true" A clash of Kings, George R. R. Martin.
    ***
    Quand arrivera l'apocalypse, il restera deux types d'entreprise : les pompes funèbres et les cabinets d'audit. - zecreator, 21/05/2019

  5. #5
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    juillet 2006
    Messages
    9 720
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : juillet 2006
    Messages : 9 720
    Points : 13 913
    Points
    13 913
    Par défaut
    Citation Envoyé par Glutinus Voir le message
    Cela dit, quand je dis à mes collègues que "la fonction modulo donne le reste de la division euclidienne" on me regarde avec des yeux ronds
    C'est normal :

    Citation Envoyé par Katden Voir le message
    Par exemple, je leur ai dit : faisons un truc simple, une fonction en python qui nous donne des valeurs de la fonction affine ax +b pour x allant de 0 à 20.
    Question : «fonction affine» c'est quoi ?
    Les dernières entrées de ce sujet sont assez édifiantes…
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  6. #6
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    janvier 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : janvier 2021
    Messages : 2
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Ah, ça y est, ils t'ont relâché ?

    Et donc tu t'empresses de venir gaspiller l'espace disque du site avec des choses pour lesquelles un simple lien aurait suffi, participant ainsi allègrement à la consommation de ressources énergétiques et donc au dérèglement climatique.

    On ne te félicitera pas.
    C'est vrai que mettre juste le lien suffit mais bon le style de l'auteur est humoristique c'est pourquoi j'ai copié tout le lien car nous somme dans la section humour informatique...
    Ah oui je fais chauffer la terre juste avec quelque ko en plus, va dire ça aux multinationales qui sont là cause principale de réchauffement climatique, et commence pour dire ça à votre boîte mais fais attention tu risques d'être virer

  7. #7
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    janvier 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : janvier 2021
    Messages : 2
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par droggo Voir le message
    Bonjour,


    C'est gentil de nous le rappeler, j'avais oublié.
    Faire toute une division pour tester si un nombre est paire,il suffit de tester un seule bit puisque tout est en binaire.

    En particulier, un nombre exprimé en système de numération binaire est impair si son dernier chiffre est 1 et pair si son dernier chiffre est 0.

  8. #8
    Responsable Arduino et Systèmes Embarqués

    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    janvier 2009
    Messages
    11 971
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : janvier 2009
    Messages : 11 971
    Points : 52 446
    Points
    52 446
    Billets dans le blog
    19
    Par défaut
    Citation Envoyé par theend10 Voir le message
    Rappelons gentiment que le moyen le plus simple pour déterminer si un nombre est pair est la division par 2 : si le reste (modulo, opérateur % en JavaScript) de celle-ci vaut zéro, c'est que votre nombre est pair. 😉
    D'autres diront que le moyen le plus simple de déterminer si un nombre n est pair, est de vérifier que n-1 ne l'est pas !

  9. #9
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    janvier 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : janvier 2021
    Messages : 2
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par f-leb Voir le message
    D'autres diront que le moyen le plus simple de déterminer si un nombre n est pair, est de vérifier que n-1 ne l'est pas !
    Bah qui es l'opération la plus légère dans la mémoire, faire un calcule que ca soit une division ou une addition ou tester un seul bit
    C'est clair que si j'ai des grands nombres l'opération la plus simple est de tester un seul bit pour dire que c'est pair ou impaire, donc même l'auteur de ce topic on peut le trôler pour dire il y a plus simple que faire % surtout pour les grands nombres

  10. #10
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    juillet 2006
    Messages
    9 720
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : juillet 2006
    Messages : 9 720
    Points : 13 913
    Points
    13 913
    Par défaut
    Citation Envoyé par theend10 Voir le message
    C'est vrai que mettre juste le lien suffit mais bon le style de l'auteur est humoristique c'est pourquoi j'ai copié tout le lien car nous sommes dans la section humour informatique...
    Aucun rapport. Le lien aurait suffi et basta !


    Citation Envoyé par theend10 Voir le message
    Ah oui je fais chauffer la terre juste avec quelque ko en plus, va dire ça aux multinationales qui sont la cause principale de réchauffement climatique, et commence pour dire ça à votre boîte mais fais attention tu risques d'être viré
    Et le principe du colibri, tu connais ?
    Deux liens, l'un pour la fable, et l'autre pour une discussion philosophique intéressante.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  11. #11
    Responsable Arduino et Systèmes Embarqués

    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    janvier 2009
    Messages
    11 971
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : janvier 2009
    Messages : 11 971
    Points : 52 446
    Points
    52 446
    Billets dans le blog
    19
    Par défaut
    Citation Envoyé par Glutinus Voir le message
    Cela dit, quand je dis à mes collègues que "la fonction modulo donne le reste de la division euclidienne" on me regarde avec des yeux ronds
    Ceci dit, quand j'explique que n est pair si n-1 ne l'est pas, on me demande aussi ce que j'ai fumé

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    def est_pair(n):
        if n == 0: return True
        if n == 1: return False
        return not est_pair(n-1) # n est pair, si n-1 n'est pas pair ;-)

  12. #12
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    mars 2010
    Messages
    8 545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : mars 2010
    Messages : 8 545
    Points : 31 095
    Points
    31 095
    Billets dans le blog
    2
    Par défaut
    Pour savoir si un nombre est pair, il suffit de demander au chef ce qu'il en pense, s'il dit "pair" c'est qu'il est pair.

  13. #13
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    janvier 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : janvier 2021
    Messages : 2
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Aucun rapport. Le lien aurait suffi et basta !



    Et le principe du colibri, tu connais ?
    Deux liens, l'un pour la fable, et l'autre pour une discussion philosophique intéressante.
    Pour te dire je ne suis pas contre votre idée mais je le trouve très compliquée à réaliser car chaqu'un ça mentalité
    Non je connais pas le principe du colibri, mais je connais le principe de pourquoi faire compliqué quand on peut faire simple, et le plus simple est d'obliger les multinationales et les boîtes pour lutter contre le réchauffement climatique, car c'est surtout eux les responsables principaux de cette état de réchauffement

  14. #14
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    janvier 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : janvier 2021
    Messages : 2
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par escartefigue Voir le message
    Pour savoir si un nombre est pair, il suffit de demander au chef ce qu'il en pense, s'il dit "pair" c'est qu'il est pair.
    Tu es devenu chef de forum alors monsieur le chef est ce que ce nombre est paire ou impair Z=E(e*(10^4614-14^1446)) avec E la partie entière et e=exp(1)?

Discussions similaires

  1. Réponses: 8
    Dernier message: 19/04/2018, 15h46
  2. Réponses: 9
    Dernier message: 21/06/2013, 16h02
  3. Réponses: 10
    Dernier message: 05/08/2010, 12h02
  4. [VB6] Comment faire une fonction qui renvoie 2 résultats
    Par tazarine dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 15/01/2004, 00h13
  5. [langage] Creer une fonction qui met en majuscule ?
    Par Cyber@l dans le forum Langage
    Réponses: 6
    Dernier message: 04/12/2003, 18h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo