2021.12.01. Alap algoritmusok gyakorlása

 Házi feladat továbbra is az alap algoritmusok gyakorlása. 

1        feladat:

Minden feladatrész előtt a főprogramban írd ki a képernyőre, hogy hányas feladat következik.

2        feladat:

        Hozz létre egy 10 elemű int tömböt.

        Töltsd fel 0 és 90 közötti véletlen számokkal (a 0 és a 90 is benne legyen.)

        Írd ki a tömb tartalmát egy sorba.

3        feladat

        Számold ki, és írd ki a 30-nál kisebb tömbelemek összegét!

4        feladat

        Keresd meg, hogy hányadik  a tömbben a 25, és írd ki a sorszámát (nem az indexét)! Ha nincs benne, írj ki hibaüzenetet. A megoldáshoz használd a kiválasztás tételét.

5        feladat

        Számold meg az 50-nél kisebb elemeket. Írd ki az eredményt. Ha nincs benne, írj ki hibaüzenetet.

6        feladat

        Döntsd el, hogy van-e a tömbben 20 és 30 közötti  szám. Amennyiben találtál egyet, a ciklus álljon meg, és írd ki a képernyőre a megtalált elemet. Ha nincs benne, írj ki hibaüzenetet. A megoldáshoz használd az eldöntés tételét.

7        feladat:

         Hozz létre egy új 10 elemű int tömböt. Ezt a második tömböt töltsd föl sorfolytonosan az első tömb 50 fölötti elemeivel. A megoldáshoz használd a kiválogatás tételét.

        Írd ki a tömb tartalmát egy sorba.

8        feladat:

        Keresd meg az első tömbben a legkisebb elemet, és írd ki a képernyőre az értékét.

2021.11.24. !!!Alap algoritmusok – gyakorlati példák

Végigvettük, házi feladat tanulni az alap algoritmusokat. 

 Alap algoritmusok – gyakorlati példák

A kiválasztás tétele

Adjuk meg, hogy hányadik a tömbben az 55, és írjuk ki a sorszámát! Ha több is van, csak az elsőt írjuk ki. Ha nincs ilyen szám, írjunk ki hibaüzenetet!

int i = 0;

while (i < szamok.Length && szamok[i] != 55)

{

    i++;

}

if (i != szamok.Length)

    Console.WriteLine("A keresett szám (55) a {0}. indexű elem.", i);

else

    Console.WriteLine("A keresett szám (55) nincs a tömbben!");

A megszámlálás tétele

Számoljuk meg egy tömbben az 50 alatti elemeket! Írjuk ki a végeredményt. (For ciklussal is jó.)

int i = 0;

int db = 0;

while (i < szamok.Length)

{

    if (szamok[i] < 50)

    {

          db++;

    }

    i++;

}

Console.WriteLine("{0} db 50 alatti szám van a tömbben.", db);

Az eldöntés tétele

Döntsük el, hogy van-e a tömbben 10-nél nagyobb szám. Amennyiben találtunk egyet, a ciklus álljon meg, és írjuk ki a képernyőre a megtalált elemet. (Nem kell a többit is megkeresni.) Ha végigmentünk a tömbön, és nem találtunk egyet sem, azt is írjuk ki.

int i = 0;

bool van = false;

while (i < szamok.Length && !van)

{

    if (szamok[i] > 10)

    {

        van = true;

    }

    i++;

}

if (van)

    Console.WriteLine("Van a tömbben 10-nél nagyobb elem: {0}", szamok[i-1]);

else

    Console.WriteLine("Nincs a tömbben 10-nél nagyobb elem.");

A kiválogatás tétele

Adott két azonos elemszámú tömb. Másoljuk át az első tömbből a másodikba a páros elemeket. (While ciklussal is jó.)

int j = 0;

for (int i = 0; i < szamok1.Length; i++)

{

    if (szamok1[i] % 2 == 0)

    {

        szamok2[j] = szamok1[i];

        j++;

    }

}

Az összegzés tétele

Egy tömbben add össze az elemeket. Írd ki a végeredményt. (While ciklussal is jó.)

 

int osszeg = 0;

 

for (int i = 0; i < egeszSzamok.Length; i++)

{

    osszeg = osszeg + egeszSzamok[i];

}

Console.WriteLine("A tömbelemek összege: {0}", osszeg);

 

Változat: Add össze a páros elemeket. Írd ki a végeredményt.

int parosOsszeg = 0;

for (int i = 0; i < egeszSzamok.Length; i++)

{

    if (egeszSzamok[i] % 2 == 0)

    {

        parosOsszeg = parosOsszeg + egeszSzamok[i];

     }

}

Console.WriteLine("A páros elemek összege: {0}", parosOsszeg);

 

Változat: Szorozd össze az 50-nel osztható elemeket. Írd ki a végeredményt.

int szorzat = 1;

for (int i = 0; i < egeszSzamok.Length; i++)

{

    if (egeszSzamok[i] % 50 == 0)

    {

        szorzat = szorzat * egeszSzamok[i];

     }

}

if (szorzat != 1)

{

    Console.WriteLine("Az 50-nel osztható elemek szorzata: {0}", szorzat);

}

else

{

    Console.WriteLine("Nem voltak 50-nel osztható elemek!");

}

 

A minimumkeresés tétele

Egy tömbben keresd meg a legkisebb elemet. (While ciklussal is jó.)

int min = tomb[0];

for (int i = 1; i < tomb.Length; i++)

{

    if (tomb[i] < min)

    {

          min = tomb[i];

    }

}

Console.WriteLine("A legkisebb elem: {0}",min);


 

A maximumkeresés tétele

Egy tömbben keresd meg a legnagyobb elemet. (While ciklussal is jó.)

int max = tomb[0];

for (int i = 1; i < tomb.Length; i++)

{

    if (tomb[i] > max)

    {

        max = tomb[i];

    }

}

Console.WriteLine("A legnagyobb elem: {0}",max);

 

 

2023.04.26. Javító feladatsor