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

Комментарии к строкам кода

24.05.2018, 00:01. Показов 928. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток уважаемые форумчане, решил учить С#, ну мне один человек подсказал что лучше всего учиться разбирая код который был уже написан, ну и подкинули мне вот такой вот код, мозг уже сломал, разобрал только малые фрагменты кода а целая картина ни как не вяжется. Мог бы кто данный код снабдить комментариями, желательно построчно.
Заранее спасибо.
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
    class Program
    {
        private static Dictionary<string, string> Data = new Dictionary<string, string>();
        static void Main(string[] args)
        {
            if (args.Length < 1)
            {
                Console.WriteLine("Перекинь txt файл со строками на exe программы");
            }
            if (File.Exists(args[0]))
            {
                StreamReader sr = new StreamReader(args[0]);
                while (!sr.EndOfStream)
                {
                    string line = sr.ReadLine();
                    if (line.Length < 3)
                        continue;
                    var split = line.Split('=');
                    if (split[0].Contains("$"))
                    {
                        string r1 = split[0].Substring(split[0].IndexOf("$"), 2);
                        string r2 = split[1].Substring(split[1].IndexOf("$"), 2);
                        for (int i = 0; i < 512; ++i)
                        {
                            Data.Add(split[0].Replace(r1, $"${i}"), split[1].Replace(r2, $"${i}"));
                        }
                    }
                    else
                    {
                        if (!Data.ContainsKey(split[0]))
                            Data.Add(split[0], split[1]);
                    }
                }
                sr.Close();
                Console.WriteLine($"Кол-во фраз: {Data.Count}");
                string[] files = Directory.GetFiles(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "input"));
                foreach (string file in files)
                {
                    string path = file.Replace("input", "output");
                    sr = new StreamReader(file);
                    StreamWriter sw = new StreamWriter(path);
                    int.TryParse(sr.ReadLine(), out int count);
                    sw.WriteLine(count);
                    sw.WriteLine(sr.ReadLine());
                    for (int i = 0; i < count; ++i)
                    {
                        sw.WriteLine(sr.ReadLine());
                        string name = sr.ReadLine();
                        string n = name.Substring(0, 6);
                        sw.WriteLine(name.Replace(n, Data.ContainsKey(n) ? Data[n] : n));
                        sw.WriteLine(sr.ReadLine());
                        string fields = sr.ReadLine();
                        var split = fields.Split(';');
                        foreach (string s in split)
                        {
                            fields = fields.Replace($";{s};", $";{(Data.ContainsKey(s) ? Data[s] : s)};");
                            if (fields.EndsWith(s))
                                fields = fields.Replace($";{s}", $";{(Data.ContainsKey(s) ? Data[s] : s)}");
                        }
                        sw.WriteLine(fields);
                        sw.WriteLine(sr.ReadLine());
                    }                    
                    sw.Close();
                    sr.Close();                    
                }
            }
        }
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.05.2018, 00:01
Ответы с готовыми решениями:

Добавить комментарии к строкам кода
Можете пожалуйста добавить комментарии к строкам кода :cry: static void Main() { ...

Анализ кода, комментарии
Коллеги, у меня следующий вопрос: Существует потребность в инструменте, который позволяет провести анализ существующего кода и вывести...

Нужны комментарии к строчке кода
array = array.OrderBy(x =&gt; random.Next()).ToArray(); Как это работает

4
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
24.05.2018, 01:18
ну попроси у того же источника валидный файл, и пройдись пошагово, и посмотришь и, возможно, часть вопросов отпадет!
но если
Цитата Сообщение от enerty Посмотреть сообщение
решил учить С#
тоЛитература по C# для начинающих и не только ,а если нет
Цитата Сообщение от enerty Посмотреть сообщение
решил учить С#
лишь ширма, под которой прячется откровенное нежелание что-либо изучать, и это,лишь попытка пустить пыль в глаза и просить готовые решения, то ты промахнулся
0
2 / 2 / 0
Регистрация: 23.02.2018
Сообщений: 15
24.05.2018, 02:21  [ТС]
Цитата Сообщение от Diamante Посмотреть сообщение
и это,лишь попытка пустить пыль в глаза и просить готовые решения, то ты промахнулся
Кому пыль пускать в глаза, тебе? я тебя знать не знаю, зато твое отношение весьма понятно: "Какашками закидаю, обвиню во всех смертных грехах и ни словом не помогу", дно человек.
В книгах я нашел не все ответы на вопросы, вот например такой код: if (File.Exists(args[0])), я понимаю как работает: if (условие) инструкция; , понимаю что дополнительные округлые скобки задают приоритетность: if (проверка наличия файла()), но что такое (args[0]) и вот таких моментов вроде бы как мелочных но их много и я их не понимаю.

Добавлено через 9 минут
Да и какое готовое решение я просил? я выложил уже готовое решение, я попросил помочь с ним разобраться,
а в место того что бы разъяснить пару строк тебя говном закидывают.
0
 Аватар для Shogun31337
557 / 534 / 225
Регистрация: 02.11.2016
Сообщений: 1,538
24.05.2018, 04:54
enerty, полегче! Вас тут, насколько я вижу, никто не оскорблял! Так относитесь и Вы с уважением к другим участникам!!!

Цитата Сообщение от enerty Посмотреть сообщение
я выложил уже готовое решение, я попросил помочь с ним разобраться
Решение, в котором ничего не понимаешь, как велосипед, на котором ездить не умеешь - толку то от него?

Цитата Сообщение от enerty Посмотреть сообщение
В книгах я нашел не все ответы на вопросы
Когда задаете вопрос на форуме, старайтесь его конкретизировать. Тем самым Вы повысите вероятность получения ответа и сэкономите время тому, кто решил помочь (зачем он будет расписывать то, что Вы и так знаете?). Ну и, вдобавок, не будете походить на ленивых балбесов, у которых конецсеместровое обострение сейчас.

Цитата Сообщение от enerty Посмотреть сообщение
тебя говном закидывают
Ну, во-первых, никто говном не закидывал! Diamante вполне адекватно объяснил, что халявы не будет. Форум нужен для получения помощи, а не для того, чтобы кто то делал чужую работу. А, во-вторых, Ваше первое сообщение как раз наводит на мысль, что Вы скопировали откуда то код и теперь хотите, чтобы его за Вас прокомментировали нахаляву.

А теперь по делу...

Цитата Сообщение от enerty Посмотреть сообщение
что такое (args[0])
args - аргументы, которые передаются в программу при старте. args[0], соответственно, первый аргумент из массива. Т.е. программа должна при старте принимать путь к файлу в качестве аргумента: YourProgram.exe C:\Path\To\TextFile.txt.
1
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
24.05.2018, 06:43
Цитата Сообщение от enerty Посмотреть сообщение
понимаю что дополнительные округлые скобки задают приоритетность
Что-то не то вы тут напонимали
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.05.2018, 06:43
Помогаю со студенческими работами здесь

Написать комментарии к строкам кода
Срочно нужно разобрать код. Вот задание: &quot;Строка состоит из символов, среди которых, в частности, могут быть цифры. Последовательность цифр...

Комментарии к строкам
Кому не сложно) Напишите комментарий к строкам) Эта программа переводит из одной системы счисления в другую! #include...

Комментарии к строкам
#include &lt;iostream.h&gt; #include &lt;math.h&gt; #include&lt;conio.h&gt; using namespace std; int main() {clrscr(); int a, b; int*...

Напишите комментарии к строкам
#include &lt;iostream&gt; using namespace std; void faktorial(int numb) { int rezult=1; for(int i=1;i&lt;=numb;i++) rezult*=i; ...

Написать комментарии к программе. (всего к 6-ти строкам)
Ребят, помогите написать подробные комментарии с 9-ой по 14-ую строку. А то я программу нашел.. а защитить ее не смогу без комментов....


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
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