Kezdőoldal » Számítástechnika » Programozás » Van kettő darab tömböm és...

2105as kérdése:

Van kettő darab tömböm és párhuzamosan feltöltöm (név, osztályzat) hogyan kell kiíratni az ötös neveit?

Figyelt kérdés

Az én gondolat menetem :

(részlet)

string [] nev = new string [c];

int [] numbers = new int [c];

for ( i = 0; i < c; i++)

{

Console.Write("A meg a(z) {0} tanuló nevét: ",i+1);

nev[i] = Console.ReadLine();

numbers[i] = r.Next(1, 5+1);


}

int su=0;

string [] seged = new String [c];

for ( i = 0; i <c; i++)

{

if (numbers[i] == 5)

{

seged[i] = nev[i];

su++;

Console.Write("{0}" , seged[i]);

}

if (su<=0)

Console.WriteLine("Nincsen ilyen tanuló!");



A tanár mindig mondja, hogy while ciklussal oldjuk meg , de az ilyet nem lehet vagy igen ?

Minden egyen elemet meg kell vizsgálni hogy egyenlő-e öttel (==5), és a while addig fut amíg igaz a feltétele és ha bekap egy pl : 4 ak kilép és ha még van untánna pl : 3 osztályzat és a 3közt még van ötös akkor annak a nevét már nem írja ki.

While lehet ? Vagy nem ?


2017. febr. 7. 20:19
1 2
 11/14 anonim ***** válasza:

Na jó, akkor tisztázzuk a ciklusokat is, mert nagy félreértés van a dologban.

Ciklusokból igazából négyféle van:

- Feltételes ciklusok

- Előírt lépésszámú ciklusok

- Bejáró ciklusok

- Végtelen ciklusok


A feltételes ciklusokat onnan ismerhetitek fel, hogy van hozzá egy logikai kifejezés. Aszerint, hogy mikor értékeljük ki ezt a logikai kifejezést, a feltételes ciklus lehet:

- előltesztelő (előbb kiértékelődik a feltétel, és csak ezt követően hajtódik végre a ciklusmag)

- hátultesztelő (előbb hajtódik végre a ciklusmag, és csak ezt követően értékelődik ki a feltétel)

Attól függően, hogy a feltételes ciklus a logikai kifejezés kiértékelése után végrehajtja-e vagy sem a ciklusmagot, az függ attól, hogy a ciklus:

- kezdőfeltétele-s (akkor hajtódik végre a ciklusmag, ha a logikai kifejezést kiértékelve igaz értéket kapunk)

- végfeltételes (akkor hajtódik végre a ciklusmag, ha a logikai kifejezést kiértékelve hamis értéket kapunk)


Szóval, a C#-pos while és for ciklus ezek alapján:

- feltételes ciklus, mivel a ciklusmag végrehajtását egy logikai kifejezés értéke dönti el

- előltesztelő, mivel előbb értékelődik ki a logikai kifejezés értéke, minthogy végrehajtódna a ciklusmag

- kezdőfeltételes, mivel a ciklusmag csak akkor hajtódik végre, ha a logikai kifejezést kiértékelve igaz értéket kaptunk.


Előírt lépésszámú ciklus esetében mindig megadunk egy kezdő, illetve egy végértéket, valamint egy ciklusváltozót. Erre egy példa a Pascal nyelv for ciklusa:

for i:=1 to 10 do

for i:=10 downto 1 do


Bejáró ciklusok esetében mindig van egy olyan adatszerkezet, amelynek az elemeit fel tudjuk sorolni. Például egy tömb, lista, esetleg string, stb. Továbbá mindig meg kell adni egy változót, hogy az éppen kiválasztott elemet "milyen néven akarod elérni". Erre egy példa a C# foreach ciklusa.


A végtelen ciklus pedig egyszerű, egyszerűen csak a végtelenségig ismétli magát:

LOOP:


GOTO LOOP;

Ezt általában ciklusmegszakító utasítással állítjuk le (pl. break).

2017. febr. 8. 12:07
Hasznos számodra ez a válasz?
 12/14 anonim ***** válasza:
Jó lenne asszociatív tömböt használni, de mivel nincs, így a jegyek listájában kell megkeresned az ötösök indexeit, majd a nevek tömbjéből kiválasztani az ezekhez tartozó indexeket.
2017. febr. 8. 15:51
Hasznos számodra ez a válasz?
 13/14 Hominida ***** válasza:
#9, átgondoltam már elsőre is. Persze, hogy használható a FOR is a WHILE minden szerepében, mert meg lehet oldani. De ahogy mondtam, ne erre beszéljük rá a tanulni akarókat, mert nem jó cél, és nem is jó szemlélet.
2017. febr. 8. 22:21
Hasznos számodra ez a válasz?
 14/14 anonim ***** válasza:
"a WHILE nagyobb képességű szerkezeti elem." Te ezt írtad. Ez pedig nem igaz.
2017. febr. 8. 23:54
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!