Комментарии:
жмакнуть
ОтветитьThank you
ОтветитьСпасибо вам большое Сергей! Благодаря вам непростые темы становятся гораздо легче и понятнее!
ОтветитьВаши задания очень интересны)👍
ОтветитьЯ заметил вот что, после того как выполняется команда return, то в каждом рекурсивном методе выполняются как бы остатки этого метода, то есть все что было после вызова метода, будет выполнятся. С помощью той же рекурсии можно создать простой метод инвертирования того же массива
ОтветитьСмотрю с первого видео, мне 13 лет, учу по книгам и твоим видеоурокам уже второй месяц, хочу стать backend разрабом через пару лет, спасибо за уроки
ОтветитьТы умный
ОтветитьЧтобы рекурсивный метод возвращал значение, пришлось повозиться.
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);
}
}
}
ДЗ очень нужны! По сути задачу можно и самому себе придумать, но во-первых это её еще придумать надо, а во-вторых потом не с чем сравнить то что ты наворотил. А так смотришь потом, и думаешь "Тю, так можно же было все значительно проще сделать!")) Ну или "О, и я так сделал", это тоже радует)
Ответить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 }");
}
}
}
Из личного опыта пример где можно применить рекурсию... это удаление файлов и папок, если на сайте много страниц и нужно получитьти какую либо информацию (парсинг)
ОтветитьСпасибо огромное за ваши труды! Подскажите пожалуйста, что означает значение переменной double = 5d; что означает 5d ? Заранее спасибо!
Ответитьа можете сделать простую рекурсию для факториала, у меня что то не получается)
ОтветитьКонечно нужны домашнии задания! Они и их разборы ОЧЕНЬ интересные)))) Спасибо☺
ОтветитьУ каждой функции есть свой стек, или он общий для всей программы?
Ответитьдомашки нужны и очень интересно ломать себе голову
Ответить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пасибо за уроки!!!
Что ж все так запутано? Уроки великолепны, но вторую часть урока вообще не понял. Еще и переменные, которые отличаются только большой или малой буквой это взрыв мозга. Думаю, что не стоит так забегать вперед, ведь уроки смотрят не только люди с опытом в программировании. Всем удачи, мы справимся!
Домашние задания ОБЯЗАТЕЛЬНО нужны! Где еще новичкам практиковатся?
Хотя Д/з решил вообще без проблем. Спасибо
Вроде получились домашки, но есть проблемка в 2 и 3 - после верного решения, продолжается вывод предыдуших решений со стека, и как его остановить я не понял, нужно разбор смотреть)
ОтветитьБольшое спасибо за урок.
ОтветитьНемногие смогли дойти до сюда, жаль. Видимо не все готовы так много времени посвятить проге.
ОтветитьСергей огромное спасибо , у вас талант объяснять легко и профессионально !
Уроки остаются в памяти и придают уверенность !
Ура дз
ОтветитьКонечно домашние задания нужны! Только с помощью них мы понимаем все пройденные материалы)
ОтветитьВот там где рекурсия item там я уже нихрена не понял прям совсем ничего. И домашку пожалуй тоже пропущу.
ОтветитьТвои забигания на перед все рушат
ОтветитьДЗ == ТОП
ОтветитьРекурсия - ненужная и вредная вещь
ОтветитьСпасибо за домашку
ОтветитьМожет я что-то где-то пропустил в роликах до этого, но почему у бесконечного цикла нету оверфлоу? Как такой цикл использует память?
ОтветитьДомашні завдання потрібні)))
ОтветитьДомашки огонь, вот бы побольше.
ОтветитьСпасибо большое, надеюсь у вас и дальше будет интересовать ютуб.
ОтветитьА что в итоге лучше (быстрее /оптимизированее)? Рекурсия или цикл?
ОтветитьДомашние задания, очень интересны и разумеется очень нужны, ведь без практики бессмысленно изучать теорию!) Огромное спасибо за ваши уроки!
Ответитьавтору спасибо. Домашние задания однозначно способствуют закреплению темы. Но слишком уж быстро автор скачет по материалу. сходу не понять
ОтветитьЗдравствуйте, я нихуя не понял про ООП, помогите пожалуйста
ОтветитьСергей! Сделайте, пожалуйста, ещё домашних заданий по С#. Пусть они будут платными, он не дорогими, мне кажется будут востребованы!
ОтветитьСергей, Спасибо Вам огромное за Ваш Труд!
Дз очень нужны!!!
Если до этого урока, где не было еще объектов и классов я себя чувствовал комфортно, то в конце этого урока, где речь зашла о Child, Item я как буд-то попал на другую планету, надеюсь дальше будет легче все это понять, когда будем изучать ООП.
ОтветитьЗачем тогда использовать рекурсию, если это можно сделать с помощью циклов? Тем более, рекурсия имеет куча недостатков, чего нельзя сказать про цикл.
ОтветитьХороший урок! На плюсах вроде рекурсия может работать бесконечно, там этого не подмечалось....
ОтветитьНе понимаю зачем учить то что еще не нужно учить. Для этого нужно выучить темы которые используются в видео, а не наперед забегать
ОтветитьNice lessons, thanks!
ОтветитьДомашние задания стали сложными
ОтветитьСпасибо за урок !) Дз полезно , я уверен , что оно очень помогает в понимании темы. Даже если сделать не получилось , то мозг напрягается ( на разборе д/з всё становится понятно). Урок длинный + еще отсылок на другие видео мноооогоооо (много инфоормациии с этой рекурсией аааа)
ОтветитьНа всё интересно. Так держать, лучший учитель
Ответить