Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites". Attention, le forum rencontre actuellement quelques difficultés. En cas d'erreur 502, il ne faut pas re-valider l'envoi d'un message ou l'ouverture d'une discussion, au risque de créer un doublon.

La section divers se réorganise ! De nouvelles sous-sections à venir. (plus d'infos + donner son avis)

#51 Le 18/11/2012, à 23:13

Elzen

Re : /* Topic des codeurs [8] */

tshirtman a écrit :

non, tu es atteint d'un syndrome de l'acronyme, qu'il faut absolument combattre tongue je m'y oppose. smile

Plaît-il ?

(Sinon, acronyme ou pas, perso, j'm'en fous, c'est juste que c'est un peu la seule idée qui ait été proposée, alors que plusieurs gens étaient d'accord, au début, pour chercher un vrai nom)


Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
J'ai pour qualité de ne jamais attaquer les gens. J'ai pour défaut de souvent avoir l'air de le faire.

Hors ligne

#52 Le 18/11/2012, à 23:14

nathéo

Re : /* Topic des codeurs [8] */

Bah c'est ce que je veux en fait, enfin je stocke le résultat dans une variable puis je la passe en argument dans une fonction. Mais ça me renvoie une erreur quand j'essaie

./101vecteurs.rb: line 3: syntax error near unexpected token `ARGV[0]'

Dernière modification par nathéo (Le 18/11/2012, à 23:22)


C'est rarement par le sarcasme qu'on élève son âme.
Le jus de la vigne clarifie l'esprit et l'entendement.
De quoi souffres-tu ? De l'irréel intact dans le réel dévasté ?
N'oubliez pas d'ajouter un [RESOLU] si votre problème est réglé.ᥟathé൭о

Hors ligne

#53 Le 18/11/2012, à 23:21

The Uploader

Re : /* Topic des codeurs [8] */

ArkSeth a écrit :
tshirtman a écrit :

non, tu es atteint d'un syndrome de l'acronyme, qu'il faut absolument combattre tongue je m'y oppose. smile

Plaît-il ?

(Sinon, acronyme ou pas, perso, j'm'en fous, c'est juste que c'est un peu la seule idée qui ait été proposée, alors que plusieurs gens étaient d'accord, au début, pour chercher un vrai nom)

Bah on peut toujours renommer le fil si on se décide. smile


Passer de Ubuntu 10.04 à Xubuntu 12.04 LTS
ASUS N56VV (UEFI + GPT, Core i5-3230M @ 2.60GHz, Intel HD4000 + GeForce 750M, 12 Go de RAM, SSD 1 To)
Système principal : Archlinux (amd64), avec KDE 4
Système oublié la plupart du temps : Windows 8.1 Update 1 (x64, OEM)

Hors ligne

#54 Le 18/11/2012, à 23:47

:!pakman

Re : /* Topic des codeurs [8] */

@Shanx : perturbant ton coding style Java en C tongue

Je me suis fait reprendre par un prof en cours de Java, je faisait l'inverse : du coding style C en Java.
Il a eu beau me dire "c'est pas du C que tu écris, c'est du Java", rien n'y fait, j'ai bien essayé, mais le coup de la { sur la même ligne, je trouve ça trop étrange ^^


...

Hors ligne

#55 Le 19/11/2012, à 00:41

Pylades

Re : /* Topic des codeurs [8] */

Boarf, pour ma part les deux me vont. tongue

Sinon, Shanx, j’ai regardé ton code, dans le bus, et si tu as une segfault, c’est que tu appelles fgets avec un buffer (mot) qui n’est en fait qu’un pointeur non initialisé (ligne 128, environ). Du coup, il proteste énergiquement, normal.


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#56 Le 19/11/2012, à 23:02

tshirtman

Re : /* Topic des codeurs [8] */

Rolinh a écrit :

Tiens, à nouveau un article sur Kivy sur le planet Archlinux. Intéressant. smile

Yep, mais je me demande s'il a pas envoyé l'article à la presse un peu vite, il manque au moins un mot au début, et la phrase finale semble incomplète… j'attendais de le croiser sur irc pour lui dire, mais je l'ai pas encore vu hmm. Sinon, c'est vrai que c'est bien d'expliciter un peu cet exemple, j'avais fais l'exemple justement par ce que la doc était pas très claire ^^.

ArkSeth a écrit :
tshirtman a écrit :

non, tu es atteint d'un syndrome de l'acronyme, qu'il faut absolument combattre tongue je m'y oppose. smile

Plaît-il ?

Non smile

(Sinon, acronyme ou pas, perso, j'm'en fous, c'est juste que c'est un peu la seule idée qui ait été proposée, alors que plusieurs gens étaient d'accord, au début, pour chercher un vrai nom)

Perso je pensais qu'on avait déjà renommé, vu qu'avant c'était des codeurs couche tard tongue, et le nom actuel me va, faire un acronyme incompréhensible (et qu'on va devoir écrire en entier à chaque fois, et qui est long du coup), sans apporter un sens particulièrement éclairant, ou rigolo, je trouve ça un peu dommage.

Dernière modification par tshirtman (Le 19/11/2012, à 23:05)

Hors ligne

#57 Le 19/11/2012, à 23:46

Elzen

Re : /* Topic des codeurs [8] */

Alors, tu refuses d'expliquer ce que tu entends par « syndrome de l'acronyme », mais par contre, quand je signale explicitement que acronyme ou pas, j'm'en fous, celui-là était une proposition parmi d'autres qu'on n'avait pas encore faites, tu réponds en considérant que ça va nécessairement être un acronyme. Hum.


Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
J'ai pour qualité de ne jamais attaquer les gens. J'ai pour défaut de souvent avoir l'air de le faire.

Hors ligne

#58 Le 20/11/2012, à 01:02

tshirtman

Re : /* Topic des codeurs [8] */

Ah, non, je remarque juste que t'as une certaine tendance à vouloir mettre des acronymes un peu partout, je dis pas que tu l'impose hein, mais c'est un reflex que tu as (à mes yeux). Personnellement, je préfère en user avec parcimonie, c'est tout. smile

(le "non" c'était une réponse à "plait-il" pris au sens littéral, → "non ça plait pas", juste une boutade smile)

Dernière modification par tshirtman (Le 20/11/2012, à 01:03)

Hors ligne

#59 Le 20/11/2012, à 01:42

Elzen

Re : /* Topic des codeurs [8] */

J'n'ai pas l'impression d'en utiliser tant que ça yikes

Et perso, j'préférerais un vrai nom qui en jette et qui ne soit pas acronymique, mais j'n'ai rien à proposer pour le moment.


Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
J'ai pour qualité de ne jamais attaquer les gens. J'ai pour défaut de souvent avoir l'air de le faire.

Hors ligne

#60 Le 20/11/2012, à 07:49

Rolinh

Re : /* Topic des codeurs [8] */

tshirtman a écrit :

(...) et le nom actuel me va, faire un acronyme incompréhensible (et qu'on va devoir écrire en entier à chaque fois, et qui est long du coup), sans apporter un sens particulièrement éclairant, ou rigolo, je trouve ça un peu dommage.

+101010
Topic des codeurs, c'est clair nan? Tout le monde comprend le sujet au moins.

Sinon, d'une manière générale, je pense que le syndrome des acronymes touche particulièrement les français.
En tant qu'étranger, on n'y comprend rien ne serait-ce que dans les systèmes de formations par exemple.


Blog
"If you put a Unix shell to your ear, do you hear the C ?"

Hors ligne

#61 Le 20/11/2012, à 08:58

Mindiell

Re : /* Topic des codeurs [8] */

Quid de "Topic des programmateurs" ?

Quoi ? Comment ? Eh ! Mais arretez de me balancer des cailloux ! Qu'est-ce que j'ai dit de mal ?
big_smile

Hors ligne

#62 Le 20/11/2012, à 19:35

afilmore

Re : /* Topic des codeurs [8] */

Mindiell a écrit :

Quid de "Topic des programmateurs" ?

Le topic des codeurs déconneurs ? tongue

Hors ligne

#63 Le 21/11/2012, à 13:47

Pylades

Re : /* Topic des codeurs [8] */

Shanx, en fait ton code c’est un bazar pas possible, j’ai du mal à comprendre ce que tu veux faire. tongue
Du coup, je n’ai pas vraiment eu le temps de voir ça bien comme il faut, mais j’ai changé des trucs et fait des remarques : http://paste.tdct.org/index.php?9m.


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#64 Le 24/11/2012, à 01:25

HP

Re : /* Topic des codeurs [8] */

# rake-client sloccount
Totals grouped by language (dominant language first):
ruby:          3609 (100.00%)
Total Physical Source Lines of Code (SLOC)                = 3,609
Development Effort Estimate, Person-Years (Person-Months) = 0.77 (9.24)
Schedule Estimate, Years (Months)                         = 0.48 (5.82)
Estimated Average Number of Developers (Effort/Schedule)  = 1.59
Total Estimated Cost to Develop                           = $ 103,968
Please credit this data as "generated using David A. Wheeler's 'SLOCCount'."
# rake-client gitstats
Age                 399 days, 99 active days (24.81%)
Authors             1 (average 645.0 commits per author)
Generated           2012-11-24 01:23:44 (in 0 seconds)
Generator           GitStats (version 2011.11.08)
Report Period       2011-10-23 01:32:29 to 2012-11-24 01:12:39
Total Commits       645 (average 6.5 commits per active day, 1.6 per all days)
Total Files         455
Total Lines of Code 12780 (23510 added, 10730 removed)

cat /dev/urandom >/dev/null 2>&1

Hors ligne

#65 Le 24/11/2012, à 20:03

Elzen

Re : /* Topic des codeurs [8] */

Ç'pas du code, mais j'essaye de m'occuper de la nouvelle conf de mon serveur, et j'suis un peu paumé question authentification.

Ce que je voudrais, c'est que mes serveurs web (lighttpd) et mail (postfix/dovecot) utilisent les comptes/mdp système. Apparemment, pour ça, je serais censé utiliser LDAP, sauf que je n'connais pas grand chose à la bête, et que je ne trouve pas comment je serais censé dire à l'annuaire de se brancher sur les comptes systèmes.
En plus, pour l'instant, je suis, planqué derrière une box qui ne redirige que les ports que je lui ai demandé, mais quand je serai passé en IPv6 et que l'extérieur causera directement à ma machine sans passer par la box, je suppose qu'il va aussi falloir que je fasse en sorte que l'annuaire ne réponde qu'aux sollicitations qui viennent de localhost, et je n'sais pas comment faire ça non plus.

Si par hasard quelqu'un était coutumier de ce genre de trucs et/ou avait de la bonne doc sous la main, ça m'intéresserait.


Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
J'ai pour qualité de ne jamais attaquer les gens. J'ai pour défaut de souvent avoir l'air de le faire.

Hors ligne

#66 Le 24/11/2012, à 21:53

Le Rouge

Re : /* Topic des codeurs [8] */

Je ne pense pas que tu puisses configurer le LDAP pour qu'il utilise les comptes systèmes. Par contre, tu peux t'arranger pour que les comptes systèmes soient stockés dans le LDAP. De mémoire, pour que l'OS cherche dans le LDAP si un utilisateur peut se logger, il faut bidouiller le fichier /etc/nsswitch.conf (mais je ne sais plus comment ^^).

Un LDAP c'est juste une BDD avec une structure particulière.


C'est deux suites de Cauchy qui veulent aller à la soirée 'no limit'. Hélas, à l'entrée le videur leur dit : "désolé, c'est complet !".
mon site perso (π²/6.fr) et mon blog

Hors ligne

#67 Le 24/11/2012, à 23:37

Elzen

Re : /* Topic des codeurs [8] */

Mince, j'n'ai pas dû tout comprendre, alors…

Mais il n'existe pas de solutions pour que ces trucs-là (serveurs web/mail/jabber/etc.) utilisent simplement les vrais comptes/mdp du système, alors ? yikes

(J'veux dire, de solutions autre que changer la façon dont le système traite ses comptes. Ça me paraît sacrément moche, quand même…)


Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
J'ai pour qualité de ne jamais attaquer les gens. J'ai pour défaut de souvent avoir l'air de le faire.

Hors ligne

#68 Le 25/11/2012, à 08:46

Mindiell

Re : /* Topic des codeurs [8] */

Bah, perso mon postfix utilise de base mes comptes systèmes moi... Tu veux faire quoi de plus ?

Hors ligne

#69 Le 26/11/2012, à 16:05

grim7reaper

Re : /* Topic des codeurs [8] */

Cool, un genre de project Euler mais pour la bioinformatique smile

Hors ligne

#70 Le 27/11/2012, à 20:18

The Uploader

Re : /* Topic des codeurs [8] */


Passer de Ubuntu 10.04 à Xubuntu 12.04 LTS
ASUS N56VV (UEFI + GPT, Core i5-3230M @ 2.60GHz, Intel HD4000 + GeForce 750M, 12 Go de RAM, SSD 1 To)
Système principal : Archlinux (amd64), avec KDE 4
Système oublié la plupart du temps : Windows 8.1 Update 1 (x64, OEM)

Hors ligne

#71 Le 27/11/2012, à 21:02

Shanx

Re : /* Topic des codeurs [8] */

Avec le concours de Pylade, j’ai enfin terminé mon pendu, qui a été l’occasion pour moi d’apprendre plein de trucs… (Et Pylade a appris qu’on ne voyait rien en cours big_smile).
Du coup, voilà mon code. Si vous avez des idées d’amélioration (pas forcément directement sur le code, des trucs d’ordre plus généraux pour m’apprendre à bien programmer), je suis preneur. smile

/**** PENDU ****/

#include<stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <ctype.h>

#define TAILLE_MAX 50

#define POTENCE1 "\n" \
                 "\n" \
                 "\n" \
                 "\n" \
                 "\n" \
                 "\n" \
                 "\n" \
                 "\n" \
                 "\n" \
                 "#####################\n"

#define POTENCE2 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "#####################\n"

#define POTENCE3 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "    /|\\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE4 "      _____________\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "    /|\\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE5 "      _____________\n" \
                 "     | /\n" \
                 "     |/\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "    /|\\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE6 "      _____________\n" \
                 "     | /        |\n" \
                 "     |/         |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "    /|\\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE7 "      _____________\n" \
                 "     | /        |\n" \
                 "     |/         |\n" \
                 "     |         (_)\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "     |\n" \
                 "    /|\\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE8 "      _____________\n" \
                 "     | /        |\n" \
                 "     |/         |\n" \
                 "     |         (_)\n" \
                 "     |          |\n" \
                 "     |          |\n" \
                 "     |          |\n" \
                 "     |\n" \
                 "    /|\\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE9 "      _____________\n" \
                 "     | /        |\n" \
                 "     |/         |\n" \
                 "     |         (_)\n" \
                 "     |          |\n" \
                 "     |          |\n" \
                 "     |          |\n" \
                 "     |         / \\\n" \
                 "    /|\\       /   \\\n" \
                 "   / | \\\n" \
                 "#####################\n"

#define POTENCE10 "      _____________\n" \
                 "     | /        |\n" \
                 "     |/         |\n" \
                 "     |         (_)\n" \
                 "     |          |\n" \
                 "     |         /|\\\n" \
                 "     |          |\n" \
                 "     |         / \\\n" \
                 "    /|\\       /   \\\n" \
                 "   / | \\\n" \
                 "#####################\n"


void choixMot(const char *chemin, char* mot);
char choix_lettre(void);
int lettre_dans_mot(const char* mot, char lettre, char* t);
void affichage(int j);
void victoire(const char* mot);

int main(int argc, char *argv[])
    {
    int i;
    int j=0; /* Compteur de coups faux */
    int j1;
    int k; /* compteur qui s'incrémente si la lettre proposée est dans le mot */
    char mot[TAILLE_MAX];

    choixMot(argv[1], mot);

    int longueurMot = strlen(mot);
    char t[TAILLE_MAX]; /* tableau des lettres à deviner */
    char lettre;
    char lettresTestees[26];

    for(i=0 ; i < longueurMot ; i++)
    {
        t[i] = '_';
    }
    t[i] = '\0';

    /*printf("Le mot choisi est %s\n", mot);*/

    while (j< 10)
    {
        k=0;
        j1 = 0;
        puts("Le mot à deviner est : ");
        for(i=0 ; i < longueurMot ; i++)
        {
            printf("%c ", t[i]);
        }

        /* Affichage des lettres déjà testées */
        if (j!=0)
        {
            puts("\n");
            puts("Les lettres déjà testées sont : ");
            for(i=0 ; i <j ; i++)
            {
                printf("%c ", lettresTestees[i]);
            }
        }
        puts("\n");

        lettre=choix_lettre();
        puts("\n");

        lettre_dans_mot(mot, lettre, t);

        if(lettre_dans_mot(mot, lettre, t) == 0)
        {
            puts("Dommage !\n");
            for(i=0 ; i <= j ; i++)
            {
                if (lettre == lettresTestees[i])
                {
                    puts("C'est con, cette lettre avait déjà été testée...");
                    break;
                }
                else if(i==j)
                {
                    j1 = 1; /* On incrémente le compteur de coups faux */
                }
            }
            lettresTestees[j]=lettre;
            j = j + j1;
        }
        affichage(j);

        /* a-t-on le mot en entier ? */
        if (!strcmp(mot, t))
        {
            victoire(mot);
        }
    }

    puts("Sale mauvais !");
    printf("Le mot à trouver était : %s.\n", mot);
    puts("\n");
    return 0;
}

void choixMot(const char *chemin, char* mot)
{
    FILE* fichier = NULL;
    fichier = fopen(chemin, "r");

    if (fichier == NULL)
    {
        fprintf(stderr, "Impossible d'ouvrir le fichier\n");
        exit(1);
    }
    char caractereLu;
    int numMotChoisi, nombreMots;
    nombreMots = 0;

    /* On compte le nombre de mots dans le fichier */
    while((caractereLu=fgetc(fichier)) != EOF)
    {
        if (caractereLu == '\n'){
            nombreMots++;
        }
    }

    srand(time(NULL));
    numMotChoisi = (rand() % nombreMots);

    /* On prend le mot choisi */
    rewind(fichier);
    while (numMotChoisi > 0)
    {
        caractereLu = fgetc(fichier);
        if (caractereLu == '\n')
        numMotChoisi--;
    }

    fgets(mot, TAILLE_MAX, fichier);
    fclose(fichier);
    mot[strlen(mot) - 1] = '\0';
}

char choix_lettre(void)
{
    char buf[3];
    char chr = '\0';
    while (!chr)
    {
        fputs("Entre une lettre: ", stdout);
        if (!fgets(buf, 3, stdin))
        {
            fputs("stdin lost, exiting.\n", stderr);
            exit(1);
        }
        if (buf[1] != '\n')
        {
            if (buf[0] != '\n')
                while (getchar() != '\n');
            puts("Une seule lettre. ><\n");
            chr = '\0';
        }
        else
        {
            chr = tolower(buf[0]);
            if (!islower(chr))
            {
                puts("Un caractère alphabetique, c'est mieux.\n");
                chr = '\0';
            }
        }
    }
    return chr;
}

/* Si la lettre est présente dans le mot */
int lettre_dans_mot(const char* mot, char lettre, char* t)
{
    int found = 0;
    int i=0;
    for (i=0 ; i <= strlen(mot) ; i++ )
    {
        if(lettre ==  mot[i])
        {
            found = 1;
            t[i]=lettre;
        }
    }
    return found;
}

void affichage(int j)
{
    printf("Tu en es à %d coups faux.\n", j);
    switch (j)
    {
        case 1:
            puts(POTENCE1);
            break;
        case 2:
            puts(POTENCE2);
            break;
        case 3:
            puts(POTENCE3);
            break;
        case 4:
            puts(POTENCE4);
            break;
        case 5:
            puts(POTENCE5);
            break;
        case 6:
            puts(POTENCE6);
            break;
        case 7:
            puts(POTENCE7);
            break;
        case 8:
            puts(POTENCE8);
            break;
        case 9:
            puts(POTENCE9);
            break;
        case 10:
            puts(POTENCE10);
            break;
    }
}

void victoire(const char* mot)
{
    int i;
    puts("Bravo !");
    printf("Le mot à trouver était : %s.\n", mot);
    puts("\n");
    exit(0);
}

« En vérité, je ne voyage pas, moi, pour atteindre un endroit précis, mais pour marcher : simple plaisir de voyager. » R. L. Stevenson
--
Blog et randos

Hors ligne

#72 Le 27/11/2012, à 21:48

Pylades

Re : /* Topic des codeurs [8] */

Mettre les directives préprocesseur dans un header (voire les dessins dans un header à part) ; supprimer les puts("\n"); qui traînent. big_smile

On abaisse la taille maximum du mot à 32 caractères, coder les lettres trouvées sur les bits d’un unsigned long (qui fait au minimum 32 bits).

Dernière modification par Πυλάδης (Le 27/11/2012, à 21:54)


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#73 Le 27/11/2012, à 22:10

grim7reaper

Re : /* Topic des codeurs [8] */

@Shanx :
Variable i inutilisé dans la fonction victoire.
Quand tu lis le fichier, essai de lire par bloc (de taille TAILLE_MAX par exemple) au lieu de caractère par caractère.
Code en anglais.
Remplace :

for(i=0 ; i < longueurMot ; i++)
{
    t[i] = '_';
}
t[i] = '\0';

Par :

memset(t, '_', longueurMot);
t[longueurMot - 1] = '\0';

Tu peux sûrement remplacer la boucle dans lettre_dans_mot par un appel à strchr.
Dans affichage, vire le switch moche et fait un tableau de potence. T’aurais juste à faire :

puts(potences[j-1]);

Y’a des exit un peu partout (on sent l’influence de Πυλάδης), c’est moche.



Πυλάδης a écrit :

On abaisse la taille maximum du mot à 32 caractères, coder les lettres trouvées sur les bits d’un unsigned long (qui fait au minimum 32 bits).

Optimisation inutile : complication du code pour un gain de performance quasi-nul (voire négatif) et une économie de mémoire risible. Par contre, perte de souplesse assurée.
En gros, c’est pas justifié.



Sinon sur Rosalind je viens de passer niveau 4 \o/ (et de leur remonter un bug…)

Hors ligne

#74 Le 27/11/2012, à 22:33

Mindiell

Re : /* Topic des codeurs [8] */

@Shanx : Fait un programme serveur pour qu'on puisse jouer par telnet wink

@grim7reaper: J'ai rien compris, c'est quoi exactement Rosalind ? smile

Hors ligne

#75 Le 27/11/2012, à 22:33

Pylades

Re : /* Topic des codeurs [8] */

Ouais, c’est vrai que ça fait pas une grosse économie…
Et ouais, bonne idée pour le tableau de potences, le pire c’est que je me demandais comment se passer du switch. ><" J’ai bien rouillé…

Les exit il y en a deux sur trois à cause de moi, je sais que ce n’est pas terrible, mais c’était la solution de facilité par rapport au code de base.

Sinon, quand j’ai écrit :

while (getchar() != '\n');

j’ai un peu dit une connerie, faut vérifier que le caractère n’est pas EOF, aussi.

Sinon, tu mets les accolades ouvrantes sur une ligne séparée, maintenant ?

Dernière modification par Πυλάδης (Le 27/11/2012, à 22:34)


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

Haut de page ↑