Stránka: 1 z 1
| [ Príspevkov: 10 ] | |
Autor | Správa |
---|
Registrovaný: 05.05.13 Prihlásený: 06.05.13 Príspevky: 1 Témy: 1 | 1 |
Mohly by ste mi poradit ako to spravit chcem najprv urcit min a max cislo z nahodne vygenerovanych cisel v matici 10*10 a potom urcit jeho poziciu Kód: #include<iostream> using namespace std; int main() {
srand((unsigned) time (NULL)); double a; for(int i =0; i < 10; i++ ) // pocet riadkou { for(int i = 0; i< 10; i++) // pocet stlpcov { a = rand ()% 10 ; cout << a << " " ; } cout << "\n"; } cout << "najmensi prvok je:" <<"\n"; cout << "najvacsi prvok je:" <<"\n"; cout << "pozicia najmensieho prvku je:" <<"\n"; cout << "pozicia najvacsieho prvku je:" <<"\n";
getchar(); return 0; }
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Najlepšie je zisťovať min a max a ich pozíciu naraz. Sprav si dve premenné na min a max. max nastav na mínus nekonečno (nejaká veľmi malá hodnota) a min na plus nekonečno (nejaká veľmi veľká hodnota) V tomto prípade, keď generuješ čísla od 0 do 9, môže byť max kľudne -1 a min 10. Potom prechádzaš pole a vždy, keď narazíš na číslo väčšie ako max, tak ho proste nastavíš na nájdené číslo. To isté s min. A ako bonus si môžeš vždy, keď nastavuješ toto, nastaviť aj danú pozíciu. Ak by si chcel zisťovať všetky výskyty, tak najprv zistíš min a max a potom pole prejdeš znovu a uložíš si odpovedajúce pozície.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 24.08.12 Prihlásený: 09.02.19 Príspevky: 59 Témy: 0 | 0 |
Lepší a jednodušší než nějaká extrémní čísla je použít první hodnotu na kterou narazíš, a všechny ostatní s ní pak už jen porovnáváš... Tohle ti najde jen první výskyt: Kód: min=max=matice[0][0]; minr=mins=maxr=maxs=0;
for (radek=0;radek<10;++radek) for (sloupec=0;sloupec<10;++sloupec) if (matice[radek][sloupec]<min) { min=matice[radek][sloupec]; minr=radek; mins=sloupec; } else if (matice[radek][sloupec]>max) { max=matice[radek][sloupec]; maxr=radek; maxs=sloupec; }
_________________ "Existuje pouze jeden člověk, který má méně přátel než Bill Gates, a tím je Saddám Husajn." (Paul Grayson) |
|
Registrovaný: 14.03.11 Prihlásený: 04.07.24 Príspevky: 815 Témy: 23 | 23 Bydlisko: Bratislava |
použiť pre vnútorný cyklus tak isto nazvanú premennú ako pre vonkajší cyklus, to si vyžaduje FAKT veľkú odvahu.
|
|
Registrovaný: 19.09.13 Prihlásený: 02.08.14 Príspevky: 14 Témy: 2 | 2 |
dajte cely kod aj s porovnanim a poziciamy
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
lebo čo?
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 27.11.08 Prihlásený: 07.02.15 Príspevky: 373 Témy: 75 | 75 Bydlisko: Veľký Krtíš... |
Kód: for (int i=0; i<num; i++) { if (maxlvl<(int)treeTable[0][i]) { maxlvl = (int)treeTable[0][i]; // nacita sa pocet urovni stromu z modelu } } kod písaný v processingu, na zistenie najvacsieho prvku z poľa, viem napisat aj min, len otazka je ako napísať kod pre spočítanie počtu prvkov čiže napriklad mam ich tam 13 tak nech mi vypise 13 viete mi poradit
_________________ ACER AS5738ZG-424G50MN , 15,6" WXGA TFT displej (1366x768), Acer CrystalBrite, CPU Intel Pentium dual core T4200, RAM 4096MB DDR3 , HDD 500 GB SATA (5400rpm), GPU nVidia GeForce G 105M 512MB, Gigabit LAN, WiFi 802.11n (Acer SignalUp), OS Windows 7 Ultimate x64 Sk CP Sony Xperia T LT30p |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Najjednoduchšia možnosť je prejsť pole dva krát. Raz nájsť max a druhý krát spočítať, koľko krát tam je. Dá sa to ale aj jedným priechodom. Stačí len vo vhodnej chvíli inkrementovať a nulovať počítadlo
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 27.11.08 Prihlásený: 07.02.15 Príspevky: 373 Témy: 75 | 75 Bydlisko: Veľký Krtíš... |
vedel by si mi to napísať?? poradit ako by to malo vyzerať?
_________________ ACER AS5738ZG-424G50MN , 15,6" WXGA TFT displej (1366x768), Acer CrystalBrite, CPU Intel Pentium dual core T4200, RAM 4096MB DDR3 , HDD 500 GB SATA (5400rpm), GPU nVidia GeForce G 105M 512MB, Gigabit LAN, WiFi 802.11n (Acer SignalUp), OS Windows 7 Ultimate x64 Sk CP Sony Xperia T LT30p |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Kód: for( i = 0; i < len; i++ ) { if( pole[i] < min ) { min = pole[i]; c = 0; }
if( pole[i] == min ) c++; }
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Stránka: 1 z 1
| [ Príspevkov: 10 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Technológia .NET | 2 | 1720 | 27.12.2008 20:27 sento | | v Assembler, C, C++, Pascal, Java | 6 | 954 | 22.12.2008 22:21 Logik | | v Monitory, televízory a projektory | 2 | 304 | 19.01.2015 8:45 liqua1 | | v Assembler, C, C++, Pascal, Java | 3 | 306 | 23.03.2013 10:20 BX | | v Assembler, C, C++, Pascal, Java | 2 | 380 | 18.12.2016 21:50 BX | | v Assembler, C, C++, Pascal, Java | 4 | 2701 | 19.11.2009 15:09 reDo | | v Assembler, C, C++, Pascal, Java | 9 | 1717 | 30.07.2008 23:58 ado21 | | v Kúpim | 0 | 356 | 11.01.2012 2:48 notfake | | v Assembler, C, C++, Pascal, Java | 8 | 618 | 10.09.2012 12:18 Fico | | v JavaScript, VBScript, Ajax | 4 | 603 | 09.07.2012 16:43 Gresthorn | | v HTML, XHTML, XML, CSS | 11 | 817 | 14.04.2009 14:41 1daemon1 | | v JavaScript, VBScript, Ajax | 2 | 796 | 22.01.2008 12:46 mirec23 | | v JavaScript, VBScript, Ajax | 2 | 673 | 05.11.2009 15:29 emer | | v HTML, XHTML, XML, CSS | 11 | 718 | 31.08.2012 18:17 billy0 | | v Operačné systémy Microsoft | 0 | 543 | 18.04.2007 17:52 revenger29 | | v HTML, XHTML, XML, CSS | 2 | 376 | 18.07.2010 17:20 santaldino_15 |
|