Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
1 / 1 / 0
Регистрация: 21.10.2020
Сообщений: 29

Создайте класс для реализации на основе следующего каркаса

07.11.2020, 14:24. Показов 2052. Ответов 9

Студворк — интернет-сервис помощи студентам
Требуется закодировать сообщение в виде строки с помощью операции «исключающее или» применяемой к каждому символу строки и символу с.
Создайте класс для реализации на основе следующего каркаса:
C#
1
2
3
4
5
6
7
8
9
10
11
class XOR
    {
         public char c;
        public string code(string s)
        {
            string o=;
            for ()           
                o +=;
            return o;
        }       
    }
Указание. Никаких других строк не добавлять.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.11.2020, 14:24
Ответы с готовыми решениями:

Создайте класс на основе данной программы
Создайте класс на основе данной программы #include <iostream> using namespace std; int main ( ) { const int n=10; int* ap;...

Создайте программу для вычисления следующего выражения
Здравствуйте. Нужно помочь с решением пары задач на С++. Трудности в том, что тема не понятна. Мы не проходили многое еще. Помогите...

Посоветуйте среду программирования на PHP для реализации следующего
Здравствуйте! Посоветуйте среду программирования на PHP, который позволит: 1. Создавать интерфейс программы (кнопки, картинки и...

9
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
07.11.2020, 16:34
Цитата Сообщение от AMSseven Посмотреть сообщение
с помощью операции «исключающее или» применяемой к каждому символу строки и символу с.
C#
4
5
        public string code(string s)
            => string.Concat(s.Select(ch => (char)(ch ^ c)));
Добавлено через 2 минуты
Можно и так, но такой код плохой - он порождает много мусора
C#
4
5
6
7
8
9
10
        public string code(string s)
        {
            string o="";
            for (int i = 0; i <s.Length; i++)           
                o +=(char) s[i] ^ c;
            return o;
        }
1
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
07.11.2020, 20:28
Элд Хасп, ну раз пример плохой зачем его приводить?
C#
1
2
3
4
5
6
7
        public string code(string s,char c)
        {
            var o = new StringBuilder(s.Length);
            for (int i = 0; i < s.Length; i++)
                o.Append((char)s[i] ^ c);
            return o.ToString();
        }
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
07.11.2020, 20:36
Цитата Сообщение от Diamante Посмотреть сообщение
ну раз пример плохой зачем его приводить?
По тому, что по заданию Создайте класс для реализации на основе следующего каркаса.

Я не знаю насколько допустимо отклонение от этого "каркаса".

Добавлено через 42 секунды
Если допустимо, то тогда лучше, вообще, с LINQ.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,898
Записей в блоге: 1
07.11.2020, 20:46
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Можно и так, но такой код плохой - он порождает много мусора
И еще он неверный.
Закодировать сообщение в виде строки с помощью операции «исключающее или» применяемой к каждому символу строки
1
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
07.11.2020, 20:49
Элд Хасп, ну так у меня отклонений от каркаса то и нету, разве что замена 100500 конкатенаций, порождающей горы мусора, на билдер, для таких целей и придуманного...
это была, ни в коем случае, не претензия, если уж так учат студентов, так пусть хоть тут будут примеры более правильного подхода к используемым инструментам
всем бобра
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
07.11.2020, 20:58
Цитата Сообщение от Diamante Посмотреть сообщение
ну так у меня отклонений от каркаса то и нету
o += …; -> o.Append((char)s[i] ^ c);
return o; -> return o.ToString();

Добавлено через 3 минуты
Цитата Сообщение от OwenGlendower Посмотреть сообщение
И еще он неверный.
С учётом управляющих символов и символов разной длины, вряд ли здесь, возможно, симметричное кодирование/декодирование.
Но специально над этим не думал - может ошибаюсь.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,898
Записей в блоге: 1
07.11.2020, 21:08
Цитата Сообщение от Элд Хасп Посмотреть сообщение
С учётом управляющих символов и символов разной длины, вряд ли здесь, возможно, симметричное кодирование/декодирование.
В общем случае да, но это учебное задание и здесь симметрия точно ожидается и достижима.
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
07.11.2020, 21:19
Цитата Сообщение от OwenGlendower Посмотреть сообщение
и достижима.
Вы, наверное, за ошибку привидения?
C#
8
                o +=(char) (s[i] ^ c);
Добавлено через 27 секунд
Писал здесь - моя невнимательность.
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,898
Записей в блоге: 1
07.11.2020, 21:20
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Вы, наверное, за ошибку привидения?
Да, за неё
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.11.2020, 21:20
Помогаю со студенческими работами здесь

Базовый класс Complex и производный класс для реализации квадратных матриц
1) Создайте базовый класс Complex (комплексное число) для реализации комплексных чисел в алгебраической форме и основных операций с ними:...

С++ класс (создайте класс с именем Complex для выполнения в арифмитических операий с комплексными числами))
Кто сможет помогите пожалуйста! (Класс Complex). Создайте класс с именем Complex для выполнения в арифмитических операий с...

Создайте класс RightTriangle и Создайте производный класс Rectangle
Создайте класс RightTriangle (Прямоугольный треугольник), задаваемый катетами и опишите механизм вычисления его периметра. Создайте...

Создайте иерархию классов и пропишите ключевые методы для компьютерной игры (без реализации функционала)
Создайте иерархию классов и пропишите ключевые методы для компьютерной игры (без реализации функционала). Суть игры: 1. Игрок может...

Составить программу для вычисления заданного математического выражения на основе реализации указанной функции
Составить программу для вычисления заданного математического выражения на основе реализации указанной функции. Выражение: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru