[ Chieftecman @ 03.03.2008. 20:28 ] @
Radim (citaj: ucim) u C#-u i treba mi pomoc za nizove. Imam int[] myArrayX i zelim da dodelim tom nizu vrednosti od 1 do 20, kako to mogu da uradim? Nesto kao sto u paskalu ide x:array[1..20]! |
[ Chieftecman @ 03.03.2008. 20:28 ] @
[ 01011011 @ 03.03.2008. 21:02 ] @
Code: int [] myArrayX; myArrayX = new int[21]; Ovo ce napraviti niz koji ce sadrziti 20 stvari od 0 - 20; [ Chieftecman @ 03.03.2008. 22:34 ] @
Evo da kazem sta treba da uradim: program treba da ispise sve elemente array-a!
Ovako sam to sastavio: Code: static void Main(string[] args) { int[] myArrayX; myArrayX = new int[21]; //int[] myArrayY = new int[20]; foreach (int broj in myArrayX) { Console.WriteLine(myArrayX[broj]); } Console.ReadLine(); } Sta ne valja? Ispisuje mi 20 nula (0)! [ 01011011 @ 03.03.2008. 22:50 ] @
Ovo sto sam ti ja napisao, ti pravi 20 elemenata, a ne pravi ti vrednosti tih elemenata?
Ti znaci zelis da imas od 20 elemenata od 0 do 19, brojevi da budu vrednosti? [ Chieftecman @ 03.03.2008. 23:00 ] @
Citat: Ti znaci zelis da imas od 20 elemenata od 0 do 19, brojevi da budu vrednosti? Citat: Imam int[] myArrayX i zelim da dodelim tom nizu vrednosti od 1 do 20, kako to mogu da uradim? Da zelim da brojevi budu {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20}, al da ne pisem ovoliko (u slucaju da mi treba 1000 brojeva :D); [ 01011011 @ 03.03.2008. 23:06 ] @
Treba ti ustvari ovo kako sam skontao :)
Code: static void Main(string[] args) { int[] myArrayX = new int[20] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20}; for (int i = 0; i < myArrayX.Length; i++) { Console.WriteLine(myArrayX[i].ToString()); } Console.ReadLine(); } e sad zelis da ti se ovo gore 1 do 20 ne pise manualno... ok... sad ce mo napraviti loop... [ Shadowed @ 03.03.2008. 23:08 ] @
Ne treba ti niz da bi ih ispisao. Mozes ovako:
Code: for (int i = 1; i <= 20; i++) Console.WriteLine(i.ToString()); (ne mora {} kada je jedan red). Ako hoces sa nizom, onda isto to, samo umesto pisanja na konzoli, dodeljujes elementima (koristi za index i-1) a onda taj tvoj foreach. Mada je to naravno bez veze za ista realno jer mozes jednostavnije kao sto sam gore. [ 01011011 @ 03.03.2008. 23:08 ] @
Koliko sam shvatio trazio je niz od integera... evo ti ono sto trazis, sad samo promenis broj gore u nizu i to je to...
Code: int[] myArrayX = new int[20]; for (int i = 0; i < myArrayX.Length; i++) { myArrayX[i] = i + 1; Console.WriteLine(myArrayX[i].ToString()); } Console.ReadLine(); [ Chieftecman @ 03.03.2008. 23:17 ] @
Citat: Ne treba ti niz da bi ih ispisao. Mozes ovako: Code: for (int i = 1; i <= 20; i++) Console.WriteLine(i.ToString()); (ne mora {} kada je jedan red). Ako hoces sa nizom, onda isto to, samo umesto pisanja na konzoli, dodeljujes elementima (koristi za index i-1) a onda taj tvoj foreach. Mada je to naravno bez veze za ista realno jer mozes jednostavnije kao sto sam gore. Znam da netreba niz, ali hocu da vezbam niz-ove, a { i } stavljam kad imam 1 red da bi lepo formatirao text: Kad ne stavim {} - for(int i=1;i<myArrayX.Length;i++) Kad stavim {} - for (int i = 1; i < myArrayX.Length; i++ ) ps. nikako ne moze da mi proradi sa 'foreach'! [ 01011011 @ 03.03.2008. 23:38 ] @
Pazi ovo sto sam tija napisao evo procitaj komente iznad koda i bice ti jasno valjda..
Code: public static void RunSnippet() { //treba ti novi array tipa integer koji ima 20 elemenata int[] myArrayX = new int[20]; //predji kroz svih 20 elemenata for (int i = 0; i < myArrayX.Length; i++) { //Ovdje dodajes elemente npr: myArrayX[0] = 1; itd myArrayX[i] = i + 1; Console.WriteLine("Element " + i + " - vrednost " + myArrayX[i].ToString()); //procitaj svaku vrednost elementa } //citas elemente i vrednosti elemenata, da si samo ovo uradio prije nista ti ne bi bilo nego nule, posto si dodjelio vrednosti elementima gore // sad mozes da koristis da vidis ove elemente foreach (int broj in myArrayX) { Console.WriteLine("Element " + broj + " - vrednost " + myArrayX[broj].ToString()); } Console.ReadLine(); } [ Chieftecman @ 04.03.2008. 00:14 ] @
E sade radi - Hvala 01011011
pozdrav Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|