Комментарии:
Сергей! Сделайте, пожалуйста, ещё домашних заданий по С#. Пусть они будут платными, он не дорогими, мне кажется будут востребованы!
ОтветитьЗдравствуйте, я нихуя не понял про ООП, помогите пожалуйста
Ответитьавтору спасибо. Домашние задания однозначно способствуют закреплению темы. Но слишком уж быстро автор скачет по материалу. сходу не понять
ОтветитьДомашние задания, очень интересны и разумеется очень нужны, ведь без практики бессмысленно изучать теорию!) Огромное спасибо за ваши уроки!
ОтветитьА что в итоге лучше (быстрее /оптимизированее)? Рекурсия или цикл?
ОтветитьСпасибо большое, надеюсь у вас и дальше будет интересовать ютуб.
ОтветитьДомашки огонь, вот бы побольше.
ОтветитьДомашні завдання потрібні)))
ОтветитьСпасибо за домашку
ОтветитьРекурсия - ненужная и вредная вещь
ОтветитьДЗ == ТОП
ОтветитьТвои забигания на перед все рушат
ОтветитьВот там где рекурсия item там я уже нихрена не понял прям совсем ничего. И домашку пожалуй тоже пропущу.
ОтветитьКонечно домашние задания нужны! Только с помощью них мы понимаем все пройденные материалы)
ОтветитьУра дз
ОтветитьСергей огромное спасибо , у вас талант объяснять легко и профессионально !
Уроки остаются в памяти и придают уверенность !
Немногие смогли дойти до сюда, жаль. Видимо не все готовы так много времени посвятить проге.
ОтветитьБольшое спасибо за урок.
ОтветитьВроде получились домашки, но есть проблемка в 2 и 3 - после верного решения, продолжается вывод предыдуших решений со стека, и как его остановить я не понял, нужно разбор смотреть)
ОтветитьЧто ж все так запутано? Уроки великолепны, но вторую часть урока вообще не понял. Еще и переменные, которые отличаются только большой или малой буквой это взрыв мозга. Думаю, что не стоит так забегать вперед, ведь уроки смотрят не только люди с опытом в программировании. Всем удачи, мы справимся!
Домашние задания ОБЯЗАТЕЛЬНО нужны! Где еще новичкам практиковатся?
Хотя Д/з решил вообще без проблем. Спасибо
3 метод у меня такой
static void Prikol(int a,int i =0,int sum=0)//
{
string str; str=Convert.ToString(a);
char[] chars = str.ToCharArray();//конвертирую строку в массив char
sum += int.Parse(chars[i].ToString());//конвертирую char в строку потом в int32
i++;
if (i == chars.Length) { Console.WriteLine("Сумма "+a+" = " + sum);return; }
Prikol(a,i,sum);
}
//Cпасибо за уроки!!!
домашки нужны и очень интересно ломать себе голову
ОтветитьУ каждой функции есть свой стек, или он общий для всей программы?
ОтветитьКонечно нужны домашнии задания! Они и их разборы ОЧЕНЬ интересные)))) Спасибо☺
Ответитьа можете сделать простую рекурсию для факториала, у меня что то не получается)
ОтветитьСпасибо огромное за ваши труды! Подскажите пожалуйста, что означает значение переменной double = 5d; что означает 5d ? Заранее спасибо!
ОтветитьИз личного опыта пример где можно применить рекурсию... это удаление файлов и папок, если на сайте много страниц и нужно получитьти какую либо информацию (парсинг)
Ответитьusing System;
namespace Домашнее_задание_рекурсия
{
internal class Program
{
static void Sum(int i, ref int sum, params int[] array)
{
if (i < array.Length)
{
sum += array[i];
i++;
Sum(i, ref sum, array);
}
}
static void Foo(int i,params int[] array)
{
if (i <=array.Length)
{
Console.Write(iarray[i]+ " ");
i++;
Foo(i,array);
}
}
static void Sum2(int a, ref int sum)
{
if (a > 0)
{
int c = a / 10;
int d = a - c * 10;
sum += d;
a = c;
Sum2(a,ref sum);
}
}
static void Main(string[] args)
{
int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
Foo(0,array);
Console.WriteLine();
int sum = 0;
Sum(0,ref sum,array);
Console.WriteLine("Сумма всех элементов массива равна " + sum);
Console.WriteLine("Введите любое число");
int a = int.Parse(Console.ReadLine());
sum= 0;
Sum2(a, ref sum);
Console.WriteLine($"Сумма всех элементов числа равна {sum }");
}
}
}
ДЗ очень нужны! По сути задачу можно и самому себе придумать, но во-первых это её еще придумать надо, а во-вторых потом не с чем сравнить то что ты наворотил. А так смотришь потом, и думаешь "Тю, так можно же было все значительно проще сделать!")) Ну или "О, и я так сделал", это тоже радует)
ОтветитьЧтобы рекурсивный метод возвращал значение, пришлось повозиться.
using System;
namespace Lessons_9
{
internal class Program
{
static void PrintArray(in int[] array, int index = 0)
{
Console.WriteLine(array[index]);
if (index >= array.Length - 1)
{
return;
}
++index;
PrintArray(array, index);
}
static int SumArray(in int[] array, int index = 0)
{
if (index == array.Length)
{
return 0;
}
return array[index] + SumArray(array, ++index);
}
static int SumNumberOfArray(int number, int maxIndex)
{
if (maxIndex == 0)
{
return number;
}
int expo = Convert.ToInt32(Math.Pow(10, maxIndex));
return number / expo + SumNumberOfArray(number % expo, --maxIndex);
}
public static void Main(string[] args)
{
int[] myArray = { 2, 5, 6, 3 };
Console.WriteLine("Задание 1 вывод массива");
PrintArray(myArray);
Console.WriteLine();
Console.WriteLine("Задание 2 сумма элементов массива");
Console.WriteLine(SumArray(myArray));
Console.WriteLine();
Console.WriteLine("Задание 3 сумма цифр числа");
Console.WriteLine("Введите число, чтобы найти сумму цифр числа");
string number = Console.ReadLine();
int result = SumNumberOfArray(int.Parse(number), number.Length - 1);
Console.WriteLine(result);
}
}
}
Ты умный
ОтветитьСмотрю с первого видео, мне 13 лет, учу по книгам и твоим видеоурокам уже второй месяц, хочу стать backend разрабом через пару лет, спасибо за уроки
ОтветитьЯ заметил вот что, после того как выполняется команда return, то в каждом рекурсивном методе выполняются как бы остатки этого метода, то есть все что было после вызова метода, будет выполнятся. С помощью той же рекурсии можно создать простой метод инвертирования того же массива
ОтветитьВаши задания очень интересны)👍
ОтветитьСпасибо вам большое Сергей! Благодаря вам непростые темы становятся гораздо легче и понятнее!
ОтветитьThank you
Ответитьжмакнуть
ОтветитьСергей, усыновите меня
ОтветитьСложнааа
Ответитьєєє в мене вийшло зробити 1 завдання переходжу до наступних
using System;
namespace Homework
{
internal class Program
{
public static void Main(string[] args)
{
int[] myArray = { 1, 2, 3, 4, 4 };
Output(myArray, 0);
}
static void Output(int[] array, int index)
{
if (index >= array.Length)
return;
Console.WriteLine(array[index]);
Output(array, index + 1);
}
}
}
Спасибо большое !
ОтветитьДомашние задания это топ !!!!
ОтветитьЯ уже говорил тебе, что такое безумие?
ОтветитьПрошел курс один раз, затем сделал паузу на шесть месяцев, работал с ChatGPT. Потом снова вернулся к курсу и стал понимать намного больше. Теперь записываю уроки в тетрадь, с помощью GPT пишу примеры и прошу объяснить их подробнее — так материал усваивается гораздо лучше. Спасибо за всё
ОтветитьНе совсем понял в чем смысл рекурсии. Исходя из информации в видео, понял, что рекурсия может быстро заполнять стек вызовов (при каждом вызове функции данные в ней копируются). И в примера с вложенными объектами Child цикл for выглядит более понятным и простым.
Ответитьчтобы понять рекурсию, нужно понять рекурсию.
Ответить