Няколко души питаха за 3 -тата задача - ето аз как я реших:
int n = int.Parse(Console.ReadLine());
int num = int.Parse(Console.ReadLine());
int min = num;
int max = num;
int sum = num;
double avg = sum;
for (int i = 1; i < n; i++)
{
num = int.Parse(Console.ReadLine());
if (num < min)
{
min = num;
}
if (num > max)
{
max = num;
}
sum = sum + num;
avg = (double)sum / n;
}
Console.WriteLine("min = {0}", min);
Console.WriteLine("max = {0}", max);
Console.WriteLine("sum = {0}", sum);
Console.WriteLine("avg = {0:F2}", avg);
Някой да е решил ,10 задача , но без вградени функции ? Ако може да пусне решението ?
Здравейте! Това са моите решения:
Problem 2.Numbers Not Divisible By 3 And 7
Problem 3.Min Max Sum And Average Of N Numbers
Problem 4.Print A Deck Of 52 Cards
Problem 5.Calculate 1 + 1!/X + 2!/X2 + … + N!/XN
Problem 7.Calculate N! / (K! * (N-K)!)
Problem 10.Odd And Even Product
Problem 11.Random Numbers In Given Range
Problem 12.Randomize The Numbers 1 To N
Problem 13.Binary To Decimal Number
Problem 14.Decimal To Binary Number
Problem 15.Hexadecimal To Decimal Number
Problem 16.Decimal To Hexadecimal Number
Problem 18.Trailing Zeroes In N Factorial
Очаквам вашите препоръки и мнения.
Здравейте,
На задача 11 имам работещо решение, но не мога да разбера защо рандом класа не работи както трябва. Нали за да получим случайно число между интервал от числата Min и Маx слагаме rnd.Next(max) + min, както си е по учебника. Правя го по този начин, но числата които се генерират не са от искания ни интервал ами се получават някакви напълно случайни числа. Ще видите как съм се справил с проблема, но просто ми е интересно къде бъркам и как да го синтезирам правилно следващия път за да получавам правилно числа в даден обхват.
На задачата decimal to binary number имам нужда от малко помощ, колеги. Ето линк http://pastebin.com/9qfwDef6, не знам как да го ривърсна. Извежда правилен резултат, но ако е ривърснат.
Заповядай.. това би ти помогнало :)) http://pastebin.com/Pb5bJnCK
Ето я моята, готова работеща , в момента работя над тези задачи и аз , внимавай вкарва се тип лонг - а резултата се иска да е от тип стринг ! И това малко променя кода ! http://pastebin.com/swwEydfr
Зонтак - каква е тази команда -
string binary = string.Empty;
Какво прави string.Empty ?
Не сме учили още такова нещо
Успях да го ривърсна и сега работи много добре. Обаче сега се сетих, че кодът ми не работи с отрицателни числа. Трябва ли да работи с отрицателни числа или не е нужно? В условието не пише input n в какви граници е.
Не само с положителни трябва - ориентирай се по примерите !
но ако искаш ,сложи отрицателните числа в грешен инпут - но не се изисква в тази задача !
Ето и моето решение на Problem 19.**Spiral Matrix
Наков многократно спомена, че с лист и химикал нещата стават по-лесно.ПРАВЕТЕ ГО!
Два дни я мъчих тази задача, съответно само гледайки примерите от домашното.Да, ама не. Там максималната стойност е 4 и е трудно да се види закономерността за смяна на посоката.Днес изкопах от google това и я реших за 15 минути...
Привет колеги,
Проблем 4: Print a deck of 52 cards
Каква според вас е идеята на switch-case конструкцията в задачата?
Не мога да си обясня логиката и подредбата. Решението изисква ли нещо да бъде въведено от потребителя ? В условието не личи.
Ако може да споделите мнението ви?
С for-loops & foreach - решението е ясно - изисква се само печатане без въвеждане на данни.
Не трябва да се въвежда нищо, просто да се принтират всички карти във всички бои :). А switch-case аз съм ползвал за "J,Q,K,А"
http://pastebin.com/dWEdJCki това е моето решениеДа, бях я написала с два foreach цикъла, но от варианта на coaster | 30/03/2014 23:37:52 се ориентирах за идеята - за какво да се използва switch-а в задачата. Ето и
Problem 4. PrintADeckOf52Cards решението.
Твоето решение е интересно, благодаря frisky !
Edit:
Loops: Problem 19. SpiralMatrix и останалите задачи от домашното.
Доста си поблъсках главата :) Имах няколко варианта, но само този успях да развия. Може да се реши и със switch.
Логика:
Всяка страна (ако n = 5: от 1 до 5, от 6 до 13 и т.н. до n*n) на матрицата е наречена Стъпка.
За който и да е n, основните стъпки в матрицата са 4 (първите 4 и после се повтарят в същия ред), като през една стъпка дължината намалява с променливите rowMin, rowMax, colMin, colMax т.е.:
Общият брой на стъпките за всеки n е: steps = (2 * n) - 1;
На нечетните Стъпки, през 4: 1, 5, 9.. colMin += 1; col++; за row == rowMin && col == colMin;
На четните, през 4: 2, 6, 10.. rowMin += 1; row++; за row == rowMin && col == colMax;
На нечетните, през 4: 3, 7, 11... colMax -= 1; col --; за row == rowMax && col == colMax;
На четните, през 4: 4, 8, 12... rowMax -= 1; row --; за row == rowMax && col == colMin;
Приветствам идеи за съкращаване и опростяване на кода.
Здравейте! От 7-ма, пък даже и 6-та задача май трябва да се ползва BigInteger, който е в System.Numerics. Обаче като напиша
Десен бутон на project-a --> add --> reference --> System.Numerics маркираш го и трябва да работи :)
Друго си е да ти подскаже някой! Много благодаря, колега! :)
Биг Итежер е описан много добре в учебника - аз от там си го прочетох .
Внимавайте в четирите задачи за превръщане от една в бройна система в друга на всяка една се вкарват и изкарват различни типове данни.
На задача 10 (OddAndEvenProduct), как да направя inputа да се въвежда на един ред с интервали. Ето го моето решение. http://pastebin.com/q5WMWjwJ
Прочети ги като стринг и после използвай string.Split() метод. Можеш да потърсиш инфо за начина на използване в msdn или където ти душа иска.
string input = Console.ReadLine();
string[] inputToParse = input.Split(' ');
int[] nums = new int[inputToParse.Length];
for (int i = 0; i < nums.Length; i++)
{
nums[i] = int.Parse(inputToParse[i]);
}
Това е "моята" версия.
Искам да реша проблема без да използшам масив.
Console.Write("Enter your numbers : ");
string numbers = Console.ReadLine();
int odd = 1;
int even = 1;
for (int i = 0; i <numbers.Length; i++)
{
if (Convert.ToInt32(numbers.Split(' ')[i])%2==0)
{
odd *= Convert.ToInt32(numbers.Split(' ')[i]);
}
else
{
even *= Convert.ToInt32(numbers.Split(' ')[i]);
}
}
if (odd==even)
{
Console.WriteLine("yes");
Console.WriteLine("product = {0}", odd);
}
else
{
Console.WriteLine("no");
Console.WriteLine("odd_product = {0}", odd);
Console.WriteLine("even_product = {0}", even);
}
Това успях да измисля, но ми хвърля IndexOutOfRangeException
помощ!!!
Миличка,защо не започнеш да качваш кодовете си в гид хъб или пейст бин.. нали ти е ясно ,че докато прелистя страницата да намеря дадено нещо скъсам скрола от въртене и прочитам мегабайти ненужна информация.. ;ххххххххххххххххххххххххххххххххххххххххххххххххххххх Драсни ми ако не знаеш как ще ти покажа.. за благото на всички :))
Знам, миличък, но за такова късо кодче - просто не си заслужава !
Виж , ако ми кажеш, как да качвам тук картинки - цена няма да имаш !
Като пишеш коментар, цъкаш на Insert --> Insert Image... Source .. Като на Source слагаш линк от прикачения скрийн в www.prikachi.com примерно или друг такъв сайт :)