PBYetml / PROG_SLO1_C_PRJ2

Resultat des Etudiants
HomePage
0 stars 3 forks source link

KAN => bugs/remarques => fichier fonctionPontDiv.c -> InitInfoPontDiviseur #13

Open PBYetml opened 1 year ago

PBYetml commented 1 year ago

voici un listing des points à améliorer/corriger dans le fichier fonctionPontDiv.c

=> voir fichier vidéo lien vidéo

Kevin-AllemannETML-ES commented 1 year ago
  1. Effectivement la plupart était inutilisé, j'ai laissé le stdio pour le printf, scanf..
  2. J'ai modifié les paramètres de la fonction pour concorder le CDC avec la structure
  3. J'ai déplacé la variable le plus haut possible dans la fonction
  4. La déclaration de la structure était inutile à ce point, il passe par les paramètres de la fonction
  5. Les tests et conditions sont changés et coordonne au CDC
  6. Modifier avec l'instruction ternaire et écriture correcte de la structure
PBYetml commented 1 year ago
  1. pas de référence à votre nouveau code => qu'est-ce que cela donne ? => soit exemple de code à implémenté ici soit un lien sur votre code modifier
  2. même remarque que ci-dessus
  3. même remarque que ci-dessus
  4. même remarque que ci-dessus
  5. même remarques que ci-dessus
  6. même remarque que ci-dessus + qu'est une instruction ternaire pour vous
Kevin-AllemannETML-ES commented 1 year ago
  1. Déplacement en dessous des librairies standart https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#L22-L23

  2. Incompréhension au premier abord, maintenant que le fonctionnement des structures est appris c'est modifié https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#L26

  3. J'ai voulu trop réduire le scope, pratique par conséquent fausse, voici où les disposés: https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#L26-L29

  4. Plus besoin de déclarer la structure comme fait auparavant, étant donné qu'il est dans les paramètres de la fonction. Et qu'il est déclarer dans le main. https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#LL26C1-L26C1 https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/mainProjet1_S2.c#L43

  5. Test et condition fait par une instruction ternaire: https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#L35-L37

  6. Mise à jour de la variable de la structure: https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/48831b3e557519f975ed78c94f6c9bdecb8151d8/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#LL36C10-L36C10

PBYetml commented 1 year ago

point 5. qu'est-ce qu'une instruction ternaire ?

Kevin-AllemannETML-ES commented 1 year ago
  1. Voici ce que j'entends pour une instruction ternaire, il permet de réduire le code en remplaçant une simple condition "if...else..." condition ? exprSiVrai :exprSiFaux` Une source: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Operators/Conditional_operator
PBYetml commented 1 year ago

Attention : le lien que vous proposez est pour le langage JavaScript qui permet d'avoir des interfaces web... trouvez-moi un lien d'explication pour le C ;) => Je n'ai pas la réponse, mais pour savoir si cela réduit du code, sur quel type de fichier vous devez vous baser pour répondre à l'affirmation que vous indiquer dans votre réponse : https://github.com/PBYetml/PROG_SLO1_C_PRJ2/issues/13#issuecomment-1556688049

Kevin-AllemannETML-ES commented 1 year ago
  1. Sur le site en c : https://www.freecodecamp.org/news/c-ternary-operator/ Le premier bout de code se fait avec les instructions "if" &"else" avec l'indentation normal de ceux qui comprennent plusieurs lignes

Cependant avec le l'instruction ternaire (le bout de code suivant sur le site) condition ? value_if_true : value_if_false on remarque qu'on passe de 8 lignes au total à 3 lignes de code.

Voici un exemple dans mon code: https://github.com/PBYetml/PROG_SLO1_C_PRJ2/blob/a8702ff710212b7c1160a5ffd0604e0fcce2d54d/KAN/Project1_S2_Allemann/fonctionsPontDiv.c#L35-L37

Autre: Je ne comprends pas ce que vous entendez par "sur quel type de fichier vous devez vous baser..." https://github.com/PBYetml/PROG_SLO1_C_PRJ2/issues/13#issuecomment-1558786788