A lenti kódot meg kell érteni, és meg kell tanulni (nem bemagolni!). Tudni kell alkalmazni.
06.01-én témazáró dolgozat lesz belőle, ami elméleti jegy lesz, és papíron írjuk.
//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!
Random rnd = new Random();
int[] szamok = new int[5];
int i = 0;
while (i < szamok.Length)
{
szamok[i] = rnd.Next(0, 101);
Console.WriteLine(szamok[i]);
i++;
}
i = 0; //használjuk az i-t, csak nullázni kell
while (i < szamok.Length && szamok[i] != 55) //végig is tudjon menni, és meg is tudjon állni, ha kell
// a ciklus feltételében vizsgáljuk a megadott feltétel teljesülését
{
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!");
Console.ReadLine();
///////////////////////////////////
//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ó.)
i = 0; //használjuk az i-t, csak nullázni kell
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);
Console.ReadLine();
////////////////////////////////
// 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.
i = 0; //használjuk az i-t, csak nullázni kell
bool van = false;
while (i < szamok.Length && !van) //végig is tudjon menni, és meg is tudjon állni, ha kell - logikai változóval
// a ciklus törzsében egy logikai változó segítségével vizsgáljuk a megadott feltétel teljesülését
{
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.");
Console.ReadLine();
////////////////////////////////
//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.
int[] szamok1 = new int[5];
int[] szamok2 = new int[5];
int j = 0; //a második tömb miatt kell
for (i = 0; i < szamok1.Length; i++) //itt az i elé nem szabad típusmegadást írni (tehát nem kell az int),
//mert az i-t már létrehoztuk a főprogramban, és itt a for cikluson belül is látjuk
{
if (szamok1[i] % 2 == 0)
{
szamok2[j] = szamok1[i];
j++;
}
}
Console.ReadLine();
///////////////////////////////
//Az összegzés tétele
//Egy tömbben add össze az elemeket. Írd ki a végeredményt.
int osszeg = 0;
for (i = 0; i < szamok.Length; i++)
{
osszeg = osszeg + szamok[i];
}
Console.WriteLine("A tömbelemek összege: {0}", osszeg);
Console.ReadLine();
//Változat: Add össze a páros elemeket. Írd ki a végeredményt.
int parosOsszeg = 0;
for (i = 0; i < szamok.Length; i++)
{
if (szamok[i] % 2 == 0)
parosOsszeg = parosOsszeg + szamok[i];
}
Console.WriteLine("A páros elemek összege: {0}", parosOsszeg);
Console.ReadLine();
//Változat: Szorozd össze az 50-nel osztható elemeket. Írd ki a végeredményt.
int szorzat = 1;
van = false;
for (i = 0; i < szamok.Length; i++)
{
if (szamok[i] % 50 == 0)
{
szorzat = szorzat * szamok[i];
van = true;
}
}
if (van) //ha nem volt megfelelő szám, akkor 1-et írna ki a program enélkül
{
Console.WriteLine("Az 50-nel osztható elemek szorzata: {0}", szorzat);
}
Console.ReadLine();
//////////////////////////////
//A minimumkeresés tétele
//Egy tömbben keresd meg a legkisebb elemet.
int min = szamok[0];
for (i = 1; i < szamok.Length; i++)
{
if (szamok[i] < min)
min = szamok[i];
}
Console.WriteLine("A legkisebb elem: {0}", min);
Console.ReadLine();
//////////////////////////////////
//A maximumkeresés tétele
//Egy tömbben keresd meg a legnagyobb elemet.
int max = szamok[0];
for (i = 1; i < szamok.Length; i++)
{
if (szamok[i] > max)
max = szamok[i];
}
Console.WriteLine("A legnagyobb elem: {0}", max);
Console.ReadLine();