Avatar
ksonny
Člen
Avatar
ksonny:

Ahoj, jak vypíši seřazané pole? Jde mi vypsat akorát neseřazené :( Předem díky za odpověď :)

using System;

namespace sorty
{
    class Program
    {
        public static void Main(string[] args)
        {
            Program program = new Program();


            int[] array = { 1,85,52,4,-56,4,55626,1,765,86,65};


            program.Vypis(array);

            Console.ReadKey();
        }

        public static int[] SortArray(int[] array)
        {


            int temp = array[0];


            for (int i = 0; i < array.Length; i++)
            {
                for (int j = i + 1; j < array.Length; j++)
                {
                    if (array[i] > array[j])
                    {
                        temp = array[i];

                        array[i] = array[j];

                        array[j] = temp;
                    }
                }
            }

            return array;
        }

        public void Vypis(int [] array)
        {
            for(int i = 0; i < array.Length; i++)
            {
                Console.WriteLine(array[i]);
            }
        }



    }
}
Editováno 4.9.2014 0:00
 
Odpovědět 3.9.2014 23:57
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na ksonny
Jan Vargovský:

Začal bych tím, že bych tu metodu na sort zavolal.

 
Nahoru Odpovědět 4.9.2014 0:16
Avatar
ksonny
Člen
Avatar
Odpovídá na Jan Vargovský
ksonny:

Děkuju za bleskovou odpověď :)Díky blokaci odpovědi jsem na to nakonec po chvíli přišel, musel jsem odstranit static, děkuji :)

/*
 * Created by SharpDevelop.
 * User: KSonny
 * Date: 3.9.2014
 * Time: 22:09
 *
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;

namespace sorty
{
    class Program
    {
        public static void Main(string[] args)
        {
            Program program = new Program();


            int[] array = { 1,85,52,4,-56,4,55626,1,765,86,65};


            program.SortArray(array);
            program.Vypis(array);


            Console.ReadKey();
        }

        public int[] SortArray(int [] array)
        {


            int temp = array[0];


            for (int i = 0; i < array.Length; i++)
            {
                for (int j = i + 1; j < array.Length; j++)
                {
                    if (array[i] > array[j])
                    {
                        temp = array[i];

                        array[i] = array[j];

                        array[j] = temp;
                    }
                }
            }

            return array;
        }

        public void Vypis(int [] array)
        {
            for(int i = 0; i < array.Length; i++)
            {
                Console.WriteLine(array[i]);
            }
        }



    }
}
Editováno 4.9.2014 1:02
 
Nahoru Odpovědět 4.9.2014 1:01
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na ksonny
Jan Vargovský:

Ono by to šlo hledat i s tou statikou, jen bys to volal na název té třídy místo na instanci. Takže bys jen zavolal Program.Sort(...), popřípadě jen Sort(...), když už jsi uvnitř té třídy :)

 
Nahoru Odpovědět 4.9.2014 1:33
Avatar
Lukáš Křehula
Redaktor
Avatar
Lukáš Křehula:

Myslím, že by stačilo jen tohle.

program.Vypis(Array.Sort(array));
 
Nahoru Odpovědět 4.9.2014 9:14
Avatar
ksonny
Člen
Avatar
ksonny:

Vyzkouším doma, diky :)

 
Nahoru Odpovědět 4.9.2014 9:56
Avatar
ksonny
Člen
Avatar
Odpovídá na Lukáš Křehula
ksonny:

tak to nejde :)

program.Vypis(Array.Sort(array));
 
Nahoru Odpovědět 4.9.2014 13:56
Avatar
Odpovídá na ksonny
sadlomaslox25:

tak ono by se to chtelo aj trochu zamyslet ze ;)
metoda "Vypis" prijima argument typu pole a metoda Sort vraci void

 
Nahoru Odpovědět 4.9.2014 14:02
Avatar
Odpovídá na sadlomaslox25
Ondřej Štorc:

Hele jestli nejsem slepej tak SortArray nevraci void, ale ksonny volá nejspíš nexistujíci metodu Sort když existuje jen SortArray :)

Nahoru Odpovědět  +2 4.9.2014 15:24
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na Ondřej Štorc
Šimon Raichl:

Ne, metoda SortArray neexistuje, ale Sort ve třídě Array, jak psal Kaczmi, pro jistotu jsem googlil: http://www.csharp-examples.net/sort-array/

 
Nahoru Odpovědět  -1 4.9.2014 15:37
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na sadlomaslox25
Šimon Raichl:

Na co by ta metoda byla, kdyby nic nevracela?

Editováno 4.9.2014 15:43
 
Nahoru Odpovědět 4.9.2014 15:40
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Šimon Raichl
Jiří Gracík:

Metodu SortArray tam má on napsanou ...

Nahoru Odpovědět 4.9.2014 15:41
Creating websites is awesome till you see the result in another browser ...
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Šimon Raichl
Jiří Gracík:
public static int[] SortArray(int[] array)
         {


             int temp = array[0];


             for (int i = 0; i < array.Length; i++)
             {
                 for (int j = i + 1; j < array.Length; j++)
                 {
                     if (array[i] > array[j])
                     {
                         temp = array[i];

                         array[i] = array[j];

                         array[j] = temp;
                     }
                 }
             }

             return array;
         }

Tak v tom případě existuje, ne?

Editováno 4.9.2014 15:46
Nahoru Odpovědět 4.9.2014 15:45
Creating websites is awesome till you see the result in another browser ...
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na ksonny
Šimon Raichl:

Array.Sort by měl fungovat, díky tomu nemusíš psát třídící algoritmus.

 
Nahoru Odpovědět 4.9.2014 15:46
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na Jiří Gracík
Šimon Raichl:

Ale to je vlastní metoda

Editováno 4.9.2014 15:47
 
Nahoru Odpovědět 4.9.2014 15:47
Avatar
Šimon Raichl
Redaktor
Avatar
 
Nahoru Odpovědět 4.9.2014 15:48
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Šimon Raichl
Jiří Gracík:

A to znamená, že neexistuje? Aha.

Mimochodem, z nějakého důvodu asi má vlastní metodu na třídění, jen tak tam nebude.

Nahoru Odpovědět 4.9.2014 15:49
Creating websites is awesome till you see the result in another browser ...
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na Jiří Gracík
Šimon Raichl:

Já vím, ale já si jí nevšiml, a nemam nic proti zápisu vlastního algoritmu.

 
Nahoru Odpovědět 4.9.2014 15:50
Avatar
ksonny
Člen
Avatar
ksonny:

prostě jsem si jen hrál s metodami, chtěl jsem vyzkoušet, jak se s tim pracuje, tak jsem si napsal metodu SortArray :)

 
Nahoru Odpovědět  +1 4.9.2014 16:09
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na ksonny
Jiří Gracík:
program.Vypis(SortArray(array));

A ta metoda SortArray by asi neměla být statická :)

Editováno 4.9.2014 16:11
Nahoru Odpovědět 4.9.2014 16:10
Creating websites is awesome till you see the result in another browser ...
Avatar
ksonny
Člen
Avatar
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na ksonny
Šimon Raichl:

Jasně proč ne :D? Ale proč to neudělat jednoduššeji?

 
Nahoru Odpovědět 4.9.2014 22:48
Avatar
ksonny
Člen
Avatar
ksonny:

potřeboval jsem se prostě naučit používat metody a chtěl jsem to vyzkoušet na něco, kde se objevuje pole

 
Nahoru Odpovědět 4.9.2014 23:44
Avatar
Šimon Raichl
Redaktor
Avatar
Odpovídá na ksonny
Šimon Raichl:

Jak říkám, nic proti tomu nemám, a je jen dobře, že si to zkoušíš, možná se ti to bude někdy hodit :)

 
Nahoru Odpovědět 4.9.2014 23:49
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 25 zpráv z 25.