Partage
  • Partager sur Facebook
  • Partager sur Twitter

question sur un exercice

    24 août 2016 à 11:35:14

    Bonjour j'ai un exercice basique qui consiste a demander au conducteur en premier lequel des 3 routes il a emprunte et la vitesse a laquelle il a roule.Il y a  trois routes la première comprise entre 30 et 45 la deuxième entre 60 et 90 et la troisième entre 90 et 120.Si il a voyage plus haut il y aura un message qu'il en suit et si plus bas il en va de même.J'ai écris ce code mais je ne suis pas très bon en présentation je voulait savoir si esthétiquement c’était juste.Y aurait t il un moyen d'organisation du code automatique? .Si il y a a un moyen plus simple de faire ce code merci de me le montrer. Je vous remercie encore de votre aide.

    Voici le code:(visual studio 2010)

    main()

    {

    int road;

    int road_1;

    int road_2;

    int road_3;

    int number_of_speed;

    printf("please enter the number of the road");

    scanf("%d",&road);

    printf("please enter the number of the speed");

    scanf("%d",&number_of_speed);

    road_1=1;

    road_2=2;

    road_3=3;

    if((road==road_1)&&number_of_speed>=30&&number_of_speed<=45)

      printf("you are driving in the authorized speed");

    else 

    if((road==road_1)&&number_of_speed<30)

     printf("you are driving in a low speed");

        else 

    if((road==road_1)&&number_of_speed>45)

           printf("you are driving in a high speed");

         if((road==road_2)&&number_of_speed>=60&&number_of_speed<=90)

            printf("you are driving in the authorized speed");

             else 

     if((road==road_2)&&number_of_speed<60)

              printf("you are driving in a low speed");

                  else 

      if((road==road_2)&&number_of_speed>90)

                   printf("you are driving in a high speed");

               if((road==road_3)&&number_of_speed>=90&&number_of_speed<=120)

                      printf("you are driving in the authorized speed");

                         else 

         if((road==road_3)&&number_of_speed<90)

                            printf("you are driving in a low speed");

                               else 

       if((road==road_3)&&number_of_speed>120)

                                  printf("you are driving in a high speed");

    }

    • Partager sur Facebook
    • Partager sur Twitter
      24 août 2016 à 12:52:24

      Hello,

      Si tu veux qu'on juge l'esthétique, il faudrait que tu utilise les balises </> pour insérer du code.

      • Partager sur Facebook
      • Partager sur Twitter
        24 août 2016 à 13:01:53

        Bonjour,

        En plus de la remarque judicieuse de Oelfire, sais-tu ce que sont les structures, les enums, les tableaux, les boucles for ?

        Pour info, la définition de la fonction main est :

        int main(void)
        {
          ...



        • Partager sur Facebook
        • Partager sur Twitter
        First solve the problem. Then, write the code. ~ John Johnson
          24 août 2016 à 14:36:02

          Un petit conseil, tu ne devrais pas coder tout ton programme dans ta fonction main:

          -de 1, c'est vraiment pas propre,

          -de 2, tu risques de très rapidement te perdre.

          Structure ton programme en plusieurs parties, découpe en fonctions ayant un nom explicit et commente ton code pour te rappeler ce que chaque chose fait.

          Après avoir fait cela, ton code te parraîtra beaucoup plus lisible, et ce sera plus facile pour toi d'avancer.

          Après comme l'a dit PicoDev, de nombreuses solutions sont présentes pour rendre un code plus optimisé, et surtout plus lisible.

          -
          Edité par Foundation 24 août 2016 à 16:13:22

          • Partager sur Facebook
          • Partager sur Twitter
          Un Lion ne meurt pas, il dort.
            24 août 2016 à 15:17:19

            #include <stdio.h>
            
            struct Speed
            {
                int low;
                int hight;
            };
            
            int main(void)
            {
                int road;
                int speed;
            
                struct Speed speed_limit[3]={{30,45},{60,90},{90,120}};
            
                printf("please enter the number of the road");
                scanf("%d", &road);
            
                printf("please enter the number of the speed");
                scanf("%d", &speed);
            
                if(speed<speed_limit[road-1].low)
                            printf("you are driving in a low speed");
                else if(speed>speed_limit[road-1].hight)
                            printf("you are driving in a high speed");
                     else printf("you are driving in the authorized speed");
            
                return 0;
            }
            • Partager sur Facebook
            • Partager sur Twitter
              25 août 2016 à 8:03:07

              Merci vraiment de votre aide, struct Speed speed_limit[3]={{30,45},{60,90},{90,120}}; en faisant ca tu a declare les 3 routes avec [3]? deuxieme question qu'est ce que le struct ?

              -
              Edité par Tony432 25 août 2016 à 8:05:24

              • Partager sur Facebook
              • Partager sur Twitter
                25 août 2016 à 8:19:50

                Hello,

                struct Speed
                {
                    int low;
                    int hight;
                };
                 

                ici il déclare une structure (un ensemble de variable pour faire simple) qui contient deux int, un pour la vitesse max et l'autre pour la vitesse mini.

                Et ici:

                struct Speed speed_limit[3]={{30,45},{60,90},{90,120}};

                Il déclare un tableau de 3 cases du type Speed (La structure déclaré juste au dessus) et il assigne les valeurs du tableau (min:30, max 45 pour la premiere case, ...).

                Ensuite, le mot clé struct devant Speed permet de dire que le type Speed est une structure.
                Pour éviter d'utiliser ce mot clé tu pourrai rajouter une ligne à ta déclaration de structure comme ceci:

                struct Speed
                {
                    int low;
                    int hight;
                };
                 
                typedef struct Speed t_Speed;
                
                int main(void)
                {
                ....
                   t_Speed speed_limit[3]={{30,45},{60,90},{90,120}};
                ....
                }

                En rajoutant le typedef tu n'as plus de mettre struct quand tu déclare une variable du type de ta structure. 

                -
                Edité par Linnea0 25 août 2016 à 8:26:31

                • Partager sur Facebook
                • Partager sur Twitter

                question sur un exercice

                × 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