Loading...
chefo1993 avatar chefo1993 2 Точки

Technology Fundamentals C#, 01.Sort Numbers

Здравейте! Имам проблем с тази задачка от упражненията, стигнах до някъде с if-else проверки, но явно не правя нещо като хората. Ако може да помогнете с някакъв код, ще съм благодарен. :)

Ето и моят код до тук: https://pastebin.com/btYhaSJQ

Тагове:
0
Fundamentals Module
Dani77 avatar Dani77 15 Точки
Best Answer

https://pastebin.com/bSGHd5Zx

Ето и моето решение. 

0
Ivanpavlov95 avatar Ivanpavlov95 32 Точки

Супер доста креативно решение!

0
krum142 avatar krum142 13 Точки

Ето един вариянт със Arrays .. който не сме учили още :DDD аз със помощ от google така го направих

using System;

namespace SortNumbers
{
    class Program
    {
        static void Main(string[] args)
        {
            
            int[] intArray = new int[3]; // със това създаваш 3 цифрен array

            for (int i = 0; i < intArray.Length; i++) // тук казваш цъкала да върти колкото е голям arraya
            {
                
                intArray[i] = int.Parse(Console.ReadLine()); // приемаш новата цифра от конзолата на всеки цъкъл (трите числа) и издлиза

            }
            Array.Sort(intArray); // сортира ги по големина ({4}{1}{3}={1}{3}{4})
            Array.Reverse(intArray); // обръща вече сортирания array иначе е от най малкото към най голямото {1}{3}{4}={4}{3}{1}

            for (int x = 0; x < intArray.Length; x++)
            {
                Console.WriteLine(intArray[x]); // и тук вече си ги разпечатваш сортирани = 4 3 1
            }
        }
    }
}

 

1
24/01/2019 12:27:42
chefo1993 avatar chefo1993 2 Точки

Благодаря! Да и аз си помислих да се помъча с масивите, но исках да я пробвам с наученото до момента. :) 

0
svetlakrasteva avatar svetlakrasteva 7 Точки

Аз съм с Java, намерих решение без array, но juge ми дава часовничета - дъло време за обработка:

import java.util.Scanner;

public class O1SortNumbers {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int num1 = Integer.parseInt(scanner.nextLine());
        int num2 = Integer.parseInt(scanner.nextLine());
        int num3 = Integer.parseInt(scanner.nextLine());

        int count = 0;
        for (int i = Integer.MAX_VALUE; count != 3; i--){
            if (num1 == i || num2 == i || num3 == i ){
                System.out.println(i);
                count++;
            }
        }
        }
    }




0
KaloyanStoyanovvv avatar KaloyanStoyanovvv 77 Точки

Здравей, това е моето решение на Java с проверки ---> https://pastebin.com/PZnCW4Yh  <--- дано се ориентираш.

0
24/01/2019 17:25:17
chefo1993 avatar chefo1993 2 Точки

Благодаря, да ориентирах се :) 

0
diljana avatar diljana 90 Точки

Здравей, изпращам ти моя код. При твоя липсва само последната проверка, когато n3 e най- голямото число от трите. 

https://pastebin.com/v46GWPkL

0
chefo1993 avatar chefo1993 2 Точки

Благодаря! :) Ще се възползвам от помощта.  Започнах и аз така и в един момент просто се изгубих в логиката и помислих, че няма да работи коректно... 

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

омг гледам ви тоговорите и ми се плаче честно. 

      for (int i = Integer.MAX_VALUE; count != 3; i--) как очакваш да не ти дава часовници като ти започваш от 4 милиарда май беше макса на int и ако ти дам 2-3-4 като числа ти правиш 4 милиарда операции в тоя цикъл wow...Интересно ми е къде си го намерила или как си стигнала до това решение.

https://pastebin.com/AfHdYLAs ето го,мога да го оптимизирам още доста вероятно,но не ви трябват масиви нищо,3 проверки и Math.max min 

мога да направя и един да изписвам резултата а не така,малко повтарям код,но айде да не правя чак такива щуротий,а и това да ${n} в стринга е безмислелено той компилатора ще си извика .tostring на числото сам,и няма ад му промени стойността.

 

1
SvetoslavPorozhanov avatar SvetoslavPorozhanov 4 Точки

Здравей, май-много ми хареса твоя код, защото е най-кратък. Не бях се сетил за Math.Min и Math.Max. Иначе намерих макса и мина по начина, който учихме в Programming Basics и после изредих проверки, за да открия средната стойност. Ето го и моето решение: https://pastebin.com/raw/SUiqKxCp 

0
koknq avatar koknq 24 Точки

using System;

namespace ConsoleApp7
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = int.Parse(Console.ReadLine());
            int b = int.Parse(Console.ReadLine());
            int c = int.Parse(Console.ReadLine());
            if(a<b && a<c)
            {
                if (b < c) { Console.WriteLine(c); Console.WriteLine(b); Console.WriteLine(a); }
               
                else { Console.WriteLine(b); Console.WriteLine(c); Console.WriteLine(a); }
            }
            else if(b<a && b<c)
            {
                if(a<c) { Console.WriteLine(c); Console.WriteLine(a); Console.WriteLine(b); }
                else { Console.WriteLine(a); Console.WriteLine(c); Console.WriteLine(b); }
            }
            else if(c<a && c<b)
            {
                if(a<b) { Console.WriteLine(b); Console.WriteLine(a); Console.WriteLine(c); }
                else { Console.WriteLine(a); Console.WriteLine(b); Console.WriteLine(c); }
            }
            else if(a==b)
            {
                if (a < c) { Console.WriteLine(c); Console.WriteLine(a); Console.WriteLine(b); }
                else { Console.WriteLine(c); Console.WriteLine(b); Console.WriteLine(a); }
            }
            else if(a==c)
            {
                if (a < b) { Console.WriteLine(b); Console.WriteLine(a); Console.WriteLine(c); }
                else { Console.WriteLine(c); Console.WriteLine(a); Console.WriteLine(b); }
            }
            else if(b==c)
            {
                if (b < a) { Console.WriteLine(a); Console.WriteLine(b); Console.WriteLine(c); }
                else { Console.WriteLine(c); Console.WriteLine(b); Console.WriteLine(a); }
            }
            


        }
    }
}

По най-просташкия начин 100/100 judge :D

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