Utfordring: Metoder
Koden inneholder en struct kalt Cypher
som i hovedsak representerer en type Caesar-kryptering.
Caesar-kryptering er en metode for tekstkoding som gjør meldinger uleselige ved å flytte hver bokstav et fast antall posisjoner i alfabetet eller ASCII-tegn. For eksempel, hvis hver bokstav i "HelloWorld" flyttes 7 posisjoner i henhold til ASCII-tabellen, får man "Olssv^vysk." Det er som en hemmelig kode der hver bokstav erstattes med en annen bokstav et visst antall steg unna. Dette kan betraktes som en enkel måte å skjule meldinger eller tekst på.
Du kan lese om Caesar-kryptering på dens Wikipedia-side, men det er ikke nødvendig for å løse denne oppgaven.
Les koden og fyll inn de tomme feltene for å sikre at den fungerer riktig. Slik skal det endelige programmet være:
setText
-metoden konverterer den sendte teksten til kodet tekst og lagrer den i feltettext
. Denne metoden tar ettstring
-argument kalttext
, og metoden returnerer ingen verdi;rawText
returnerer innholdet i feltettext
. Denne metoden tar ingen argumenter;decodedText
dekoder innholdet i feltettext
og returnerer resultatet. Denne metoden tar heller ingen argumenter.
index.cs
1234567891011121314151617181920212223242526272829303132333435363738394041424344using 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()); } }
- Det er god praksis å bruke
this
-nøkkelordet når du refererer til feltene i structen. - Du bruker nøkkelordet
void
som returverdi dersom metoden ikke returnerer noen verdi.
index.cs
1234567891011121314151617181920212223242526272829303132333435363738394041424344using 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()); } }
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 2.04
Utfordring: Metoder
Sveip for å vise menyen
Koden inneholder en struct kalt Cypher
som i hovedsak representerer en type Caesar-kryptering.
Caesar-kryptering er en metode for tekstkoding som gjør meldinger uleselige ved å flytte hver bokstav et fast antall posisjoner i alfabetet eller ASCII-tegn. For eksempel, hvis hver bokstav i "HelloWorld" flyttes 7 posisjoner i henhold til ASCII-tabellen, får man "Olssv^vysk." Det er som en hemmelig kode der hver bokstav erstattes med en annen bokstav et visst antall steg unna. Dette kan betraktes som en enkel måte å skjule meldinger eller tekst på.
Du kan lese om Caesar-kryptering på dens Wikipedia-side, men det er ikke nødvendig for å løse denne oppgaven.
Les koden og fyll inn de tomme feltene for å sikre at den fungerer riktig. Slik skal det endelige programmet være:
setText
-metoden konverterer den sendte teksten til kodet tekst og lagrer den i feltettext
. Denne metoden tar ettstring
-argument kalttext
, og metoden returnerer ingen verdi;rawText
returnerer innholdet i feltettext
. Denne metoden tar ingen argumenter;decodedText
dekoder innholdet i feltettext
og returnerer resultatet. Denne metoden tar heller ingen argumenter.
index.cs
1234567891011121314151617181920212223242526272829303132333435363738394041424344using 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()); } }
- Det er god praksis å bruke
this
-nøkkelordet når du refererer til feltene i structen. - Du bruker nøkkelordet
void
som returverdi dersom metoden ikke returnerer noen verdi.
index.cs
1234567891011121314151617181920212223242526272829303132333435363738394041424344using 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()); } }
Takk for tilbakemeldingene dine!