Loading...
rado84 avatar rado84 1 Точки

Как да задам броят на числата за четене да е равен на едно въведено число?

Решавам задачите от simple loops и реших малка част от тях, но за друга идея си нямам как да задам броят на числата за четене да е равен на едно въведено число (задача 4, например). Тоест, ако напишеш 4, да очаква да получи 4 числа на всеки ред.

Тагове:
-1
Programming Basics
borislav9212 avatar borislav9212 745 Точки

Здравей, ето това е отговора на въпроса ти. въртиш един цикъл до числото и вътре четеш новите числа от конзолата.

  int number = int.Parse(Console.ReadLine());  
        for (int i = 0; i < number; i++)
        {
           int num = int.Parse(Console.ReadLine());
        }

Ето и решението на 4 задача -> http://pastebin.com/fPa9wpTE

1
14/06/2016 17:48:35
rado84 avatar rado84 1 Точки

Ясно защо не ми се получаваха нещата - не ми беше хрумнало да сложа Console.ReadLine вътре в цикъла.

Мерси.

0
14/06/2016 18:22:50
rado84 avatar rado84 1 Точки

А за да не пускам излишна тема, продължавам тук: използвам цикъла, който спомена по-горе за 5-та задача, но нещо не ми се получава. Независимо дали Console.WriteLine е вътре в условието или извън него, се случва едно и също:

            int number = int.Parse(Console.ReadLine());

            for (int i = 0; i < number; i++)
            { int num = int.Parse(Console.ReadLine()); }

            Console.WriteLine(Math.Max(number, num));

 

-1
KrasimirPetkov avatar KrasimirPetkov 328 Точки

В случая ти трябва променлива, в която да запазиш максималното число, а в друга променлива, числото, с което ще го сравняваш.

Тоест, като за начало (извън цикъла), декларираш int max = int.MinValue; - използваме MinValue, тъй като ако въведените числа са отрицателни, а max започва от 0, няма да се получи.

После (в самия цикъл) добавяш int num = int.Parse(Console.ReadLine()); за да си прочетеш числото, а след това пак в цикъла, ти трябва if-проверка: if (max<num) { max = num; } - така ако се въведе по-голямо число от сегашния max, то max става равно на него.

Същото може да се замени с max = Math.Max(max,num);

Накрая, след като приключи цикъла, отпечатваш max на конзолата.

Линк с решение: http://pastebin.com/gn3GSvTm

3
14/06/2016 18:56:58
KrasimirPetkov avatar KrasimirPetkov 328 Точки

DeyanPeychev, винаги се използва MinValue за конкретния тип.

Ако имаш int и зададеш max да е -999999, а аз въведа числата -1000000, -1000001 и -1000002, които се събират в int без никакъв проблем, те няма да са по-големи от началното max и програмата ще върне грешен отговор.

4
14/06/2016 19:12:25
DeyanPeychev avatar DeyanPeychev 21 Точки

Не го знаех това за MinValue, от скоро уча C#, до сега бях на C++, благодаря за инфото! smiley

3
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.