Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Виклик: Методи | Структури Та Перелічення
C# Понад Базовий Рівень

bookВиклик: Методи

У коді міститься структура з назвою Cypher, яка фактично представляє собою різновид шифру Цезаря.

Note
Примітка

Шифр Цезаря — це метод кодування тексту, який робить повідомлення нечитаємими шляхом зсуву кожної літери на фіксовану кількість позицій в алфавіті або ASCII-символах. Наприклад, якщо зсунути кожен символ у "HelloWorld" на 7 позицій згідно з ASCII-таблицею, отримаємо "Olssv^vysk." Це своєрідний секретний код, у якому кожна літера замінюється іншою, що знаходиться на певній кількості кроків далі. Це простий спосіб приховати повідомлення або текст.

Ви можете ознайомитися з шифром Цезаря на його сторінці Вікіпедії, однак це не є обов'язковим для виконання цього практичного завдання.

Прочитайте код і заповніть пропуски, щоб переконатися, що він працює правильно. Ось як має виглядати фінальна програма:

  1. Метод setText перетворює переданий текст у закодований текст і зберігає його у полі text. Цей метод приймає один аргумент типу string з назвою text, і метод не повертає жодного значення;
  2. rawText повертає вміст поля text. Цей метод не приймає аргументів;
  3. decodedText декодує вміст поля text і повертає результат. Цей метод також не приймає аргументів.
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. Рекомендується використовувати ключове слово this щоразу, коли ви посилаєтеся на поля структури.
  2. Використовуйте ключове слово void як тип повернення, якщо метод не повертає жодного значення.
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()); } }
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 7

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Awesome!

Completion rate improved to 2.04

bookВиклик: Методи

Свайпніть щоб показати меню

У коді міститься структура з назвою Cypher, яка фактично представляє собою різновид шифру Цезаря.

Note
Примітка

Шифр Цезаря — це метод кодування тексту, який робить повідомлення нечитаємими шляхом зсуву кожної літери на фіксовану кількість позицій в алфавіті або ASCII-символах. Наприклад, якщо зсунути кожен символ у "HelloWorld" на 7 позицій згідно з ASCII-таблицею, отримаємо "Olssv^vysk." Це своєрідний секретний код, у якому кожна літера замінюється іншою, що знаходиться на певній кількості кроків далі. Це простий спосіб приховати повідомлення або текст.

Ви можете ознайомитися з шифром Цезаря на його сторінці Вікіпедії, однак це не є обов'язковим для виконання цього практичного завдання.

Прочитайте код і заповніть пропуски, щоб переконатися, що він працює правильно. Ось як має виглядати фінальна програма:

  1. Метод setText перетворює переданий текст у закодований текст і зберігає його у полі text. Цей метод приймає один аргумент типу string з назвою text, і метод не повертає жодного значення;
  2. rawText повертає вміст поля text. Цей метод не приймає аргументів;
  3. decodedText декодує вміст поля text і повертає результат. Цей метод також не приймає аргументів.
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. Рекомендується використовувати ключове слово this щоразу, коли ви посилаєтеся на поля структури.
  2. Використовуйте ключове слово void як тип повернення, якщо метод не повертає жодного значення.
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()); } }
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 7
some-alt