Loading...
Jacky97 avatar Jacky97 3 Точки

Max Number

C#

Здравейте ще може ли малко помощ търся решение на задачата Max Number от циклите while  само че не стигам до никъде поопитах други

колеги за идея те ми дадоха само че стигам само до 37/100 и не мога да разбера какъв е проблема и като цяло много да я разбера ще може ли малко помощ това ми е кода: https://pastebin.com/Zrmhwj08

това е кода с който ми помогнаха колегите int maxNumber = int. Minvalue If (num>maxNumber) { maxNumber = num }

съответно и с Min number предполагам че решението може да е подобно.

Благодаря предварително.

Тагове:
0
Programming Basics with C# 12/10/2019 14:40:02
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

Здравей,
дай едно услове и ще го погледна ;)

0
Jacky97 avatar Jacky97 3 Точки

5. Най-голямо число Напишете програма, която чете n-на брой цели числа (n > 0), въведени от потребителя, и намира най-голямото измежду тях. Първо се въвежда броят числа n, а след това самите n числа, по едно на ред.

това е задачата и нещо имам проблем с нея като цяло да я разбера да напиша кода ако може случайно да я разясниш малко ще съм ти много благодарен

0
12/10/2019 14:53:45
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

Ето едно примерно решение:

namespace MaxNumber
{
    using System;

    public class StartUp
    {
        public static void Main()
        {
            int numbers = int.Parse(Console.ReadLine());

            int maxNumber = int.MinValue;

            for (int i = 1; i <= numbers; i++)
            {
                int currentNumber = int.Parse(Console.ReadLine());

                if (currentNumber > maxNumber)
                {
                    maxNumber = currentNumber;
                }
            }

            Console.WriteLine(maxNumber);
        }
    }
}
 

0
Jacky97 avatar Jacky97 3 Точки

добре само че аз до днес не съм взел for и затова ми е объркано и не разбирах как да го използвам 

благодаря ти много за отделеното време.

0
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

използвам for защото е по подходящо за тази задача (от входа ти знаеш точния брои на числата които ще бъдат въвеждани). While се използва тогава когато искаш да прекратиш при някакво определено условие. примерно програмата да спре ако входа е равен на числото 5. в тази момент ти не знаеш кога ще дойде това число и би било добре да ги проверяваш с While но в твоя случай не е така. 
Как работи програмата:
1) четеш броя числа които ще проверяваш. int numbers = int.Parse(Console.ReadLine());
2) създаваш една променлива maxNumber - тя е равна на минималната стойност на int.
3) въртиш един for цикъл до броя на числата които ще четеш
4) при всяко завъртане инициализираш една променлива за сегашния номер int currentNumber = int.Parse(Console.ReadLine());
5) проверяваш дали тази стойност е по голяма от maxNumber

За другата задача логиката е същата но обърната на обратно.

Иначе ето и решение с While но не мисля че това е по-добрия вариант.
 

namespace MaxNumber
{
    using System;

    public class StartUp
    {
        public static void Main()
        {
            int numbers = int.Parse(Console.ReadLine());

            int maxNumber = int.MinValue;

            int count = 0;

            while (count != numbers)
            {
                int currentNumber = int.Parse(Console.ReadLine());

                if (currentNumber > maxNumber)
                {
                    maxNumber = currentNumber;
                }

                count++;
            }

            Console.WriteLine(maxNumber);
        }
    }
}
 

0
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

няма нищо страшно в тези форове, като имаш време ги разгледай. Ако имаш още някакви въпросаи давай на среща съм :)

 

0
Jacky97 avatar Jacky97 3 Точки

сега вече разбрах за какво става на въпрос аз се бърках в цялата работа защо max number ми трябва да е равен на min value и това ми го усложняваше. аз сега ще изгледам и лекцията за for че днес я взехме и ще си допълня всичко благодаря ти много наистина  ми помогна :)

 

1
EvgeniJD avatar EvgeniJD 35 Точки

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

using System;

namespace MaxNumber
{
    class Program
    {
        static void Main(string[] args)
        {
            int inputs = int.Parse(Console.ReadLine());
            int inputsCounter = 1;
            int number = 0;
            int maxNumber = int.MinValue;

            while (inputsCounter <= inputs)
            {
                inputsCounter++;
                number = int.Parse(Console.ReadLine());
                if (maxNumber <= number)
                {
                    maxNumber = number;
                }

            }
            Console.WriteLine(maxNumber);
        }
    }
}
 

0
MiraDyulgerova avatar MiraDyulgerova 0 Точки

namespace MaxNumber
{
    using System;

    public class StartUp
    {
        public static void Main()
        {
            int numbers = int.Parse(Console.ReadLine());

            int maxNumber = int.MinValue;

            int i =0;

            while(i < numbers)
            {
                int currentNumber = int.Parse(Console.ReadLine());

                if (currentNumber > maxNumber)
                {
                    maxNumber = currentNumber;
                }
                i++;

            }

            Console.WriteLine(maxNumber);
        }
    }
}

0
15/10/2019 00:25:14
nostrommo avatar nostrommo 2 Точки

Ето решение без for 

import java.util.Scanner;

public class MaxNumber {
    public static void main(String[] args)
    {
        Scanner input = new Scanner (System.in);
        int num = Integer.parseInt(input.nextLine());
        int s=1;
        int max=Integer.MIN_VALUE;

        while (s<=num)
        {
            s++;
            int in = Integer.parseInt(input.nextLine());
            if (in > max)
            {
                max= in;
            }
        }
        System.out.println(max);

    }
}
0
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

Ok но ние говорим за c#. Не мисля че е уместно да пускаш подобни коментари. Все пак това е programming basic не на всички им е лесно да четат код различен от техния език. 

0
nostrommo avatar nostrommo 2 Точки

Смешно е ... ако изобщо се чуваш. Алгоритъма е един... къв е проблема езика

 

0
kula7a avatar kula7a 0 Точки

function test(input){

let n = Number(input.shift());

let k = 1;

let num = Number.MIN_SAFE_INTEGER;

while (k<=n){

let num1 = Number(input.shift());

if (num1 > num)

{

num = num1;

}

++k;

}

console.log(num);

}

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