Pozzz! Imam jedan problem u c#, kod je sljedeci:
double[ ] niz=new double[brojac];
for ( int i =0; i<brojac; i++){
for(double x=41.654; x<755.741; x+=169.789)
{niz[i]=x;}
Ova petlja bi trebala popuniti niz sa double vrijednostima, npr niz[0]=41.654, niz[1] bi bio za 169.789 veci od niz[0], niz[2] za 169.789 veci od niz[1] itd....
No, ova petlja to ne radi, a ja nemam blage veze zasto?!
- +/- sve poruke
- ravni prikaz
- starije poruke gore
krivo radiš momče
double[] niz = new double[duljina niza];
for ( int i =0; i<duljina niza; i++)
{
for (double x = 41.654; x < 755.741; x += 169.789)
{
niz[i] = x;
}
}
evo popravljeno da radi kako si zamislio, slobodno copy paste, radit će
edit: fail by me, nisam shvatio što želi niti primjetio petlju unutar petlje =)
ali ovo opet nije najbolje rješenje za tvoj problem jer ti ovdje barataš sa fiksnim brojem, ako imaš npr 10 polja u nizu onda će ti jedan dio ostati prazan
edit: ispričavam se za double post x)
hmmm...haj molim te samo mi objasni razliku između tvog i mog koda? (varijabla brojac mi je cjelobrojna samo sam joj dala takvo ime, nije zapravo brojac.)
....i nisam momče, nego djevojče ;-)
hmmm...haj molim te samo mi objasni razliku između tvog i mog koda? (varijabla brojac mi je cjelobrojna samo sam joj dala takvo ime, nije zapravo brojac.)
....i nisam momče, nego djevojče ;-)
taj brojač mora imati isti broj da točno isti broj puta provrti petlju inače ti od toga nemaš ništa
no, u tvom kodu ima jedna greška, on će izvrtiti unutrašnju for petlju toliko puta koliko ima elemenata u nizu, tj. on će računati iz početka unutrašnju petlju toliko puta na novo koliko mu zada vanjska petlja
nisam prvo shvatio što želiš sa ovim zadatkom postići, no rješih, aplikacija zbraja taj x i izbaci ti rezultat samo jednom, ako to nije to, reci x)
double[] niz = new double[5];
int i = 0;
for (double x = 41.654; x < 755.741; x += 169.789)
{
niz[i] = x; i++;
}
for (int j = 0; j < i; j++) Console.WriteLine(niz[j]);
Console.ReadKey();
edit: vidjeh tvoj edit, to je to
Nazalost i ovaj kod radi isto kao i prethodni, i samo zbraja x, usput, nije rječ o console application, nego wpf...
Nazalost i ovaj kod radi isto kao i prethodni, i samo zbraja x, usput, nije rječ o console application, nego wpf...
neznam što si ti to kopirala, ali evo napravit ću ti cijeli gui i screenshotat
to je to što si pitala da tako želiš da ispadne, nije mi jasno što nije uredu, taj niz zbilja sadrži te elemente u sebi, nebitno da li je to wpf ili ne, isti ti vrag
kod:
double[] niz = new double[5];
int i = 0;
for (double x = 41.654; x < 755.741; x += 169.789)
{
niz[i] = x; i++;
}
for (int j = 0; j < i; j++)
{
Console.WriteLine("{0}. element niza iznosi {1}", j, niz[j]);
}
Console.ReadKey();
Ova petlja bi trebala popuniti niz sa double vrijednostima, npr niz[0]=41.654, niz[1] bi bio za 169.789 veci od niz[0], niz[2] za 169.789 veci od niz[1] itd....
Nzn tocno koji je cilj pa necu previse ulazit u detalje ali zar nije jednostavnije napisat formulu
broj na polju I je uvik jednak 41 + I*160 (na polju nula ti je taj pocetni koji si definirala a na svakom uducem + to nesto)
BTW Ako vec znas koji je pocetni broj onda nema smisla da ti taj int i bzvz stoji unutar funkcije i "smeta" ako ga di drugo odlucis koristit. Umisto da deklariras i vanka i prvo polje unutar for-a napravi obratno
double[] niz = new double[brojac];
niz[0] = 41.654;
for(int i = 1; i < brojac; i++)
niz[i] = niz[i-1] + 169.789;
Ok, međutim, ja sam iskopirala samo ovaj dio koda:
double[] niz = new double[5];
int i = 0;
for (double x = 41.654; x < 755.741; x += 169.789)
{
niz[i] = x; i++;
}
Nakon toga imam neredbe: txt0.Text=Convert.ToString(niz[0]); i tako za svaki član niza druga naredba....al on opet izbacuje isti broj za sve ........
Nisam vidjela tvoj zadnji post, pa sam ti poslala ovaj iznad.
u pravu si, ovo tvoje rješenje se čini puno jednostavnije od onog mog, nadam se i da ce funkcionirati, idem odmah da isprobam, hvala na savjetima
meni ovo radi savršeno
label1.Text = niz[0].ToString();
label2.Text = niz[1].ToString();
label3.Text = niz[3].ToString();
label4.Text = niz[4].ToString();
itd
edit: neznam koliko je efektivno koristiti convert.tostring(niz[0]); kada nije potrebno =)
Nisam vidjela tvoj zadnji post, pa sam ti poslala ovaj iznad.
u pravu si, ovo tvoje rješenje se čini puno jednostavnije od onog mog, nadam se i da ce funkcionirati, idem odmah da isprobam, hvala na savjetima
za hvala uvijek postoji tipka hvala
Ma ok to sto se tice tog convert, ne treba mi to nikako, nego sam samo stavila da mi sad izbacuje u textbox vrjednosti-cisto da vidim jeli radi, a taj niz mi zapravo treba racunati koordinate na ekranu (posto radim neku formu za printanje), samo sto sam ja malo pojednostavila upit, da ne kompliciram ;-)
edit: neznam koliko je efektivno koristiti convert.tostring(niz[0]); kada nije potrebno =)
Nije ti palo napamet da je .ToString() i Convert.ToString(nesto) potpuno isto?
napomenuo sam ako ce to koristit da sama sebi olaksa, lakse ti je napisati .tostring() nego convert.tostring(izraz)
ako ti to toliko smeta to sto sam skratio, zašto ti onda ne navodiš system.namespace.klasa.metoda i jos overload metode i sve moguce budalastine?