2023. szeptember 11., hétfő

2023.09.11. Alap algoritmusok (gyakorlati példák)

 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,
és add meg az indexét. (While ciklussal is jó.)
int min = tomb[0];
int index = 0;
for (int i = 1; i < tomb.Length; i++)
{
    if (tomb[i] < min)
    {
        min = tomb[i];
        index = i;
    }
}
Console.WriteLine("A legkisebb elem a {0}. indexű helyen van, értéke: {1}", index, min);

A maximumkeresés tétele

Egy tömbben keresd meg a legnagyobb elemet,
és add meg az indexét. (While ciklussal is jó.)
int max = tomb[0];
int index = 0;
for (int i = 1; i < tomb.Length; i++)
{
    if (tomb[i] > max)
    {
        max = tomb[i];
        index = i;
    }
}
Console.WriteLine("A legnagyobb elem a {0}. indexű helyen van, értéke: {1}", index, max);

2024.04.25. Időjárás app

 Feladat: Időjárás app - OOP módszerekkel, haladóknak adatkötéssel Az alkalmazás célja, hogy a felhasználók hozzáadjanak és eltávolítsanak v...