IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
jesmot
Člen
Avatar
jesmot:22.1.2020 21:08

Ahoj, možná to bude znít jako úplná blbost a možná i řešení bude úplně banální, ale pořád na to nějak nemůžu přijít. Snažím se vypsat z náhodných prvků maximum a minimum. To by samo o sobě problém nebyl.

using System;
using System.Linq;

namespace MinMax
{
        class Program
        {
                public static void Main(string[] args)
                {
                        int[] cisla = new int[10];

                        Random R = new Random();
                        int rozsah = 1000;
                        int n;

                        for (int i=0; i<10; i++)
                        {

                        n = R.Next(0,rozsah);
                        cisla[i] = n;
                        Console.Write(cisla[i] +"  ");

                                Console.WriteLine();
                        }

                        Console.WriteLine("");
                        Console.Write("Minimem ze zadaných čísel je číslo ");
                        Console.WriteLine(cisla.Min());
                        Console.Write("Maximem ze zadaných čísel je číslo ");
                        Console.WriteLine(cisla.Max());
                        Console.WriteLine("");
                        Console.ReadKey();
                }
        }
}

Chtěl jsem to ale převést do matice 10 na 10, to taky není problém, jen to vyhledávání pak nefunguje. Tak kdyby měl někdo nějaký nápad, budu rád. Chtěl bych to doplnit i o výpis pozice, na které se číslo nachází, ale to není prioritou.

using System;
using System.Linq;

namespace Random
{
        class Program
        {
                public static void Main(string[] args)
                {
                        int[,] cisla = new int[10,10];

                        Random R = new Random();
                        int rozsah = 1000;
                        int n;

                        for (int i=0; i<10; i++)
                        {
                                for (int j=0; j<10; j++)
                                {

                                n = R.Next(0,rozsah);
                                cisla[i,j] = n;
                                Console.Write(cisla[i,j] +"  ");
                                }
                                Console.WriteLine();
                        }
                        Console.ReadKey();
                }
        }
}
 
Odpovědět
22.1.2020 21:08
Avatar
Odpovídá na jesmot
Michael Škrášek:22.1.2020 21:39

Můžeš si ukládat min a max v průběhu generování čísel do matice:
nastavíš min a max na první číslo, vygeneruješ 2. číslo, zkontroluješ jestli není větší jak max nebo menší jak min ...

nebo můžeš využít LINQ:

int min = cisla.Cast<int>().Min();
int max = cisla.Cast<int>().Max();
Editováno 22.1.2020 21:40
Nahoru Odpovědět
22.1.2020 21:39
"I choose a lazy person to do a hard job. Because that person will find an easy way to do it. " Bill Gates
Avatar
jesmot
Člen
Avatar
Odpovídá na Michael Škrášek
jesmot:22.1.2020 22:07

Děkuji, jasně přes LINQ mě to vůbec nenapadlo. Už to krásně šlape. Moc děkuji.

 
Nahoru Odpovědět
22.1.2020 22:07
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 3 zpráv z 3.