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

Une appréciation pour mon algorithme?

iCaravanier
iCaravanier
Niveau 10
17 novembre 2010 à 11:03:20

Salut :)
Alors je commence par dire que je débute (vraiment), donc merci d'éviter les insultes ou autres si j'ai fait une connerie :noel:

Voila donc vu que j'apprends l'algo sur un site pour me lancer ensuite (dans quelques semaines/mois) dans la prog, j'ai un exo ou on me demande de créer un algorithme (en pseudo-code) qui crypte une phrase avec la clé de Vigenère (ça demande un mot-clé, puis une phrase à crypter puis ça crypte) :(

Donc je vous c/c ce que j'ai fait et si vous voulez bien, vous me dites si y a des erreurs, ou des modifications à apporter merci :)
_________________________________
Variables i , j , posLet , posCle , posNouv Entiers
Variables cle , mot , alpha , let , letAl , letCle Caractères
Début
alpha <- "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Ecrire "Entrez le mot-clé"
Lire cle
Ecrire "Entrez le mot à coder"
Lire mot
Pour i <- 1 à len(mot)
Si mid(mot , i , 1) <> " " Alors
Let <- Mid(mot , i , 1)
posLet <- Trouve(alpha , let)
Si i < len(cle) Alors
letCle <- Mid(cle , i , 1)
posCle <- Trouve(alpha , letCle)
posNouv <- posLet + posCle
Sinon
j <- i mod len(cle)
Si j = 0 Alors
j <- len(cle)
FinSi
letCle <- Mid(cle , j , 1)
posCle <- Trouve(alpha , letCle)
posNouv <- posLet + posCle
FinSi
Si posNouv > 26 Alors
posNouv <- posNouv - 26
FinSi
letAl <- Mid(alpha , posNouv , 1)
Ecrire letAl
FinSi
i Suivant
Fin

Merci d'avance :noel:

String[]args
String[]args
Niveau 23
17 novembre 2010 à 17:40:09

Là est tout l'intérêt d'apprendre un langage de programmation au fur et à mesure de ton avance en algorithmique : tu vois directement si ça marche ou pas. :noel:

Ikki_2504
Ikki_2504
Niveau 11
17 novembre 2010 à 22:47:11

Ca serait peut être plus lisible sur pastebin :(

iCaravanier
iCaravanier
Niveau 10
18 novembre 2010 à 08:44:42

Voila
http://pastebin.com/8VGz0sMB

:noel:

chris_27
chris_27
Niveau 10
18 novembre 2010 à 15:56:19

Quelques commentaires après un coup d'œil rapide :

1. Ça ressemble bel et bien à un algorithme (je ne peux pas dire ça de tous mes L1 en td d'algorithmique).

2. Il est de bon goût de dire au début ce que l'algorithme va retourner et ce qu'il va faire.
Tu l'as très bien fait dans ton premier message, mais ça mérite d'être écrit dans l'algorithme.

3. Que fait ce mid(.) ligne 10 exactement ? N'étant pas bien sûr de la réponse, je ne me suis pas intéressé à la question de savoir si l'algorithme calculait juste.

4. Ligne 10 toujours : « <> " " » :d) tu es sur de vouloir faire une comparaison entre chaînes de caractères ici ? Le but n'est-il pas ici de voir si un caractère est différent d'un espace, ce qu'on écrirait plutôt : « <> ' ' » (et moi j'écrirais même un vrai symbole différent … que je ne donne pas ici car JV.com ne gère pas l'unicode :-(( ).

5. Ligne 11 : « Let », « Mid » :d) c'était « let » et « mid » avant. Attention à la casse (différence entre minuscule et majuscule).

6. Ligne 32 : elle prête à confusion je trouve. Met plutôt un « FinPour » ici.
Par ailleurs, j'aurais écrire à la ligne 9 « Pour i allant de 1 à len(mot) » (sous entendu « … par pas de 1 »). L'incrément du i est inclus dans le « Pour » de toute façon.

7. Ligne 26 à 28 : éventuellement, tu peux éviter ceci en ajoutant un « mod 26 » à la fin de la ligne 24. Mais c'est correct tel que c'est là.

En tout cas, pour un début, cela a une très bonne forme. :ok:

iCaravanier
iCaravanier
Niveau 10
19 novembre 2010 à 23:43:28

Merci Chris27 :noel:
Je vais corriger ça :oui:

canal-satelite
canal-satelite
Niveau 10
07 juillet 2013 à 18:06:53

C'est quoi ton site pour apprendre l'algo ? j'en cherche un qui m'apprendrais depuis le début :oui:

Darryone
Darryone
Niveau 10
07 juillet 2013 à 21:23:57

Tu peux utiliser http://www.france-ioi.org/ pour apprendre l'algorithmique en même temps que les bases d'un langage de programmation. L’intérêt du site c'est qu'il est très pédagogue et que pour progresser tu dois faire des exercices automatiquement corrigés par le site (ton code est compilé et testé par leur serveur)

Pseudo supprimé
Pseudo supprimé 07 juillet 2013 à 23:26:37

"(et moi j'écrirais même un vrai symbole différent … que je ne donne pas ici car JV.com ne gère pas l'unicode ). "

2010, jerry du UP :noel:

canal-satelite
canal-satelite
Niveau 10
08 juillet 2013 à 01:18:48

oui je n'avais pas fait attention à la date, j'ai fait une recherche :hap:

En tout cas sa 'a aidé puisque j'ai eut une réponse à la question et je suis en possession d'un bon site. Merci Darryone :)

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