ЗАПОЛНИТЬ МАССИВ С КЛАВИАТУРЫ | ВВОД МАССИВА С КОНСОЛИ C# | СИ ШАРП УРОКИ | ДОМАШНИЕ ЗАДАНИЯ # 6
Вставка
- Опубліковано 6 вер 2024
- В этом уроке мы продолжим изучать массивы и циклы в языке программирование C# и выполним домашнее задание из одного из прошлых уроков. Займёмся реализацией ввода элементов массива с консоли и соответственно заполним наш массив данными с клавиатуры. При этом наша реализация будет предусматривать самостоятельное указание размера массива с консоли.
➡️ Мой курс C# ОТ НОВИЧКА К ПРОФЕССИОНАЛУ на Udemy
👉 www.udemy.com/...
✅ИСХОДНЫЙ КОД УРОКА bit.ly/2r4hH97
✅Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут!=)
✅Доступ к исходному коду и спонсорство / simplecode
✅ donatepay.ru/d...
✅BTC кошелек: 12oYfJnvt76wjJbpvfhM41m6KPz6uz4LD4
✅ Telegram канал t.me/SergeySim...
Уроки по программированию
✅Наша группа ВК smplcode
✅Подписывайтесь на канал / @simplecodeit
#массивы #сишарп #simplecode #урокипрограммирования
Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)
✅Доступ к исходному коду и спонсорство www.patreon.com/SimpleCode
✅ donatepay.ru/don/SimpleCode
✅BTC кошелек: 12oYfJnvt76wjJbpvfhM41m6KPz6uz4LD4
Огромное спасибо, святое дело, передавать навыки мастерства. Низкий поклон за ваш труд.Процветания вам
Сергей, спасибо за ваш труд. По вашим урокам я изучаю С++ и С#, если бы не ваша структурированная подача нужных материалов, на изучение ушло бы гораздо больше времени, а время сейчас очень ценный ресурс в нашем мире)
Учитывая периодичность выхода роликов, на изучение С# на этом канале уйдет лет 10.
@@DolyaAlex ну если подключать еще другие источники (советую допустим Sololearn приложение), то в комплексе это дает все же быстрый результат) ну быстрее чем в вузе, это точно)
@@zakharhurov2615
Я бы не советовал ресурс sololearn если хочешь заниматься обучением серьезно
Он дает слишком поверхностные знания и упускает много важных деталей
Советую как можно быстрее садиться за книги;)
@@outsider0737 согласен, книги нужны. Но иногда проще начать с чего-то, а потом все больше углубляться куда тебе нужно. Кстати, какую книгу для новичков посоветуешь?
@@zakharhurov2615 Трудно сказать
Я начинал с Шилдта но почти под конец понял что книга немного устарела (там рассматривается C # 4 а уже 8 вышел)
После чего начал читать Троелсона C # 7 и платформа .NET Core
Мне нравится но может показаться немного трудной для начала, все же программирования в целом не простая штука;)
Сергей, приветствую, огромное спасибо за ваши уроки. Есть небольшая просьба. Вы, судя по всему, уроки по C++ более выпускать не планируете. Хотелось бы увидеть видео - итог по данному языку. Мол краткий обзор того, что было пройдено, что теперь предстоит нам самим изучать далее, ваш совет куда двигаться, чтобы сравниться с Вами по знаниям) Ну и, многие люди оставляли комментарии в духе "вот по вашим урокам реализуюсь в IT, обязательно задоначу", кто-нибудь выполнил обещание?) В общем, просим заключительный урок по C++))
Были тоже, в ключе этом мысли.
@@Wardriving666 мастер йода, это ты)))?
@@Urolog_Shakhbanov к мастеру только на вы)
Как же легко тебя смотреть! Спасибо тебе огромное!!
Респект тебе, Сергей!
Сделал всё +- также но только всё таки решил ещё заморочиться с валидацией, аж самому приятно смотреть на то, что сделал. Тупил с суммой чётных чисел, так всё просто на самом деле только голова такую простоту поняла только после отладчика)). Спасибо ,Сергей, за ваши труды. Запатронился по минималке, пока, на вас. Дальше больше)
Всем привет. Автору спасибо за урок. Очень занимательно) Возникло желание не вводить данные с клавиатуры, а заполнить массив случайными числами. Так вот в режиме отладки всё работает как должно, но в обычном режиме рандомайзер не работает) Код ниже. Кто может подсказать в чем дело?
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите число элементов в массиве");
int elementsCounts = int.Parse(Console.ReadLine());
int[] ArrayOne;
ArrayOne = new int[elementsCounts];
////////////Вывод массива рандомными числами//////////////
for (int i = 0; i < ArrayOne.Length; i++)
{
Random rnd = new Random();
int a = rnd.Next(0, 1000);
ArrayOne[i] = a;
Console.WriteLine(ArrayOne[i]);
}
/////////Сумма четных и нечетных элементов массива////////
int ArrayOneEven = 0;
int ArrayOneOdd = 0;
int ArrayOneEvenSum = 0;
int ArrayOneOddSum = 0;
for (int i = 0; i < ArrayOne.Length; i++)
{
if (ArrayOne[i] % 2 == 0)
{
ArrayOneEven++;
ArrayOneEvenSum += ArrayOne[i];
}
else
{
ArrayOneOdd++;
ArrayOneOddSum += ArrayOne[i];
}
}
Console.WriteLine("Сумма четных элементов массива:");
Console.WriteLine(ArrayOneEvenSum);
Console.WriteLine("Сумма нечетных элементов массива:");
Console.WriteLine(ArrayOneOddSum);
}
}
Разобрался :)
Просто лучший!!! Спасибо!
Сергей, спасибо!
сложнА) спс за уроки. Смотришь решение и так элементарно, а сам вообще не смог реализовать ввод из консоли данные в массив, чес слово... не хотел гуглить хотел допереть не получилось... не смог)
Огромное спасибо за толковый курс! Низкий поклон!!!
Что касается ДЗ - имхо все-таки надо более подробно описывать задачу (понимаю, что на реальном проекте за кларификацией надо идти к заказчику). Я к тому что задание звучит просто как "ЗАПОЛНИТЬ МАССИВ С КЛАВИАТУРЫ" Все! Не сказано что количество элементов массива тоже должно указываться пользователем. Но это ладно, эти 3 строки кода прикручиваются к дальнейшей реализации. А вот запрос и введение каждого элемента построчно, имхо опять же - такая себе идея. Я в своей реализации просто попросил пользователя ввести все числа и затем показал их ему. До этого программа начиналась просто с объявления цикла с рандомным кол-вом элементов. Вот как-то так:
static void Main(string[] args)
{
Console.Write("Введите количество элементов массива: ");
int elementsCount = int.Parse(Console.ReadLine());
int[] myArray = new int[elementsCount];
//3 верхних строки - условие добавленное при проверке ДЗ
// int[] myArray = new int[5];
Console.WriteLine("Введите числа для заполнения массива: ");
for (int i = 0; i < myArray.Length; i++)
{
int input = int.Parse(Console.ReadLine());
myArray[i] = input;
}
Console.WriteLine("Массив заполнен числами: ");
for (int i = 0; i < myArray.Length; i++)
{
Console.WriteLine(myArray[i]);
}
}
Здравствуйте
Для чего пишется $ в скобках от Console.Write?
Да тоже задался таким вопросом, и потом понял, что этот символ нужен чтобы внутри строчки можно было вывести переменную ( {i} ).
P.S. пишу это не для автора комментария а для людей у которых есть такой же вопрос.
@@user-et8cb7vu4c Это метод интерполяция , по факту мы могли написать Console.Write($"введите индекс" + i); и все бы работало .Интерполяция это более удобный способ сложения строк ,его часто используют программисты и поэтому наверное автор так написал
Сделал все домашнее задание. В принципе не сложно.)) Боже храни с++; , после этой базы знакомство с#, пока кажется легкой прогулкой. В ДЗ я пошел чуть дальше и указал не только наименьшее число в массиве, но и его индекс. Ну а в целом за уроки огромнейшее спасибо, не так много в нашем мире альтруистов осталось.Лектору здоровья и беспредельного профессионального роста.Надеюсь он и дальше нас будет радовать такими уроками.
Сколько сижу и не могу понять как получить макс и мин число с клавиатуры , подскажите пожалуйста если знаете ?
Спасибо за уроки!!!
Сергей, благодарю! Полезная информация, as always! :)
Сергей, спасибо вам большое. Очень помогли. Наконец-то все начало работать!
Спасибо за уроки.
Хех, а я ще додатково реалізував відлов помилок та очищення консолі від зайвого. Все задяки тому, що уроки дуже зрозумілі, зрідка тяжко деякі російські слова не знаю але для цього є перекладач. Сам програмував лише "Хелло Ворлд" на Турбо Паскалі років 15 тому, далі не осилив по книгах.
Ого, а я ось шукав відео, як зробити валідацію, але нажаль її тут немає, сам спочатку не дивлячись цього відео, зробив без валідації, а коли про неї вспомнив, застряг(
лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)
Первая часть далась легко. Пришлось правда заглянуть на несколько уроков назад чтобы вспомнить синтаксис массивнов)
(пользователь сам указывает длинну массива и данные находящиеся в массиве)
// запрос ввода размера массива
int arrayLength = int.Parse(Console.ReadLine());
int[] array = new int[arrayLength];
// заполнение массива данными
for (int i = 0; i < array.Length; i++)
{
Console.Write("Enter array " + (i+1) + " number :");
array[i] = int.Parse(Console.ReadLine());
}
// вывод данных массива
for (int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}
смотря сейчас на код понимаю что называть переменную arrayLength было ошибкой)
Просто спасибо. Лайк и подписка уже прожаты.
Во, блин... Я не понял первого задания, думал надо просто инициализировать массив руками. Конечно наступил на грабли, про которые говорится далее. Без отладчика хрена чего понял бы. Спасибо, что объяснили его важность в начале и продолжаете показывать его значимость.
int[] Massiv = { 101, 202, -303, -404, 505, 606, -707, -808, 909, 1010 };
int SummChetnyh = 0;
int Menshee = Massiv[0];
for (int i = Massiv.Length - 1; i >= 0; i--)
{
Console.WriteLine(Massiv[i]);
SummChetnyh = Massiv[i] % 2 == 0 ? SummChetnyh + Massiv[i] : SummChetnyh;
Menshee = Menshee > Massiv[i] ? Menshee = Massiv[i] : Menshee;
}
Console.WriteLine("Cумма четных чисел массива = "+SummChetnyh);
Console.WriteLine("Наименьшее число в массиве = "+Menshee);
Console.ReadLine();
И снова - огромное спасибо...
Задание с массивами мне далось легко, но прошлое задание с циклами я мучался, и в итоге не смог решить самостоятельно. но сейчас горжусь собой))
да?я смог тока сделать ячейки в массиве
Получилось сделать все дз. Но ты конечно сделал все более подробно и красиво . Спасибо за разбор!
Спасибо за разбор. Очень полезно!
Жду новых уроков, Сергей)
Респект Вам!
Один из вариантов - использовать следующий метод,
который автоматически определяет длину массива.
static Array InputStringToArray(string input)
{
// очистить string
string parsString = input.Replace(" ", "").Replace(",", "").Replace(".",""); // очистить string
//Создание Array и определение длины
int[] numbersFromChars = new int[parsString.Length];
// Наполнение Array
for (int i = 0; i < numbersFromChars.Length; i++)
{
// Важно использовать "ToString"
string tempCharachter = parsString[i].ToString();
int temp = int.Parse(tempCharachter); //Создать "int"
numbersFromChars[i] = temp; // заполнять Array
}
return numbersFromChars;
}
Благодарю, всё предельно доступно! Вы - лучший учитель на, по крайней мере, на you tube.
Дмитрий Алексеев у автора хороший рассказ. Но просто пересказ книг и видео раз в неделю. Витая книги по .net вы быстрее добьётесь успеха
Согласен автор хороший, но советую посмотреть парней ExtremeCode TV, по мне крайне занятно
@@andreybazhenov9741 Может быть, мне лень читать учебники, да и некогда (при условии, что всё так, как Вы сказали). Автор же делает это за меня, за что ему от меня низкий поклон!
Поддерживающий комментарий для развития канала
Объединила два задания: массив заполняется с клавиатуры и выводится на экран в обратном порядке
Console.WriteLine("Enter elements count: ");
int elementsCount = int.Parse(Console.ReadLine());
int[] myArray = new int[elementsCount];
for (int i = 0; i < myArray.Length; i++)
{
Console.Write($"Enter element {i}: ");
myArray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("
Array output:");
for (int i = myArray.Length - 1; i >= 0; i--)
{
Console.WriteLine(myArray[i]);
}
Console.ReadLine();
спасибо за задание. я пошел другим путем сократил весь код до 7 строк.
Console.Write("Заполните массив через пробел: ");
int[] arrayFilling = Console.ReadLine().Split().Select(int.Parse).ToArray();
for (int i = 0; i < arrayFilling.Length ; i++)
{
Console.WriteLine( $"
");
}
Console.ReadKey();
Класс. Сделал ровно так, как описано в разборе ДЗ.
одно скажу отладчик это сила! без отладчика что то понять новичку было бы вообще не возможно а тем более что то написать самому.
Для тех кто смотрит сейчас и не до конца разобрался, тут в уроке указан $ перед " " я учусь и мне стало интересно, вот делюсь:
Есть такие вариации вывода:
int Number1 = 12;
Console.WriteLine("Вывод переменной: " + Number1) // Вывод переменной: 12
Console.WriteLine("Вывод: {0}", Number1) //Вывод: 12
// Выше вывод с {0}, добавление новых перменных должно быть после завятой - вот так:
Console.WriteLine("Вывод: {0} | Переменная еще раз: {1}", Number1, Number1); // Вывод: 12 | Переменная еще раз: 12
// Если вы хотите например добавить к одной из переменной например +2 в вывод, то пишете:
Console.WriteLine("Вывод: {0} | Переменная + 2 = {1}", Number1, Number1 + 2); //Вывод: Вывод: 12 | Переменная + 2 = 14
// Тут добавление $ до ковычек, позволяет сразу добавить в { } нужную вам переменную, без приписок после ковычек:
Console.WriteLine($"Вывод переменной: {Number1}" // Вывод переменной: 12
гайд достоин человеческих уважени
Спасибо
Благодарю за урок.
Спасибо !!!
Спасибо большое за видео)
вопрос. а почему переменную для размера массива делаем int? при выполнении домашнего задания я делал uint
Благодарю
Топ, но я подобным способом и сам додумался, но забыл про валидацию, когда вспомнил, появились куча проблем, и не понимание, как это реализовать
окей, код стал на чуть лучше( хотя бы я понимаю как мыслить), но серавно у меня много хардкода(
Console.WriteLine("Это праграмма записывает в массив из 10 элементов натуральные числа");
int[] myArray = new int[10];
for (int i = 0; i < myArray.Length; i++)
{
Console.Write("Введите значение: ");
myArray[i] = Convert.ToInt32(Console.ReadLine());
}
for (int j = 0; j < myArray.Length; j++)
{
Console.Write(myArray[j]);
}
Console.ReadKey();
Кто может объяснить пожалуйста, почему и как он использовал { i }, в строке: Console.Write($"Введите элемент массива под индексом {i}: \t". А еще что делает знак доллара($) в начале строки?
знак доллара позволяет указывать переменные прямо внутри текста при условии что они указаны в {фигурных скобках}, набери код из видео и у дали знак $ теперь фигурные скобки становятся просто частью текста.
Этот значок доллара вроде как работает не везде, лазил по одному сайту с заданиями для новичков, так там все срались, у кого это работает, а у кого нет
@@ConnorRK-ol5tm ну да, можно и без него обойтись к примеру
Console.Write("PriVet{g}"+g);
@@yourdream28 И без "{g}", в таком случае
@@ConnorRK-ol5tm да? Просто там вроде должны быть скобки..ну ладно
вопрос ! а если вместо значений будут имена людей и мне нужно их в дальнейшем использовать на пример в применении в игре (отними в 0 ) и каждый игрок должен отнять определенное значение от 1 до4 чтобы добраться к нулю?
thanks
Огромное Вам Спасибо Сергей!!!!
У меня такой вопрос - если мы хоти помимо количества элементов задаваемых с помощью клавиатуры, задать название самого массива - можно ли так и как это сделать?
Сделал почти точь в точь за исключением некоторых моментов:
Console.WriteLine("Введите размер массива.");
int arrayElements = int.Parse(Console.ReadLine());
int[] newArray = new int[arrayElements];
for (int i = 0; i < arrayElements; i++)
{
int elementID = i+1;
Console.WriteLine("Введите значение элемента № " + elementID);
newArray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Ваш массив содержит следующие элементы:");
for (int a = 0; a < arrayElements; a++)
{
Console.WriteLine(newArray[a]);
}
Сергей, спасибо огромное за урок. Подскажите, пожалуйста, а Вы можете показать как заполнить массив по спирали (начало 1 последнее число в центре массива)?
Я вааще примитивно сделал очень, но сделал, обратный порядок тоже сделал, но так же примитивно, через декремент, а вот с суммой чётных чисел застрялБ может посмотрю выполнение заданий автором и появятся идеи.... Огромная благодарность за предоставляемую информацию. Я смогу
Спасибо за урок
а нормально то что я все уроки понимаю но большинство домашних сделать не могу? а если смотрю как их уже сделали то все понимаю, но все же сам не сделал
Какое значение у символа $ перед текстом $"Введите элемент....?
объяснил, а про бакс забыл
$ перед "text" значит что в строку можна засунуть другой тип данных, без конвертации. Пример: string str = $"text {variable}";
@Работа [Ailanto] я вот и забыл про $ совсем
@Работа [Ailanto] при чем тут "научитесь гуглить"? человек смотрит урок, в котором не разъяснили или просто забыли это сделать про $ перед текстом, соответственно он задал вопрос. С вашей логикой можно тогда вообще весь материал загуглить и учиться по книжкам/документациям, а разжеванный материал в принципе обесценить.
@@hackpulsar в данном случае это скорее метод интерполяция , по факту мы могли написать Console.Write($"введите индекс" + i); и все бы работало .Интерполяция это более удобный способ сложения строк ,его часто используют программисты и поэтому наверное автор так написал
Дякую за урок
Перед выполнением 2 цикла где хранятся числа, которые мы ввели? В памяти? почему они не будут спутаны и тд?(вдруг параллельно где-то еще что-то считается в памяти и тд.
Частично понял, что в дебагере внизу можно развернуть и посмотреть из чего в итоге состоит массив и в каком порядке идут цифры, но как это хранится и почему код выводит значение каждый раз - нет)
static void Main(string[] args)
{
Console.Write("Введите количество элементов массива: ");
int[] array = new int[Convert.ToInt32(Console.ReadLine())];
for (int i = 0; i < array.Length; i++)
array[i] = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < array.Length; i++)
Console.Write(array[i] + " ");
}
А как заполнить массив любым количеством значений? Вот в с++ вектор так работал да и с обычным массивом можно было такое провернуть, а вот как с С#?
Spasibo
Здравствуйте! А можно ли сделать так, чтобы вводимые элементы массива отображались не на новой стоке, а последовательно в той же самой. Причем после ввода очередного числа разделителем должен быть "энтер". Самостоятельное гугление этой моей хотелки результата не дало.
Комменту год но все-же если ещё кому понадобится. Если писать вместо WriteLine просто Write то переноса не будет и массив будет в одну строку. Автор говорит об этом но чуть для другого использует.
@@Nyamchik-0_0 Ещё лучше добавить следующую запись : Console.Write(myarray[i]+" ");
Тогда элементы будут идти отдельно друг от друга
У меня получилось так:
while (true)
{
Console.Write("Введите количество элементов в массиве: ");
int s = int.Parse(Console.ReadLine());
if (s
очень понравилась домашка
Всем привет. А кто подскажет, как включить вертикальные черточки между зависимыми кавычками операторов, как в видео? Все перерыл, не могу найти. прямо очень удобно выглядит.
Console.WriteLine("Укажите элементы вашего массива");
Console.WriteLine("Укажите первый элемент");
int firstEle = int.Parse(Console.ReadLine());
Console.WriteLine("Укажите второй элемент");
int secondEle = int.Parse(Console.ReadLine());
Console.WriteLine("Укажите третий элемент");
int thirdEle = int.Parse(Console.ReadLine());
Console.WriteLine("Вы хотите продолжить? Если да - введите 1, если нет 2");
int yes1 = int.Parse(Console.ReadLine());
if (yes1 == 2)
{
int[] myArray = { firstEle, secondEle, thirdEle };
for (int i = 0; i < myArray.Length; i++)
{
Console.WriteLine(myArray[i]);
}
}
else if (yes1 == 1)
{
Console.WriteLine("Укажите четвертый элемент");
int fourthEle = int.Parse(Console.ReadLine());
Console.WriteLine("Do you want to continue? If u do - type 1, if not - 2");
int yes2 = int.Parse(Console.ReadLine());
if (yes2 == 2)
{
int[] myArray = { firstEle, secondEle, thirdEle, fourthEle };
for (int i = 0; i < myArray.Length; i++)
{
Console.WriteLine(myArray[i]);
}
}
else if (yes2 == 1)
{
Console.WriteLine("Укажите пятый элемент");
int fivethEle = int.Parse(Console.ReadLine());
int[] myArray = { firstEle, secondEle, thirdEle, fourthEle, fivethEle };
for (int k = 0; k < myArray.Length; k++)
{
Console.WriteLine(myArray[k]);
}
}
}
Console.ReadLine();
В голову не приходило, как можно сделать, чтоб человек сам себе выбирал, сколько ему нужно элементов. Ограничился 5, Главное что для 5 оно работать будет :)
Это было легко,
int[] userNum;
Console.WriteLine("Введите длину массива");
int userLength = int.Parse(Console.ReadLine());
userNum = new int[userLength];
for (int i = 0; i < userNum.Length; i++)
{
Console.WriteLine("Введите значение для " + i + " массива:");
int enteredNum = int.Parse(Console.ReadLine());
userNum[i] = enteredNum;
}
for (int i = 0; i < userLength; i++)
{
Console.WriteLine("В массиве " + i + " находиться значение: " + userNum[i]);
}
Доброй ночи) изучаю плюсы. Вопрос: можно ли как-то запретить пользователю вводить, к примеру, больше 1 символа. То есть, когда пользователя попросят ввести символ, что бы он смог ток один ввести и всё.
Можно.Создай переменную допустим с значением 1 и засунь её в цикл и тогда он выполниться один раз ,то есть запишешь значение в один элемент ммасива
Нельзя, ну разве что уебать его палкой если будет вводить более одного символа. Животные быстро все понимают и учатся. У некоторых людей обучение может проходить несколько сложнее.
всё голову ломал почему не вывод на консоль кусок кода, а оказалось что компилировался другой проект :D
Уважаемый SimpleCode, расскажите, пожалуйста, как сделать то же самое, но
из приложения WinForms !!! Нигде не могу найти !!!!!
Спойлер! ДЗ:
1)
Console.WriteLine("Write length massiv: ");
int j = int.Parse(Console.ReadLine());
int[] inarray = new int[j];
for(int i = 0; i < inarray.Length; i++)
{
Console.WriteLine("Write meaning index " + i + " :" );
inarray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Meaning massiv: ");
for (int i = 0; i < inarray.Length; i++)
{
Console.WriteLine(inarray[i]);
}
Console.ReadLine();
2)
Console.WriteLine("Write length massiv: ");
int j = int.Parse(Console.ReadLine());
int[] inarray = new int[j];
for(int i = 0; i < inarray.Length; i++)
{
Console.WriteLine("Write meaning index " + i + " :" );
inarray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Meaning massiv: ");
for (int i = j - 1; i >= 0; i--)
{
Console.WriteLine(inarray[i]);
}
Console.ReadLine();
3)
Console.WriteLine("Write length massiv: ");
int j = int.Parse(Console.ReadLine());
int[] inarray = new int[j];
for(int i = 0; i < inarray.Length; i++)
{
Console.WriteLine("Write meaning index " + i + " :" );
inarray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Sum chet meaning massiv: ");
int sum = 0;
for (int i = 0; i < inarray.Length; i++)
{
if (inarray[i] % 2 == 0)
{
sum += inarray[i];
}
}
Console.WriteLine(sum);
Console.ReadLine();
4)
Console.WriteLine("Write length massiv: ");
int j = int.Parse(Console.ReadLine());
int[] inarray = new int[j];
for(int i = 0; i < inarray.Length; i++)
{
Console.WriteLine("Write meaning index " + i + " :" );
inarray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Min meaning massiv: ");
int start = inarray[0];
for (int i = 0; i < inarray.Length; i++)
{
if (start > inarray[i])
{
start = inarray[i];
}
}
Console.WriteLine(start);
Console.ReadLine();
Просто ставлю лайки и учу С++
Не подумал использовать цикл для перебора ввода, просто попросил пользователя указывать индекс элемента который он хочет исправить и сделал команду для заполнения массива случайными числами, чтобы не сойти с ума при дебаге.
А можно без elementsCount обойтись? Просто вот так:
int [] myArray = new int [int.Parse(Console.ReadLine())];
А зачем в строке введите элемент массива нужен был знак $,точнее я понимаю для чего,без него постоянно будет просто {i},но я смотря ролики внимательно не помню чтобы Серёга что-то говорил за это и сижу не понимаю
Это метод интерполяция , по факту мы могли написать Console.Write($"введите индекс" + i); и все бы работало .Интерполяция это более удобный способ сложения строк ,его часто используют программисты и поэтому наверное автор так написал
int[] mas = new int[5];
Console.WriteLine("\tЗаполните массив");
for (int i = 0; i < mas.Length; i++)
{
Console.Write("Введите значение массива [" + i + "]: ");
int numbermas = int.Parse(Console.ReadLine());
mas[i] = numbermas;
}
Console.WriteLine("
");
Console.Write("Массив: ");
for (int i = 0; i < mas.Length; i++)
{
Console.Write(mas[i] + "; ");
}
Мой вариант, похож очень
Поясните, пожалуйста, почему не работает данный код, ведь по сути всё тоже самое:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Console.Write("Введите кол-во элементов массива:\t");
int Q = int.Parse(Console.ReadLine());
int[] A = new int[Q];
for (int i = 1; i < Q++; i++)
{
Console.Write($"Введите элемент массива под индексом {i}:\t");
A[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Вывод массива");
for (int i=0; i
почему в первом for i = 1? зачем Q++?
Кто дошёл до этого видео и появляются дальше вопросы, может есть желание что-то обсудить. Могу помочь с чем-либо. Не знаю как тут оставить ссылку, если подскажите буду рад.
вобще я был бы не против помощи)
если есть у тебя дискорд, то можно по нику и тэгу найти, аналогично и с телеграмом.
@@user-zq8cg2gq3p как только его тут оставляешь, Ютуб удаляет коммент
@@zercooI напиши азбукой морзе)) типо -- --- .--- / -.. .. ... -.- --- .-. -.. / - .- -- / -... .-.. .- / -... .-.. .- / # .---- ..--- ...-- ....- потом другие переведут на обычный язык через переводчик
. странно но это единственное что я придумал
а будет работать если первом for вместо myArray.Length писать elementsCount?
Здравствуйте,у меня проблема в с++.Я создал какой-либо код,сохранил его как файл и оставил.Потом начал создавать новый код и вот начал проверять его в панели от Visual Studio,и открывается та старая программа,я учу ваш курс,нахожусь где-то на 18 видео.Я пробовал перезапуск программы и тд.,но не могу найти способ,чтобы появлялись новый проекты.
Если проблема в С++ то нужно напрямую обращаться к господину Страуструпу. Мол я нашел у вас баг в языке и бла бла бла
int[] Array = new int[elements];
for (int i = 0; i < Array.Length; i++)
{
Console.Write($"Введите элемент массива под индексом {i}: ");
Array[i] = int.Parse(Console.ReadLine());
}
Здравствуйте, а если нужно чтобы элемент массива был и числом и буквой. Ну например, слово любое русское или английское?
Поставь сердечко.
#SimpleCode, а ты не думал насчет цикла уроков по нейросетям на С-подобном языке? У тебя очень круто получается объяснять даже сложные темы (я прохожу твой курс по С++ и сейчас на многопоточном программировании). Крутая и актуальная тема в программировании. А если ты сможешь её объяснить и показать как её выполнять на С++ к примеру, было бы просто шикарно) Спасибо за твои уроки
Да он бы хотя бы курс по основам C# закончил, уже несколько лет выпускает по крупицам.
Улитка...
Вот лелая дз, откуда мне знать про этот элементс каунт
Вместо myArray = int.Parse(Console.Readline());
Написал int myArray = int.Parse(Console.Readline()) и не мог понять в чем причина
У меня такой вопрос: Почему переменные в циклах называются одинаково? То есть, в обеих циклах переменные называются i. По идее должно же по разному называться. Можете обяснить?
Переменные созданные в цикле не могут быть использованы за пределами их родного цикла. Если цикл использует переменную i и во вложенном цикле будет объявляться та же переменная, то будет выдавать ошибку, но если в двух не вложенных друг в друга циклах будет объявляться одна и та же переменная, то ошибки не будет. Не знаю понятно объяснил или нет, но как-то так)
@@ottoflamel7253 все все. Понял, спасибо
А можно уроки по WinApi ?
А как сделать так что мы не будем вводить какое колво элементов в массиве но будем заполнять массив столько сколько нужно и после завершения заполнения он сам создаст величину массива на столько элементов сколько мы вписали?
а зачем вам это?это выглядит не очень рационально для пользователя.а так предполагаю нужно реализовать через свитч т.к. надо сделать кнопку остановки записи
ну или через do while
Можно вбивать числа через пробел как строку, а потом с помощью Split (ранее не изучалось), указав символ разделения как пробел создать массив из множества элементов строки, разделённых пробелом, потом прогнать все эти элементы массива через Parse, чтобы были в итоге числа.
Доброго времени суток! А как вывести этот массив в одну строку?
я сделал немного по другому
Console.WriteLine("Введите размер массива");
int a = int.Parse(Console.ReadLine());
int[] myArray;
myArray = new int[a];
for (int i = 0; i < myArray.Length; i++)
{
Console.WriteLine("введите " + i + " элемент массива");
myArray[i] = int.Parse(Console.ReadLine());
}
А как сделать ввод массива с клавиатуры, если элементы массива не числа, а символы (слова, знаки препинания и др.)? Ломаю голову над этим
указываешь тип данных string вместо int и все
@@gannibal3929 спасибо) я так и сделала)
Блин а я сделал не так
int[] myArray = new int [4];
for(int i = 0; i < myArray.Length; i ++)
{
myArray[i] = int.Parse(Console.ReadLine());
}
Console.WriteLine("Your numbers: ");
for(int i = 0; i < myArray.Length; i++)
{
Console.WriteLine(myArray[i]);
}
Console.ReadLine();
*$*
Я не понял почему программа не ругается на то, что мы переменную типа string пытаемся вписать в тип int, когда используем метод ReadLine()? Ведь количество элементов массива - это число, a мы его пытаемся через ReadLine() запихнуть в переменную elementsCount типа int без конвертации. Что за магия?
Хоть это и не объяснялось, но логично что дело в методе Parse. Я переделал свой код используя этот метод и все тоже заработало.
Потому что используется метод parse, который переводит из типа даных стринг в инт, есть еще TryParse, хотя это и не нужно, но просто так написал, сам недавно это прошел@@yogurt1679
Не забудьте в конце написать Readline, а то второй цикл не будет выполнятся
как ввести массив из букв(строк)
А зачем парсить массив?
начал понимать что не начал понимать...
Этот видео ролик не смотрел и делал сам.
Можно узнать вашу критику, есть замечания к коду? Заранее спасибо))
{
Console.Write("Введите количество элементов массива: ");
int i = Convert.ToInt32(Console.ReadLine());
int[] myArray = new int[i];
for (int a = 0; a < i; a++)
{
Console.WriteLine("Введите элемент массива");
myArray[a] = Convert.ToInt32(Console.ReadLine());
}
for (int a = 0; a < i; a++)
{
if (a == 0)
{
Console.Write("Ваши элементы массива: "+ myArray[a] + ", ");
}
else
if (a == i - 1)
{
Console.Write(myArray[a] + ".");
}
else
{
Console.Write(myArray[a] + ", ");
}
}
Console.ReadKey();
}
Не так понял задание и нагородил там всего такого
О Боже, я себе весь мозг сломал, не понимая почему у меня после заполнения массива выводит пустой массив. Я до конца не хотел подглядывать в видос и таки до меня дошло:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ДЗ
{
class Program
{
static void Main(string[] args)
{
string str;
int i, conv;
int[] array = new int[5];
for (i = 0; i < 5; i++)
{
Console.WriteLine("Введите число");
str = Console.ReadLine();
conv = Convert.ToInt32(str);
conv = array[i]; // всего то нужно было написать наоборот "array[i] = conv;
"
}
Console.WriteLine("Вывод массива: ");
for (i = 0; i
На самом деле это и подкупает в программировании, нет никаких компромиссов, почти - тут не считается:)
Абсолютно не пойму эту тему.