Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur dans ma soumissions d'exercice IOI

    18 mai 2017 à 18:26:29

    Bonsoir,

    Une erreur c'est glissée dans mon code, saurez-vous m'aider à la retrouver?

    Quand je soumets le code ci-dessous j'obtiens: TOTAL Échec Vous avez réussi 12 tests sur 13. 92 %

           
    #include <stdio.h>
    
    int main ()
    {
        int nbMaisons=0, stdX=0, stdY=0, minX=0, minY=0, maxX=0, maxY=0, i=0, periM=0;
    
        scanf("%d", &nbMaisons);
    
    for (i=1; i<=nbMaisons; i++)
    {
        scanf("%d", &stdX);
        scanf("%d", &stdY);
        
        if (maxX==0 && minX==0)
        {
           maxX=stdX;
           minX=stdX;
        }
         if (maxY==0 && minY==0)
        {
           maxY=stdY;
           minY=stdY;
        }
        else
            {
                if(stdX>maxX)
                {
                    maxX=stdX;
                }
                else if(stdX<minX)
                {
                    minX=stdX;
                }
                if(stdY>maxY)
                {
                    maxY=stdY;
                }
                else if(stdY<minY)
                {
                    minY=stdY;
                }
            }
    }
    
    periM=((maxY-minY)+(maxX-minX))*2;
    
    printf("%d", periM);
    return 0;
    }



    • Partager sur Facebook
    • Partager sur Twitter
    https://openclassrooms.com/forum/sujet/help-recherche-mentor
      18 mai 2017 à 18:29:23

      Explique rapidement la consigne de l'exercice aussi :)
      • Partager sur Facebook
      • Partager sur Twitter
        18 mai 2017 à 18:30:34

        Le village dans lequel vous avez passé la nuit est en pleine effervescence au matin : encore une attaque de worgs pendant la nuit ! Les worgs sont de redoutables loups qui vivent sur Algoréa et qui s'attaquent au bétail... et parfois même aux enfants.

        C'est décidé, il va falloir construire une grande palissade tout autour du village. Les habitants insistent pour que cette clôture soit rectangulaire et ait une face au Nord, une au Sud, une à l'Est et une à l'Ouest, quitte à devoir travailler un peu plus que nécessaire. Ils ont maintenant besoin de votre aide pour savoir la quantité de bois dont ils vont avoir besoin pour construire cette palissade.

        Ce que doit faire votre programme :

        Le programme doit d'abord lire un entier strictement positif correspondant au nombre de maisons. Ensuite, pour chaque maison, il doit lire la position horizontale (l'abscisse, le "x") et sa position verticale (l'ordonnée, le "y") de cette maison. Toutes les abscisses et ordonnées sont des entiers compris entre zéro et 1 million.

        Le programme doit alors afficher le périmètre de la plus petite clôture rectangulaire englobant toutes les maisons. Ce rectangle doit avoir ses côtés parallèles aux axes du repère, comme montré sur l'illustration.

        Représentation du premier exemple
        Représentation graphique du premier exemple
        • Partager sur Facebook
        • Partager sur Twitter
        https://openclassrooms.com/forum/sujet/help-recherche-mentor
          18 mai 2017 à 18:58:41

          Salut,

          • int main() n’est pas une forme de main valide, utilise int main(void).
          • Attention à l’indentation.
          • On préfère faire for(i = 0; i &lt; max; i++).
          • Dans ta boucle, tu as l’idée, mais tu t’es compliqué la vie pour rien.
          Si x >= max_x Alors
              max_x = x
          Fin Si
          Si x <= min_x Alors
              min_x = x
          Fin Si
          Si y >= max_y Alors
              max_y = y
          Fin Si
          Si y >= min_y Alors
              min_y = y
          Fin Si
          

          -
          Edité par yo@n97one 18 mai 2017 à 18:59:18

          • Partager sur Facebook
          • Partager sur Twitter
          Tutoriel Ruby - Bon tutoriel C - Tutoriel SDL 2 - Python avancé - Faîtes un zeste, devenez des zesteurs
            19 mai 2017 à 12:21:12

            Merci pour tes conseils, il s'avère que je n'avais pas affecté les bonnes valeurs minimales et oublié de supprimer les "ELSE" en trop.

                int nbMaisons=0, stdX=0, stdY=0, minX=1000000, minY=1000000, maxX=0, maxY=0, i=0, periM=0;

            • Partager sur Facebook
            • Partager sur Twitter
            https://openclassrooms.com/forum/sujet/help-recherche-mentor
            Anonyme
              19 mai 2017 à 13:05:17

              Note qu'il faut être prudent, le site de France IOI n'est pas sécurisé, rempli de failles et stocke toutes les informations identification de façon non sécurisée.

              Pour des challenges pour apprendre la programmation, je conseille plutôt le projet Euler

              • Partager sur Facebook
              • Partager sur Twitter
                22 mai 2017 à 13:27:33

                Bonjour merci pour l'info mais globalement Euler ce sont des problèmes de math, pas vraiment des cours de code, non?
                • Partager sur Facebook
                • Partager sur Twitter
                https://openclassrooms.com/forum/sujet/help-recherche-mentor

                Erreur dans ma soumissions d'exercice IOI

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown