Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Défi : Méthodes | Structures et Énumérateurs
C# Au-Delà des Bases

bookDéfi : Méthodes

Le code contient une structure appelée Cypher qui représente essentiellement une forme de chiffrement de César.

Note
Note

Le chiffrement de César est une méthode de codage de texte qui rend les messages illisibles en décalant chaque lettre d'un nombre fixe de positions dans l'alphabet ou parmi les caractères ASCII. Par exemple, décaler chaque caractère de "HelloWorld" de 7 positions selon la table ASCII donne "Olssv^vysk." Il s'agit d'un code secret où chaque lettre est remplacée par une autre lettre située à un certain nombre de positions. On peut le considérer comme une méthode simple pour masquer des messages ou du texte.

Vous pouvez lire à propos du chiffrement de César sur sa page Wikipédia, cependant, cela n'est pas nécessaire pour résoudre cet exercice pratique.

Lire le code et compléter les espaces vides afin d'assurer son bon fonctionnement. Voici le comportement attendu du programme final :

  1. La méthode setText convertit le texte passé en texte encodé et le stocke dans le champ text. Cette méthode prend un argument string nommé text, et la méthode ne retourne aucune valeur ;
  2. rawText retourne le contenu du champ text. Cette méthode ne prend aucun argument ;
  3. decodedText décode le contenu du champ text et retourne le résultat. Cette méthode ne prend également aucun argument.
index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738394041424344
using System; struct Cypher { public string text; ___ { string encodedText = ""; foreach(char chr in text) encodedText += (char) (chr + 7); ___ = encodedText; } public string rawText() { ___ } ___ { string decodedText = ""; foreach (char chr in this.text) decodedText += (char)(chr - 7); ___ } } class ConsoleApp { static void Main(string[] args) { Cypher text1 = new Cypher(); text1.setText("This is an example sentence."); Console.WriteLine(text1.rawText()); Console.WriteLine(text1.decodedText()); } }
  1. Il est recommandé d'utiliser le mot-clé this chaque fois que vous faites référence aux champs de la structure.
  2. Le mot-clé void s'utilise comme valeur de retour lorsqu'une méthode ne retourne aucune valeur.
index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738394041424344
using System; struct Cypher { public string text; public void setText(string text) { string encodedText = ""; foreach (char chr in text) encodedText += (char)(chr + 7); this.text = encodedText; } public string rawText() { return this.text; } public string decodedText() { string decodedText = ""; foreach (char chr in this.text) decodedText += (char)(chr - 7); return decodedText; } } class ConsoleApp { static void Main(string[] args) { Cypher text1 = new Cypher(); text1.setText("This is an example sentence."); Console.WriteLine(text1.rawText()); Console.WriteLine(text1.decodedText()); } }
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 7

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you show me the code that needs to be filled in?

What are the blanks that need to be completed in the code?

Can you explain how the encoding and decoding should work in this context?

Awesome!

Completion rate improved to 2.04

bookDéfi : Méthodes

Glissez pour afficher le menu

Le code contient une structure appelée Cypher qui représente essentiellement une forme de chiffrement de César.

Note
Note

Le chiffrement de César est une méthode de codage de texte qui rend les messages illisibles en décalant chaque lettre d'un nombre fixe de positions dans l'alphabet ou parmi les caractères ASCII. Par exemple, décaler chaque caractère de "HelloWorld" de 7 positions selon la table ASCII donne "Olssv^vysk." Il s'agit d'un code secret où chaque lettre est remplacée par une autre lettre située à un certain nombre de positions. On peut le considérer comme une méthode simple pour masquer des messages ou du texte.

Vous pouvez lire à propos du chiffrement de César sur sa page Wikipédia, cependant, cela n'est pas nécessaire pour résoudre cet exercice pratique.

Lire le code et compléter les espaces vides afin d'assurer son bon fonctionnement. Voici le comportement attendu du programme final :

  1. La méthode setText convertit le texte passé en texte encodé et le stocke dans le champ text. Cette méthode prend un argument string nommé text, et la méthode ne retourne aucune valeur ;
  2. rawText retourne le contenu du champ text. Cette méthode ne prend aucun argument ;
  3. decodedText décode le contenu du champ text et retourne le résultat. Cette méthode ne prend également aucun argument.
index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738394041424344
using System; struct Cypher { public string text; ___ { string encodedText = ""; foreach(char chr in text) encodedText += (char) (chr + 7); ___ = encodedText; } public string rawText() { ___ } ___ { string decodedText = ""; foreach (char chr in this.text) decodedText += (char)(chr - 7); ___ } } class ConsoleApp { static void Main(string[] args) { Cypher text1 = new Cypher(); text1.setText("This is an example sentence."); Console.WriteLine(text1.rawText()); Console.WriteLine(text1.decodedText()); } }
  1. Il est recommandé d'utiliser le mot-clé this chaque fois que vous faites référence aux champs de la structure.
  2. Le mot-clé void s'utilise comme valeur de retour lorsqu'une méthode ne retourne aucune valeur.
index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738394041424344
using System; struct Cypher { public string text; public void setText(string text) { string encodedText = ""; foreach (char chr in text) encodedText += (char)(chr + 7); this.text = encodedText; } public string rawText() { return this.text; } public string decodedText() { string decodedText = ""; foreach (char chr in this.text) decodedText += (char)(chr - 7); return decodedText; } } class ConsoleApp { static void Main(string[] args) { Cypher text1 = new Cypher(); text1.setText("This is an example sentence."); Console.WriteLine(text1.rawText()); Console.WriteLine(text1.decodedText()); } }
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 7
some-alt