Си шарп с нуля

Формула программиста
основатель — Волосатов Евгений Витольдович




Даниил
  • Звание: Гаммациклоп
  • Накопленный опыт: 66 часов
  • Не состоит в «Клубе формулистов»
  • Последний визит: 2017-07-08 15:13:49
  • Возраст: 16 лет

Видеокурсы

Дата активности Видеокурс Прогресс
2017-02-28 soft0 Демо софт 1 из 7 15 %
2015-12-12 soft1 Нанософт 1 из 10 10 %
2015-08-24 game1 Наноигры 5 из 10 50 %
2015-08-24 game0 Демо игры все 9 100 %
Итого: 16 из 36 45 %

Консольные задачи

Дата активности Консольный раздел Прогресс
2017-02-26 olimp Олимпиада 3 из 32 10 %
2017-02-25 task2 Алгоритмика все 20 100 %
2017-02-23 task1a Целые числа все 7 100 %
2015-08-23 task1b Строки все 14 100 %
2015-08-09 task2t Матрицы 1 из 4 25 %
2015-08-06 task1 Семантика все 6 100 %
Итого: 51 из 83 62 %
Сохранить страницу:

10558. Иван Воронин
Иван Воронин
ответить
→  Даниил  # Демо софт / Двенадцать месяцев / 2017-03-01 08:55

Иконки рисовать надо уметь. Это ещё цветочки =)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Демо софт / Двенадцать месяцев / 2017-02-28 13:56

Молодец, Даниил, классно получилось :)


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Регулярные выражения / 2017-02-25 11:50

Вообще понятия не имею, что это за регулярные выражения, поэтому решил выкрутиться...
Regex r = new Regex("Ну нафиг");
Console.WriteLine(Console.ReadLine().Contains(Console.ReadLine()));
А восьмой и девятый тест вообще условию не соответствуют...


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Матрицы / 2017-02-25 11:40

Вообще не знал, что такое матрица и её диагональ (в смысле, догадывался, но точно не знал), но, посмотрев видео, успешно усовершенствовал программу:
        int n = int.Parse(Console.ReadLine());
        double Max = double.MinValue;
        for(int i = 0; i < n; i++) {
            double[] c = Console.ReadLine().Split(' ').ToList().ConvertAll((a) => double.Parse(a)).ToArray();
            for(int j = i; j < n; j++) {
                if(c[j] > Max) Max = c[j];
            }
        }
        Console.WriteLine(Max.ToString("0.0000"));
P.S А разве в первом тесте число 7 находится не НА главной диагонали?


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Строки / 2017-02-25 11:23

Тут даже переменная не нужна...
Console.WriteLine(Console.ReadLine().Replace(".", "..."));


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Подпрограммы / 2017-02-25 11:16

Это, наверное, первая задачка (по крайней мере, из тех, что я помню), которую я решил хуже, чем на видео (я написал метод с циклом, вместо того, что-бы воспользоваться красивой рекурсией).


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Простые массивы. / 2017-02-25 11:00

По сути, эту задачу можно решить и без количества элементов в начале, всего в одну строку:
Console.WriteLine(Console.ReadLine().Split(' ').ToList().ConvertAll((a) => int.Parse(a)).Count((a) => a == 0));
Но мне пришлось добавить ещё пару строк, что-бы подошло к непонятно зачем добавленным другим условиям...


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Любимые циклы / 2017-02-24 14:15

static void Main() {
        Console.WriteLine(Find(long.Parse(Console.ReadLine())).ToString("0.00000"));
    }

    static double Find(double N) {
        return N == 2 ? 2 : N + (1 / (Find(N - 1)));
    }


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Математика / 2017-02-24 13:59

Поначалу прифигел немного, но, как только досмотрел видео до того момента, когда он начал рисовать, быстро понял, остановил видео (на 1:28), и сразу решил... Задачка, по сути, лёгкая...
    static void Main() {
        Console.WriteLine(FindSQRT(long.Parse(Console.ReadLine())).ToString("0.00000"));
    }

    static double FindSQRT(double N) {
        if(N == 1) return 1;
        else return Math.Sqrt(N + FindSQRT(N - 1));
    }


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Последовательность / 2017-02-24 13:48

List<double> l = new List<double>(), r = new List<double>();
        double d;
        while(true) {
            if(double.TryParse(Console.ReadLine(), out d)) {
                l.Add(d);
                r.Add(l.Sum() / l.Count);
            }
            else break;
        }
        foreach(Double c in r) {
            Console.WriteLine(c);
        }


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Точка и плоскость / 2017-02-24 13:18

То самое чувство, когда плохо помнишь геометрию, но решил с первого раза... :D
        string[] s = Console.ReadLine().Split(' ');
        double x = double.Parse(s[0]), y = double.Parse(s[1]);
        bool result = true;
        if(y < 0 || y > 2 || x < -2 || x > 2 || (x > 0 && Math.Sqrt(x*x + y*y) > 2)) result = false;
        Console.WriteLine(result ? "YES" : "NO");


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / For-то-чки / 2017-02-24 12:24

Запрещаете использовать do... while, хотя сами его используете... Зачем? Ну да ладно, тут ещё можно понять, что вы пытаетесь научить нас использовать разные циклы...


6649. Даниил
Даниил
ответить
# Консоль / Алгоритмика / Условный оператор / 2017-02-24 12:09

Вот вечно вы всякие ненужные условия ставите... Вот зачем вам if? Чем вас не устроило
Console.WriteLine((Console.ReadLine().EndsWith(Console.ReadLine().Last().ToString())) ? "YES" : "NO"); ?


6649. Даниил
Даниил
ответить
# Консоль / Целые числа / Пирамида / 2017-02-23 18:00

Вот нафига вам Length? Чем вас Last() не устроило?
long a = long.Parse(Console.ReadLine().Split(' ').Last());
long b = long.Parse(Console.ReadLine().Split(' ').Last());
long c = long.Parse(Console.ReadLine().Split(' ').Last());
long d = long.Parse(Console.ReadLine().Split(' ').Last());
long e = long.Parse(Console.ReadLine().Split(' ').Last());
Console.WriteLine("" + a + " " + b + " " + c + " " + d + " " + e);
Console.WriteLine(a + b + c + d + e);
А из-за этого условия пришлось ещё в конец добавлять int F = "Зачем вам, блин, Length?".Length;


6649. Даниил
Даниил
ответить
# Консоль / Целые числа / Пять чисел / 2017-02-23 17:30

Эх вы... Я ведь написал программу лучше, способную складывать любое количество чисел, а вы... Вот что вам конкретно надо было в 4-м тесте?
P.S: а вам слабо в одну строчку (не считая необходимых):
//www.VideoSharp.info/Консоль/Целые числа/Пять чисел
using System;
using System.Linq;
class VideoSharp
{
    static void Main()
    {
        Console.WriteLine(Console.ReadLine().Split(' ').ToList().ConvertAll((a) => long.Parse(a)).Sum());
    }
}


8. Василевская Елена
Василевская Елена
ответить
→  Даниил  # Прикладные / Твоё портфолио / 2015-12-13 15:30

Даниил, хорошая идея. Молодец!:)


2146. Иван
Иван
ответить
→  Даниил  # Прикладные / Твоё портфолио / 2015-12-13 01:40

Здорово. Но тогда там будут хранится только exe файлы. А так можно еще попрактиковаться внедрять один проект в другой.


24. Олюшка
Олюшка
ответить
→  Даниил  # Прикладные / Твоё портфолио / 2015-12-12 23:59

Даниил, вот это подход программиста, Молодчина! :)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Прикладные / Твоё портфолио / 2015-12-12 16:17

Классно!


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Устный счёт / 2015-08-24 16:33

Даниил, это ж превосходно, очень замечательно все у тебя! :)


2146. Иван
Иван
ответить
→  Даниил  # Наноигры / Бот для Цифр / 2015-08-24 15:51

Здорово, что получается реализовывать свои идеи. Как раз в этом случае прокачка навыков утраивается .


6271. Olly
Olly
ответить
→  Даниил  # Наноигры / Бот для Цифр / 2015-08-24 15:00

Отличные идеи! Уверенна, что дальнейшие программы будешь писать с большим интересом!


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Игра Цифры / 2015-08-24 13:10

Даниил, разрешай, это ж твой шедевр! И иконочку можно поменять на оригинальный! Я рада твоим новым знаниям! Класс!


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Игра Цифры / 2015-08-24 12:13

Сделай так, как свитаешь нужным.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Устный счёт / 2015-08-24 09:56

Отличнейшая работа, Даниил, МОЛОДЕЦ!
Очень рад, что ты сам справляешься с этими задачами.


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Скорость реакции. Алгоритм и рекорд / 2015-08-23 23:07

Даниил, хорошо что уже сам пишешь, я очень рада твоим достижениям! :)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Скорость реакции. Алгоритм и рекорд / 2015-08-23 21:37

Здорово, что стараешься сам писать.


6649. Даниил
Даниил
ответить
# Наноигры / Скорость реакции. Алгоритм и рекорд / 2015-08-23 20:36

Супер, < summary > и < param > в тексте стали невидимыми, это какие-то особые теги?


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Скорость реакции. Три картинки по таймеру / 2015-08-23 18:57

Данила, отлично поработал! Молодец! :)


1. Евгений Волосатов
Евгений Волосатов
ответить

24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Скорость реакции. Блок-схема / 2015-08-19 18:52

Даниил, твоя схема не очень понятна, хотя уверена что ты в ней здорово разбираешься и понимаешь что у тебя к чему!
А вот фотошопом делать блок-схему действительно думаю утомительно будет, он в принципе не для этого предназначен, блок-схему проще нарисовать там где ты хорошо можешь пользоваться, да хоть на листке бумаге, ни кто ж не требует определенных программ, так что в будущем выбирай для себя более быстрые и комфортные условия! Тут на днях ребята посоветовали онлай-ресурс для составления различных схем www.draw.io я опробовала мне понравился он! :)


6452. Кирилл Шмойлов
Кирилл Шмойлов
ответить
→  Даниил  # Наноигры / Скорость реакции. Блок-схема / 2015-08-19 18:44

Немножко субурная блок схема! Постарайся писать более четче, тогда и программу в будущем тебе будет легче писать!


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Полуфинальный урок. Отзыв о видеокурсе / 2015-08-09 15:07

Даниил, очень рада что у тебя все здорово получается и ты доволен своими результатами, это радует! Молодец! :)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Полуфинальный урок. Отзыв о видеокурсе / 2015-08-09 09:07

Спасибо, Даниил.
Имя и фотография нужны для публикации отзывов.
Чтобы было видно, кто его опубликовал, что это реальные люди,.


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Камень ножницы бумага / 2015-08-08 15:28

Даниил, отличные навыки приобрел и замечательно что добавил и прокачал ранее полученные знания! :)


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Бот для Быстрощёлка / 2015-08-07 16:47

Даниил, Молодец!


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Игра Быстрощёлк / 2015-08-07 15:51

Даниил, замечательно что сделал свою программу лучше! :)


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Лабиринт 2D - игра / 2015-08-07 11:25

Даниил, замечательно что сделал и второй уровень, это хорошая тренировка и закрепление полученных знаний! Молодец! :)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Лабиринт 2D - игра / 2015-08-07 10:42

Ну вот, другое дело, Даниил.
МО-ЛО-ДЕЦ!


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Лабиринт 2D - игра / 2015-08-07 09:58

Даниил, всё-таки надо сделать второй уровень.
Пусть даже совсем простой.
В этом идея программы.


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Лабиринт 2D - меню / 2015-08-06 17:46

Даниил, хорошее у тебя начало, и отличные навыки приобрел!


24. Олюшка
Олюшка
ответить
→  Даниил  # Наноигры / Картинка с секретом / 2015-08-06 13:31

Даниил, замечательно поработал над программой! Молодец! :)


6649. Даниил
Даниил
ответить
→  Евгений Волосатов  # Наноигры / Вступительное слово / 2015-08-06 13:14

Спасибо. Приятно видеть, что работы действительно просматриваются. Сейчас буду отчитываться по второму уроку...


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Даниил  # Наноигры / Вступительное слово / 2015-08-06 10:37

Отличная подготовка, Даниил. Категорически поддерживаю :) Если нравится русская версия, пусть она и остаётся.

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Трудности: В целом, всё просто.
Достаточно простой урок... Я немного улучшил выводимый результат....
Научился: Узнал про TrackBar, научился им пользоваться, понял, что если мне понадобится симулировать клик мыши, то лучше поискать способ в гугле и скопировать его...
Трудности: В целом, всё просто (если бы не копипастил метод клика, было бы сложнее).
В целом, достаточно просто... Я немного улучшил программу, научил её русскому языку (1 клик, 2 клика, 5 кликов, и.т.д (проверял на всех числах от 1 до 30 (и несколько после), везде всё правильно)), и сделал так, что после нажатия на кнопку, у меня будет ещё 5 секунд перед тем, как кликер заработает...