CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Aide exercice pseudo code

Backless
Backless
Niveau 6
28 octobre 2013 à 13:35:11

Salut,

J'ai un exercice à faire pour les vacances de la Toussaint. Je dois écrire un pseudo code pour afficher la somme des 30 premiers nombres (1, 2, 3, 4,...) et j'dois utiliser une boucle.
Notre prof nous expliqué rapidement en fin d'heure deux boucles différentes le "pour" et le "tant que" à mon avis je dois utiliser la "pou" ça fait une demi heure que je planche dessus et pas moyen de trouver une solution !
J'suis convaincu que le code est super court en plus ! Peut être que j'ai mal noté un détail ?

Merci de votre aide !

rerse
rerse
Niveau 7
28 octobre 2013 à 13:59:01

i = 1
a = 0
pour i < 30

i + (i+1) + a = a

i+2=i
fin de boucle

afficher a

rerse
rerse
Niveau 7
28 octobre 2013 à 14:00:35

tant que i < 30* pardon

Bunyan
Bunyan
Niveau 17
28 octobre 2013 à 14:18:13

@rerse : Ta solution est... étrange, mais à l'air d'être fonctionnelle (outre le fait que les assignations sont inversées).

Le mieux serait quand même de ne pas lui faire son travail mais de l'aider à le faire tout de même.

@backless : où bloques-tu ? Qu'as-tu déjà fait ? Quel est ton problème ? :)

Backless
Backless
Niveau 6
28 octobre 2013 à 14:43:16

Eh bien. J'ai compris qu'il n'y avait pas besoin de déclarer de variables, j'ai du mal avec l'application des boucles, j'ai compris à quoi elles servent mais pas comment s'en servir !

Bunyan
Bunyan
Niveau 17
28 octobre 2013 à 15:03:15

Tu as trois types de boucles.

La boucle "for" (pour), la boucle "while" (tant que) et la boucle "do ... while" (faire ... tant que).

La boucle "pour" est principalement utilisée lorsque que tu connais le nombre d'itérations que tu vas faire (que ce soit une constante ou un calcul). L'illustration typique est ton exercice.
Elle est faite pour réaliser 0+ opérations.

La boucle "tant que" est faite pour réaliser un parcours dépendant d'une condition. L'illustration typique est une recherche d'un élément dans un ensemble. Une fois que tu l'as trouvé, continuer à parcourir l'ensemble est inutile.
Elle est faite pour réaliser 0+ opérations.

La boucle "faire ... tant que" répond au même besoin que la boucle "faire", mais lorsque l'on est sûr que l'on fera au moins un passage. L'illustration typique est un menu utilisateur en console.
Elle est faite pour réaliser 1+ opérations.

Pour ton exercice, tu dois faire un parcours fini, avec une somme.
De quoi as-tu besoin pour réaliser ça ?

Backless
Backless
Niveau 6
28 octobre 2013 à 15:06:48

Je te montre ce que j'ai réalisé avant de poster mon deuxième message :
variables :
a: réel

(i=1)

Début:
Pour i<30 de i à 30 (pas de 1) faire
a+i
finpour

Afficher a

(Merci pour ton aide au passage :) )

J'ai besoin d'effectuer 30 additions. Puis d'afficher ce résultat !

Backless
Backless
Niveau 6
28 octobre 2013 à 15:09:43

Il y a une erreur dans ce que je te présente mais j'ai du mal à la desceller !

Bunyan
Bunyan
Niveau 17
28 octobre 2013 à 15:27:35

Si je lis ton algo, voici ce que ça donne :

J'ai une variable "a", qui est un Réel.
J'ai une variable "i" fixée à 1.

J'ai une boucle allant de i à 30 et SI i est inférieur à 30, et i s'incrémente de 1
Je fais la somme de "a et i"

J'affiche "a"

Tu as 2 problèmes : le premier est la condition de ta boucle.
"i < 30" est correct, et va avec la déclaration de "i" et le pas déclaré.
En pseudo-code, "i à 30" s'utilise, mais n'est pas adapté dans ton cas. Il est adapté quand tu sais que tu auras un parcours à faire, mais que tu ne sais pas quelle est la borne de début (généralement obtenue par calcul).
Ici, ce serait plutôt "Pour 1 à 30" qu'il faudrait mettre.
De plus, "i < 30" et "Pour 1 à 30" sont redondants, ils expriment exactement la même chose.

Enfin, pour "a", tu afficheras toujours 0.0 en fin (si l'on part du principe que les Réel sont initialisés à 0.0). Tu fais bien la somme, mais tu ne mets pas à jour la valeur de "a".

Backless
Backless
Niveau 6
28 octobre 2013 à 15:38:49

C'est la mise à jour de a qui me pose problème depuis le début.
J'ai un peu de mal à me remettre dans le bain, en 1 mois et demi on a vu du pseudo, du SQL, du php, du html, on a vu des schémas, des bases de données, etc...

J'ai un peu de mal à m'y remettre après une semaine de vacances !

Bunyan
Bunyan
Niveau 17
28 octobre 2013 à 16:08:57

Simplement a <= a + i

Tu veux octroyer une nouvelle valeur à "a", il suffit simplement de l'assigner :)

Backless
Backless
Niveau 6
28 octobre 2013 à 16:13:23

Merci beaucoup ! Je vais passer à mes devoirs de php, si j'ai un problème je vous ferai signe !

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment