Дата активности | Видеокурс | Прогресс | ||
---|---|---|---|---|
2020-01-19 | github | Система Git | 110 % | |
2020-01-19 | power | Дневник успеха | 467 % | |
2020-01-12 | memory | Карточки памяти | % | |
2020-01-09 | iterator | Итератор | 30 % | |
2020-01-05 | game2 | Микроигры | 67 % | |
2020-01-02 | game1 | Нано-игры | 90 % | |
2019-12-18 | compiler | Компилятор | 100 % | |
2019-12-09 | soft3 | Теория ООП | 100 % | |
2019-10-19 | graf | Коллекция графов | 22 % | |
2019-10-17 | game0 | Демо игры | 70 % | |
2019-10-08 | task3 | Комбинаторика | 55 % | |
2019-09-28 | task5 | Секундомер | 107 % | |
2019-09-12 | nevermind | Невидимка | % | |
2019-09-10 | platformer | Платформер на Unity | % | |
2019-09-02 | task4 | Графические циклы | 100 % | |
2019-08-30 | soft0 | Демо софт | 115 % | |
2019-07-23 | start | Начало здесь | % | |
2019-07-18 | lines | Шарики | 63 % | |
Итого: | 43 % |
Дата активности | Консольный раздел | Прогресс | ||
---|---|---|---|---|
2020-02-19 | task2 | Подпрограммы | 100 % | |
2020-02-19 | task2 | Рекурсия | 100 % | |
2020-02-09 | task2 | Матрицы | 100 % | |
2020-01-19 | solo | Java - Запуск | 85 % | |
2020-01-19 | olimp | Олимпиада | 5 % | |
2020-01-17 | solo | C# набор | 89 % | |
2020-01-16 | task2 | Строки | 100 % | |
2020-01-07 | club | 24 - Муза Оля | 67 % | |
2020-01-01 | task2 | Простые массивы | 100 % | |
2020-01-01 | solo | Java - Вывод данных | 43 % | |
2019-12-29 | solo | Java - Циклы | 100 % | |
2019-12-28 | task2 | Матрёшки | 100 % | |
2019-12-20 | task2 | По цифрам | 100 % | |
2019-12-15 | task2 | Любимые циклы | 100 % | |
2019-12-10 | task2 | Математика | 100 % | |
2019-12-04 | task2 | Последовательность | 100 % | |
2019-12-01 | task2 | Узник цикла IF | 100 % | |
2019-11-28 | task2 | Точка и плоскость | 100 % | |
2019-11-26 | task1 | Календарь | 100 % | |
2019-11-24 | task1 | Строки | 100 % | |
2019-11-07 | task1 | Цифры | 92 % | |
2019-11-06 | task2 | Обман цикла | 100 % | |
2019-10-31 | task2 | Do-рацикл | 100 % | |
2019-10-28 | task1 | Целые задачи | 100 % | |
2019-10-27 | task2 | Вечность | 100 % | |
2019-10-24 | task2 | Пока-цикл | 100 % | |
2019-10-21 | task2 | For-to-чки | 100 % | |
2019-10-08 | task2 | Условный оператор | 100 % | |
2019-09-22 | task1 | Геометрия | 100 % | |
2019-09-18 | task1 | Символы | 100 % | |
2019-09-16 | task1 | Формулы | 100 % | |
2019-09-13 | task2 | Логика | 100 % | |
2019-09-03 | task2 | Типы данных | 100 % | |
2019-08-27 | task2 | Алгоритмика | 100 % | |
2019-08-09 | task1 | Лирика | 93 % | |
2019-07-25 | solo | YESOLO on the Keyboard | % | |
2019-07-21 | task1 | Целые числа | 100 % | |
2019-07-16 | task1 | Семантика | 100 % | |
Итого: | 89 % |
Говорят, что только на реальных проектах в команде гиток можно прочучствовать.
Огонь!
Файл .gitconfig создается не вручную, а командой git config. Наверняка помните, что когда посте установки гита попробовали сделать первый коммит, то вызвали эту команду.
Можно при коммите указать ключ --author и ввести данные другого автора. Например, так
git commit --author "Author <author@mail.ru>" -m "commit"
Если ключ --author не указывать, система берет данные об авторе из ближайшего файла gitconfig. Это файл можно разместить в трех местах: в системном каталоге ОС (тогда он общий для всех пользователей), в домашнем каталоге пользователя (тогда он общий для всех проектов конкретного пользователя) или можно создать этот файл внутри каталога текущего проекта, тогда можно тонко настроить автора для конкретного проекта независимо от настроек в домашнем каталоге или в системном. Файл .gitconfig в текущем каталоге переопределяет файл в домашнем каталоге пользователя, а тот в свою очередь скрывает настройки из системного. Чем-то похоже на матрешку.
Когда Евгений Витольдович говорил про работу разных пользователей с одного компьютера, я думаю он имел ввиду, что оба этих пользователя клонируют себе в проект в свои домашние каталоги. В домашних каталогах у каждого хранится свой файл .gitconfig, который задает имя почту автора коммита. Поэтому каждый пишет коммиты от своего имени.
Есть вариант подправить историю коммитов, чтобы убрать ненужные коммиты. Главное что .gitignore фильтрует файлы, это сейчас достаточно.
Все верно, так и было. Да файл игнора работает и файлы типа .class игнорируются.
Получается нет способа вычистить некорректно добавленный .gitignor?
Если я правильно понял, сначала был создан файл с опечаткой .gitignor, он был добавлен в коммит. Потом была обнаружена опечатка, этот файл был переименован в правильный .gitignore и снова добавлен в коммит. В итоге существует только один файл, но переименовый и гит это помнит. Я думаю можно оставить все как есть, ведь задача была добавить файл игнора и он работает? Файлы .class игнорируются?
Если бы не видео - до конца жизни бы подбирал нужную комбинацию палочек. Не люблю задачи связанные не с программированием, а с редактированием. Так и не решил ее на 100% и меня это не печалит.
Тоже на этом моменте попался, наверное это для того, чтобы все обязательно решили через отдельную функцию. В противном случае думаю, что большинство не будет выносить вычисление степени в отдельную функцию.
Да, этот курс сложен. Я то же самое про него запомнил.
В точку. Спасибо.
Тебе нужно реализовать функцию которая возвращает IEnumerator , а у тебя функция возвращает IEnumerable - в этом и заключается ошибка.
Нужно быть по внимательней или хотя бы использовать возможности студии, удали функцию GetEnumerator() и сгенерируй как предлагает студия и всё будет работать как надо. Удачи всё получится, если делать правильно.
IEnumerble не подключен в юзингах, что-то подобное.
Возможно, не помню уже, давно писал данную игру. В принципе это не сложно поправить.
Самым интересным и полезным курсом считаю "теорию ООП". Этот курс, собственно как и многие другие хорош тем, что нарабатывается практика. Соответственно рекомендовать данный курс могу только тем, кто хочет получить дополнительный практический опыт.
Привет, поздравляю с финалом! Здорово получилось, но ракетка вроде не должна выходить за пределы игрового поля.
Классно. Что скажешь о курсе в общих чертах? Что тебе больше понравилось? Кому рекомендуешь пройти его?
Привет я новичок надеюсь у меня хватит ума освоить это,просто захотелось узнать что то новое
Спасибо большое за комментарии :) Unity3D - название программы. Изначально она задумывалась для создания 3D игр, но так стало потребно и 2D пространство, была добавлена следующая среда
Не думай о времени выполнения, я бы вообще убрал его с проекта (будь моя воля=) ), так как оно многих провоцирует на простое переписывание кода с видео. Наоборот очень здорово, что решил разобраться и вникнуть.
Видео ограничено в просмотре, проверь настройки и сними запрет
вот что пишет:
Видео недоступно
Это видео содержит материалы, принадлежащие пользователю Muyap. Он ограничил доступ к ролику в вашей стране
))) Занимательная история получается. Я мог предположить, что речь идёт об Украине, к примеру, или Израиль, тогда бы разница в доступе была объяснима. А так - загадка.
РФ, Московская область, г. Химки. Провайдер билайн (проводной). VPN не использую. Вот не знаю, может из-за роутера Xiaomi, он у меня контрафактный (мне кажется), но вообще вряд ли есть привязка к стране-изготовителю роутера...
Не знал, что у нас страна настолько дифференцированная.
"Он ограничил доступ к ролику в вашей стране." - может мы в разных странах пытаемся открывать или прокси какие хитрые пути выбирают... Я сейчас открываю страницы веба из города Кирова Кировской области РФ. Провайдер Йота, сети Мегафон.
Значит они дифференцируют доступ в зависимости от территории пользователя, кому-то доступ есть, а у меня так -
a.radikal.ru/a16/1912/e7/1142f21c060e.png
Вот тут загадка для меня. Сейчас проверил, видео доступно как с этого сайта, так и непосредственно с ютуба...
Мое мнение. Учи, то что больше нравится. Главное знать досконально любой язык, за хорошего программиста хорошо будут платить вне зависимости от языка.
Видео недоступно
Это видео содержит материалы, принадлежащие пользователю Muyap. Он ограничил доступ к ролику в вашей стране.
Так держать, молодец! Я вот, что-то на перепутье нахожусь. Может джаву начать прокачивать? Там вроде денег много крутится, но жалко потраченного времени на шарп.
Поздравляю, что дошел до конца. Ну смотри это же для общего развития, а не для видеоблогинга. Развитие навыка говорить публично полезно все.
3 звезды за задачу в которой требуется думать не над основным условием, а над тем где сколько пробелов должно быть. Считаю, что если робот относиться к пробелам так дотошно, то следует в условии указывать где и сколько необходимо пробелов, в противном случае сидишь как дурак разглядывая пример, чтобы понять где какой пробел скорее всего стоит.
Бывает непоправимое зло, но отдыхать иногда всё же надо.
Решил задачу несколькими способами (проверил работоспособность в VS), но они по неизвестным причинам не проходили тест. Соответственно условие либо не полное, либо некорректное. Пришлось тупо переписать с видеорешения, за низкую универсальность 2 звезды.
Не лишним было бы предупредить, что 0 является четным числом. Это неочевидно.
Какой то маленький корабль, кто на нем полетел покорять лунные пейзажи?
Молодец. Теперь можно и свою Visual Studio при случае написать.
Подписка в Клуб формулистов обновлена.
Количество дней: +30
Количество байт: +256
Подписка КФ до: 2020-01-19
Остаток байтов: 4428
Вы являетесь участником Клуба формулистов.
Вариант видеообзора-лайт - показать код, запустить игруху и все это под музыку тихонько )
Привет! Писаниной я дополняю свою практику десятипальцевого набора. В ежедневном наборе из обязаловки там где на время, постоянно срываюсь на привычное двухпальцевое тыкание - оно пока быстрее. Но и от слепого набора начал получать кайф, потому и не ограничиваю себя парой слов в отчете. Дополнительно, повторение в отчете того, что было в уроке помогает запомнить.
Киров сейчас невелик город, 400 тысяч населения, но и тут ритм не как в области, там спокойнее )
Удачного дня!
Как всегда ёмкий отчет.
Мне всегда лень писать развернутый отчет =). Я почти всегда нахожусь в режиме спешки, оправдываю себя тем, что живу в большом городе и спешка - воспринимается как неизбежный атрибут.
Отлично! Один отчет - еще один шаг к профессионализму в программировании.
Попробуй немного отложить, мозгу требуется время, чтобы построить новые структуры.
Поздравляю с тем, что дошел до конца! Развивайся дальше не останавливайся. Применяй ООП на практике повсеместно. Иначе все забудется!..
Давно еще видел подобную программу на паскале. Там были три вида шариков: хищники, травоядные и растения. Очень интересно было. Хорошо, что в этом курсе это есть!
На таких кружочка прототип любой игры можно опробовать. Главное научится эти шарики шевелить правильно.
Русскоязычные имена дает в данном видеокурсе сам лектор, а я просто повторил.
Спасибо. Кстати быстрая скорость выполнения задания говорит скорее о том, что я спешил и не очень погружался =) Увы, время не всегда есть на полноценное погружение в материал.
Все хорошо, но желательно имена давать по английски. Сам так делаю с помощью словаря. Заодно словарный запас английских слов пополняется.
Похвально. Так держать. Сделано быстро. Следующий курс думаю по ООП буду брать.
Хорошая производительность. Так держать, не сбавляй темп. Чего и себе желаю...
Да, это он.
Правильно делаешь, что пробуешь сам все доделать, экспериментировать с незнакомыми методами. Свой опыт ценнее всего.
Поздравляю с приобретением еще одного навыка программирования. ООП - сила!
Круто!Тоже так хочу.....
Переписывание это тоже хорошая практика для запоминания когда и понимания, что за чем идет в структуре программы
Необходимо знать вроде бы простые методы, так как это позволит понять более сложные понятия.
Главное не останавливаться и идти к цели каждый день. Самостоятельность и понимание непременно придет!
Решил с помощью костыля:
if (day == 3)
{
Console.WriteLine(year);
Console.WriteLine(month);
Console.WriteLine(1);
}
Решил все таки эту задачу без помощи видео...
Мой код получился просто гигантский, но я все равно очень доволен тем что победил эту задачу.
Оптимизацией буду заниматься позже, сейчас считаю успехом то, что просто смог!
Такой отчет стоит и прикрепить - часто курсанты негодуют, как же так, не всё разжевано, много сложностей и непоняток и как с этим бороться... Люди часто ищут серебряную пулю или волшебного оленя, который будет колотить копытом и от этого будет сыпаться злато ))
Видеошарп дает практику и минимум теории, за теорией надо нырять самостоятельно - как за жемчужинами. Жемчуг сам не приплывёт ))
Спасибо за содержательный отчет.
Удачи!
Живо, свежо, в общем креативненько! Мне есть на кого равняться.
Всё, нашел ошибку. Если кому интересно, то она заключалась в том, что я забыл вынести в отдельную функцию Init() код инициализации графики и ручки.
"bmp = new Bitmap(pictureBox.Width, pictureBox.Height);
graph = Graphics.FromImage(bmp);
pen = new Pen(Color.Black);"
Черт ноги сломает в моем коде, сам его уже понять не могу...
Извиняюсь за долгое молчание (командировка).
Пробовал, сравнивал отработку кода до изменений приведших к тому что перестала отрисовываться фигура. И после изменений. Вроде как и там и там все переменные необходимые для рисования получают координаты, но после изменения кода они перестали рисоваться.
Буду дальше копать, но пока не понимаю как такое могло произойти.
Извиняюсь за долгое молчание (командировка).
Если я правильно понял про юзинги, то сейчас создал новый проект и там юзинги находятся в таком же порядке как и в программе с проблемой:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace experiment
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}
У каждого чуть - чуть по-своему реализовано. Каждый добавлял что-то свое. Думаю, может помочь пошаговое прохождение программы. Так легче найти проблему, а также начинаешь лучше понимать, как работает программа. Чувствую, что проблема не в юзингах...
using System;
class Program
{
static void Main()
{........
Вот пример - здесь юзинг не спрятан за скобками неймспейса, правда он тут и не обозначен. Но границы в виде фигурных скобок между юзингом и исполняемым классом нет, подозреваю здесь и проблема. Надо сначала указать неймспейс, открыть фигурную скобку а затем лишь юзинги прописывать. Вероятно так.
Юзинги не в области видимости неймспейса должны быть разве? Подозреваю, что она за пределами класса указываются, но внутри скобок неймспейса. Пишу по памяти, может ошибаюсь, но вроде бы здесь ошибка.
class Circle : Shape //Класс Circle будет наследоваться от класса Shape
{
public Pixel center; //координаты центра
public Pixel corner; //"угол" который требуется для рисования окружности (правый нижний, наподобии прямоугольника)
public int radius;
public int width, height;
protected Graphics graph;
protected Pen pen;
public Circle(int x, int y, int radius) //передача в функцию координат 2 точек и размера радиуса для рисования окружности
: this (new Pixel (x, y), radius) //конструктор берет 2 точки и создает 1 пиксель, передается радиус без изменений
{
}
public Circle()
{
}
public void SetGraphics(Graphics graph)
{
this.graph = graph;
}
public void SetPen(Pen pen)
{
this.pen = pen;
}
public Circle(Pixel center, int radius) // center - центральная точка окружности. radius - цифра означающая размер радиуса
{
this.center = center;
this.radius = radius;
this.corner = new Pixel (
this.center.x - this.radius,
this.center.y - this.radius);
this.width = this.height = this.radius * 2;
}
public Circle (Pixel center, Pixel point) //функция для создания окружности по центральной точке и точке по которой она будет проходить
: this(center, center.distance(point)) //берем пиксель center, затем снова берем пиксель center и у него вызываем метод distance (который мы написали)
//и находим расстояние до пикселя point
{
}
public void Draw()
{
graph.DrawEllipse(pen,
corner.x, corner.y,
width, height);
}
}
using System;
using System.Drawing;
using System.Windows.Forms;
namespace Geom1
{
public struct Pixel
{
public int x, y;
public Pixel(int x, int y)
{
this.x = x;
this.y = y;
}
public void Load()
{
}
public int distance (Pixel pixel) //функция для нахождения расстояния от текущего пикселя до любого другого
{
return Convert.ToInt32(Math.Sqrt(
(this.x - pixel.x) * (this.x - pixel.x) +
(this.y - pixel.y) * (this.y - pixel.y))); //формула вычисления координаты второй точки (point)
}
}
public partial class Form1 : Form
{
Bitmap bmp;
Graphics graph;
Pen pen;
//Панда 1
Shape[] panda1; // массив в который мы засунем все фигуры нужные для рисования не цветной панды
//Панда 2 - с цветом
Shape[] panda2; // массив в который мы засунем все фигуры нужные для рисования цветной панды
Pixel A, B, C, D, E, F, H, G, I, J, L, M, N, O, P, K, Q, R, X1, X2, Z1, Z2, T, U, V, S, W; //создание обектов типа Pixel
public Form1()
{
InitializeComponent();
InitPanda1(); //функция для инициализации объекта (то есть создания) Панды 1
InitPanda2(); //с цветом - функция для инициализации объекта (то есть создания) Панды 2
Draw();//функция для рисования
}
private void InitPanda1()//функция для инициализации Панды (то есть её создания) 1
{
bmp = new Bitmap(pictureBox.Width, pictureBox.Height);
graph = Graphics.FromImage(bmp);
pen = new Pen(Color.Black);
A = new Pixel(200, 180);
B = new Pixel(200, 360);
C = new Pixel(135, 95);
D = new Pixel(260, 95);
E = new Pixel(150, 110);
F = new Pixel(275, 110);
H = new Pixel(135, 140);
G = new Pixel(230, 140);//верх правая внешняя оболочка глаза панды
I = new Pixel(155, 155);
J = new Pixel(163, 185);
L = new Pixel(237, 155);
M = new Pixel(245, 185);
N = new Pixel(260, 200);//низ правая внешняя оболочка глаза панды
O = new Pixel(200, 205);
P = new Pixel(210, 205);
K = new Pixel(170, 200);
Q = new Pixel(200, 265);
R = new Pixel(150, 270);
X1 = new Pixel(128, 300);
X2 = new Pixel(50, 335);
Z1 = new Pixel(275, 300);
Z2 = new Pixel(360, 335);
T = new Pixel(110, 425);
U = new Pixel(170, 465);
V = new Pixel(235, 425);
S = new Pixel(250, 425);
W = new Pixel(295, 465);
panda1 = new Shape[14]; //создадим массив из 14 элементов в котором будем хранить фигуры для панды
// фигуры типа круг
panda1[0] = new Circle(C, E); //левое ухо панды
((Circle)panda1[0]).SetGraphics(graph);
((Circle)panda1[0]).SetPen(pen);
panda1[1] = new Circle(D, F); //правое ухо панды
((Circle)panda1[1]).SetGraphics(graph);
((Circle)panda1[1]).SetPen(pen);
panda1[2] = new Circle(A, Q); //голова панды
((Circle)panda1[2]).SetGraphics(graph);
((Circle)panda1[2]).SetPen(pen);
panda1[3] = new Circle(O, P); //нос панды
((Circle)panda1[3]).SetGraphics(graph);
((Circle)panda1[3]).SetPen(pen);
panda1[4] = new Circle(B, Q); //туловище (внешний контур) панды
((Circle)panda1[4]).SetGraphics(graph);
((Circle)panda1[4]).SetPen(pen);
//фигуры типа овал вписанный в прямоугольник
panda1[5] = new CircleEllipse(H, K); //левая внешняя оболочка глаза панды
panda1[6] = new CircleEllipse(I, J); //левая внутреняя оболочка глаза панды
panda1[7] = new CircleEllipse(G, N); //правая внешняя оболочка глаза панды
panda1[8] = new CircleEllipse(L, M); //правая внутреняя оболочка глаза панды
panda1[9] = new CircleEllipse(R, S); //туловище (внутренний контур) панды
//фигуры типа линия
panda1[10] = new Line(X1, X2);//левая рука панды
panda1[11] = new Line(Z1, Z2);//правая рука панды
//фигуры типа прямоугольник
panda1[12] = new Rectangle(T, U);//левая нога панды
panda1[13] = new Rectangle(V, W);//правая нога панды
}
private void InitPanda2()//функция для инициализации Панды (то есть её создания) 1
{
bmp = new Bitmap(pictureBox.Width, pictureBox.Height);
graph = Graphics.FromImage(bmp);
pen = new Pen(Color.Black);
int delta = 400; //переменная, спомощью которой мы сместим объект на указанное количество по оси Х вправо
A = new Pixel(delta + 200, 180);
B = new Pixel(delta + 200, 360);
C = new Pixel(delta + 135, 95);
D = new Pixel(delta + 260, 95);
E = new Pixel(delta + 150, 110);
F = new Pixel(delta + 275, 110);
H = new Pixel(delta + 135, 140);
G = new Pixel(delta + 230, 140);//верх правая внешняя оболочка глаза панды
I = new Pixel(delta + 155, 155);
J = new Pixel(delta + 163, 185);
L = new Pixel(delta + 237, 155);
M = new Pixel(delta + 245, 185);
N = new Pixel(delta + 260, 200);//низ правая внешняя оболочка глаза панды
O = new Pixel(delta + 200, 205);
P = new Pixel(delta + 210, 205);
K = new Pixel(delta + 170, 200);
Q = new Pixel(delta + 200, 265);
R = new Pixel(delta + 150, 270);
X1 = new Pixel(delta + 128, 300);
X2 = new Pixel(delta + 50, 335);
Z1 = new Pixel(delta + 275, 300);
Z2 = new Pixel(delta + 360, 335);
T = new Pixel(delta + 110, 425);
U = new Pixel(delta + 170, 465);
V = new Pixel(delta + 235, 425);
S = new Pixel(delta + 250, 425);
W = new Pixel(delta + 295, 465);
panda2 = new Shape[14]; //создадим массив из 14 элементов в котором будем хранить фигуры для цветной панды
// фигуры типа цветной круг
panda2[0] = new ColorCircle(C, E, Color.Black); //с цветом - левое ухо панды
panda2[1] = new ColorCircle(D, F, Color.Black); //с цветом - правое ухо панды
panda2[2] = new ColorCircle(A, Q, Color.Black); //с цветом - голова панды
panda2[3] = new ColorCircle(O, P, Color.Black); //с цветом - нос панды
panda2[4] = new ColorCircle(B, Q, Color.Black); //с цветом - туловище (внешний контур) панды
// фигуры типа цветной овал вписанный в прямоугольник
panda2[5] = new ColorCircleEllipse(H, K, Color.Blue); //с цветом - левая внешняя оболочка глаза панды
panda2[6] = new ColorCircleEllipse(I, J, Color.Black); //с цветом - левая внутреняя оболочка глаза панды
panda2[7] = new ColorCircleEllipse(G, N, Color.Blue); //с цветом - правая внешняя оболочка глаза панды
panda2[8] = new ColorCircleEllipse(L, M, Color.Black); //с цветом - правая внутреняя оболочка глаза панды
panda2[9] = new ColorCircleEllipse(R, S, Color.Yellow); //с цветом - туловище (внутренний контур) панды
// фигуры типа цветная линия
panda2[10] = new ColorLine(X1, X2, Color.Black);//с цветом - левая рука панды
panda2[11] = new ColorLine(Z1, Z2, Color.Black);//с цветом - правая рука панды
// фигуры типа цветной прямоугольник
panda2[12] = new ColorRectangle(T, U, Color.Black);//с цветом - левая нога панды
panda2[13] = new ColorRectangle(V, W, Color.Black);//с цветом - правая нога панды
}
private void Draw()
{
Draw(panda1); //Draw, которая рисует целый набор фигур - спрайт
Draw(panda2); //Draw, которая рисует целый набор фигур - спрайт
pictureBox.Image = bmp;
}
private void Draw(Shape [] shapes) //функция, которая перебирает все фигуры из которых состоит панда и рисует с помощью Draw(Shape shape)
/* замена этих циклов -
for (int i = 0; i < panda1.Length; i++) //цикл, который перебирает все фигуры содержащиеся в массиве panda1 и вызывает функцию Draw(Shape shape)
Draw(panda1[i]);
for (int i = 0; i<panda2.Length; i++) //цикл, который перебирает все фигуры содержащиеся в массиве panda2 и вызывает функцию Draw(Shape shape)
Draw(panda2[i]);
*/
{
for (int i = 0; i < shapes.Length; i++) //цикл, который перебирает все фигуры содержащиеся в переданном массиве.
Draw(shapes[i]); // и вызывает функцию Draw(Shape shape)
}
private void Draw(Shape shape)//функция рисует фигуру, которая содержится в Shape
{
if (shape.GetType() == typeof(Line)) //если фигурa shape имеет тип Line
Draw((Line)shape); //рисуем предварительно посмотрев на переменную shape как на Line. То есть приводим ее к типу Line
if (shape.GetType() == typeof(Rectangle)) //если фигура shape имеет тип Rectangle
Draw((Rectangle)shape); //смотрим на переменную shape как на Rectangle. То есть приводим ее к типу Rectangle
if (shape.GetType() == typeof(Circle)) //если фигурa shape имеет тип Circle
((Circle)shape).Draw(); //смотрим на переменную shape как на Circle. То есть приводим ее к типу Circle
if (shape.GetType() == typeof(CircleEllipse)) //если фигурa shape имеет тип CircleEllipse
Draw((CircleEllipse)shape); //смотрим на переменную shape как на CircleEllipse. То есть приводим ее к типу CircleEllipse
if (shape.GetType() == typeof(ColorLine)) //если фигурa shape имеет тип ColorLine
Draw((ColorLine)shape); //рисуем предварительно посмотрев на переменную shape как на ColorLine. То есть приводим ее к типу ColorLine
if (shape.GetType() == typeof(ColorRectangle)) //если фигура shape имеет тип ColorRectangle
Draw((ColorRectangle)shape); //смотрим на переменную shape как на ColorRectangle. То есть приводим ее к типу ColorRectangle
if (shape.GetType() == typeof(ColorCircle)) //если фигурa shape имеет тип ColorCircle
Draw((ColorCircle)shape); //смотрим на переменную shape как на ColorCircle. То есть приводим ее к типу ColorCircle
if (shape.GetType() == typeof(ColorCircleEllipse)) //если фигурa shape имеет тип ColorCircleEllipse
Draw((ColorCircleEllipse)shape); //смотрим на переменную shape как на ColorCircleEllipse. То есть приводим ее к типу ColorCircleEllipse
}
private void Draw (Rectangle rectangle)//функция рисует прямоугольник
{
graph.DrawRectangle(pen,
rectangle.corner1.x, rectangle.corner1.y,
rectangle.width, rectangle.heigth);
}
private void Draw(ColorRectangle rectangle)//функция рисует цветной прямоугольник
{
graph.DrawRectangle(rectangle.pen,
rectangle.corner1.x, rectangle.corner1.y,
rectangle.width, rectangle.heigth);
}
private void Draw (Line line)//функция рисует линию
{
graph.DrawLine(pen,
line.begin.x, line.begin.y,
line.ended.x, line.ended.y);
}
private void Draw (ColorLine line)//функция рисует цветную линию
{
graph.DrawLine(line.pen,
line.begin.x, line.begin.y,
line.ended.x, line.ended.y);
}
/*private void Draw(Circle circle)//функция рисует окружность
{
graph.DrawEllipse(pen,
circle.corner.x, circle.corner.y,
circle.width, circle.height);
}*/
private void Draw(ColorCircle circle)//функция рисует окружность
{
graph.DrawEllipse(circle.pen,
circle.corner.x, circle.corner.y,
circle.width, circle.height);
}
private void Draw(CircleEllipse circleEllipse) //функция рисует овал
{
graph.DrawEllipse(pen,
circleEllipse.x1, circleEllipse.y1,
circleEllipse.width, circleEllipse.height);
}
private void Draw(ColorCircleEllipse colorCircleEllipse) //функция рисует цветной овал
{
graph.DrawEllipse(colorCircleEllipse.pen,
colorCircleEllipse.x1, colorCircleEllipse.y1,
colorCircleEllipse.width, colorCircleEllipse.height);
}
Подписка в Клуб формулистов обновлена.
Количество дней: +30
Количество байт: +256
Подписка КФ до: 2019-12-20
Остаток байтов: 3789
Вы являетесь участником Клуба формулистов.
Ничего не понял, но очень интересно :))
Было бы не плохо однозначно указать в условии, что края заштрихованной области "включены" в зону, которая по условию должна выводить "Да".
Это тоже легко решить. Хватай "шапку" обозревателя и тащи на центр экрана, там появится ... эм, ну сам увидишь, в общем там можно будет прилепить в удобную тебе сторону обозреватель.
Благодарю, и у меня получилось! Правда, Обозреватель решений перескакивает с левой стороны на правую. Ну и фик с ним.
Попробуй его снова открыть уже после того как запустишь на выполнение программу. У меня получилось.
Не все понял, половину переписал из видеорешения.
Уютный гараж, только не понятно кто такой Крым)
Удивительно яркая иллюстрация. Нано инсайд, макро аутсайд - насколько продвинуты технологии в одном секторе, и насколько замерло развитие в другом. Нанометры применяются в технологиях кремниевых чипов, а контакты недалеко ушли в размерах от времен ламповых телевизоров. И не всякого допускают до технологии современных производств.
Спасибо за фото.
Удалять отчёты не стал, чтобы у вас остались прежние комментарии для сравнения процесса прохождения. Начинайте проходить и пишите новые комментарии в отчётах.
Да, я точно хочу чтобы мне сбросили курс по ООП.
Что еще я хочу так сразу и не вспомню, уже не надеялся на ответ. Спасибо)
Здравствуйте.
Прошу прощения, что не ответил сразу, просто этим майнингом я сейчас не занимаюсь и не могу так сразу сказать, что как там настроить.
Курс ООП сбросить могу, без проблем. Напишите, что точно желаете этого и я сделаю.
Сообщения здесь на сайте - хороший способ для связи или можно писать в нашем Телеграм-канале.
Привет. Я пока приостановил прохождение этого курса. На мой вопрос так внятно и не ответили. Думаю продолжить прохождение этого курса после того как окончу решать задачи по алгоритмике.
Аналогичная ситуация. Говорит что предыдущие не решены задачи.
Здравствуйте, Евгений Витольдович.
Писал к вам на почту, вы не отвечаете. У меня пару вопросов не по теме.
1. Есть возможность сбросить мне видеокурс Теория ООП? (хочу пройти с самого начала)
2. Есть какой то стабильный канал связи с вами, чтобы можно было написать и получить ответ?
Спасибо.
Согласен со всем сказанным. Спасибо.
Лучший способ "борьбы" с ленью - выполнять задание не наспех, а с участием, с интересом.
Мой совет может быть странным для преподавателя videosharp.info, но скажу так: ты всё делаешь правильно. Раз у тебя сейчас приоритетна курсовая - основные силы брось на курсовую. От этого зависит твое будущее, и ее сделай на "отлично". Молодец, что не забрасываешь курсы, но это время тебе пока на поддержание знаний по программированию. Закончишь курсовую - тогда и проявишь творчество. Удачи)))
(p.s. а с ленью не борись. ее изгони раз и навсегда. проанализируй сегодня что тебе мешает, и прямо завтра устрани эти факторы. У тебя много дел и мало времени для лени)
IndexOf() - это стандартный метод для очень большого количества коллекций
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
— Martin Golding
Поставил три звезды из-за пробела, который обязательно необходимо добавить в конце первой строки. Честное слово, если бы не комментарии здесь, я бы в жизни не додумался что проблема в этом. Отношу это к недочету при создании задачки.
Ну и рожа на твоей секретной картинке, что за зверь ? у нас такие не водятся))
1. "Привет! А в Телеграме вопросы задавал?" - в телеграм, у меня есть только контакт VideoSharp, в котором нет разрешения писать сообщения.
2. "Я сам не любитель месенджеров и соцсетей, давно в Телеграм не смотрел, но такие слова, что здесь до кого-то невозможно было бы достучаться удивляют. Или босс занят шахматным проектом, или вопросы не туда отправляются. В общем, удивлен я этой историей." - писал я всегда на ящик, который указан в нижнем левом углу сайта. Если честно, то я уже и туда не пишу.
3. "Есть такой здесь монстр рока, из давних курсантов, ныне уже и соавтор уроков - 791. Валерий Жданов" - насколько я понимаю здесь нет поддержки личных сообщений, поэтому написать ему не могу. Думаю, что если бы он имел что написать, то написал бы уже.
4. Помню в каком то видео смотрел варианты обратной связи, но уже не помню в каком. Там точно было сказано, что можно обращаться на e-mail и к помощи таких же как я - это я использовал. Может быть там еще какой то канал связи указан, а я просто не помню... искать и пересматривать нет времени и желания, лучше позанимаюсь тем, что доступно.
5. А вообще я уже забил на обратную связь, просто занимаюсь чем могу, все равно данный ресурс довольно интересный. Когда окончательно во что нибудь упрусь, тогда и отпишусь, а пока есть чем заняться))
Спасибо за участие.
Вспомнил еще вариант. Есть такой здесь монстр рока, из давних курсантов, ныне уже и соавтор уроков - 791. Валерий Жданов
Он уже и отчет этот плюсанул - значит на связи. Может ему продублировать вопросы, уж он-то не замечен в немногословности - всех своих курсантов, проходящих его курсы и приободрит, и отчет завернет тока так, и подскажет и вопрос подкинет.
Он точно на связи - 791. Валерий Жданов
Привет! А в Телеграме вопросы задавал? Там когда-то было жарко, ежедневно общение кипело. Там и Игромистр откликался и народ не безмолвствовал. Я сам не любитель месенджеров и соцсетей, давно в Телеграм не смотрел, но такие слова, что здесь до кого-то невозможно было бы достучаться удивляют. Или босс занят шахматным проектом, или вопросы не туда отправляются. В общем, удивлен я этой историей.
Подписка в Клуб формулистов обновлена.
Количество дней: +30
Количество байт: +256
Подписка КФ до: 2019-11-20
Остаток байтов: 3021
Вы являетесь участником Клуба формулистов.
Как обходной вариант, можно решить-таки ту задачу, на которую сайт ругается и идти дальше.