Házi feladat befejezni:
//1.Feladat:
//Töltsünk fel véletlenszámból képzett sorozattal
//egy 10 elemű tömböt a következő módon:
//Egy valódi kicsi véletlenszámot szorozzunk meg 2 négyzetgyökével,
//ez legyen az első szám.
//A keletkezett számot minden ciklusmagban növeljük meg
//hárommal, ezzel töltsük fel a többi tömbelemet.
//Írjunk ki minden tömbelemet ugyanabban a ciklusban.
//2. feladat:
//Hozz létre egy új 10 elemű tömböt egész számoknak.
//Ebbe az eredeti tömb számjegyeinek egész részei
//fognak kerülni.
//3. feladat:
//Írjuk ki a tömb tartalmát a foreach ciklussal!
//x: az adott tömbelem, mindig az aktuális
//a típusát meg kell adni, egyezzen a tömbelemek típusával - a var kulcsszó bármilyen típusnak megfelel
//in kulcsszó után kell megadni a tömb nevét
//Minden tömbelemet ki tudunk olvasni,
//de megváltoztatni nem tudjuk.
//foreach (var item in collection)
//{
//}
//4. feladat:
//Írjuk ki a tömb tartalmát visszafelé!
//(Utolsó elemtől az elsőig, egyesével visszafelé lépkedve.)
//5. feladat:
//Összegzés tétele: határozd meg a tömbelemek összegét!
//6. feladat:
//Összegzés tétele:határozd meg a páros tömbelemek összegét!
//7. feladat:
//Összegzés tétele:határozd meg a páratlan tömbelemek összegét!
//8. feladat:
//Összegzés tétele:határozd meg a 50-nel osztható tömbelemek szorzatát!
//Kikötés: a nulla értékű tömbelemeket ne vegyük figyelembe.
//9. feladat:
//Írjunk ki 50 egész számot a képernyőre 100-zal kezdődően kettesével!
//100, 102, 104, ... 198 - a fölső határban tévedhetsz, hagyd a számolást a programra
//10. feladat:
//Írjunk ki 50 egymást követő egész számot 1000-től kezdődően visszafelé!
//11. feladat:
//Írjunk ki a képernyőre sorfolytonosan (szóközzel elválasztva)
//10 db egész számot,amelyek közül az első az 1, és minden
//rákövetkező a duplája.
//12. feladat:
//Írjunk ki a képernyőre egy 10 elemű sorozatot,
//melynek első tagja -10000, minden következő tag
//az előző -0.5-szerese.
//13. feladat (szorgalmi):
//Írjunk ki a képernyőre 256 egész számot 500-tól visszafelé hármasával
//úgy, hogy minden második szám negatív legyen.
//14. feladat (szorgalmi):
//Írjunk ki a képernyőre 150 tört számot, az első egy random tört szám legyen,
//minden rákövetkező pedig az előző érték random egész számszorosa legyen.
A megoldás eleje:
//1.Feladat:
//Töltsünk fel véletlenszámból képzett sorozattal
//egy 10 elemű tömböt a következő módon:
//Egy valódi kicsi véletlenszámot szorozzunk meg 2 négyzetgyökével,
//ez legyen az első szám.
//A keletkezett számot minden ciklusmagban növeljük meg
//hárommal, ezzel töltsük fel a többi tömbelemet.
//Írjunk ki minden tömbelemet ugyanabban a ciklusban.
double[] szamok = new double[10];
Random rnd = new Random();
double a = rnd.NextDouble() * Math.Sqrt(2);
Console.WriteLine("Tört számok tömbje:");
for (int i = 0; i < szamok.Length; i++)
{
szamok[i] = a;
Console.WriteLine(szamok[i]);
a = a + 3;
}
Console.ReadLine();
//2. feladat:
//Hozz létre egy új 10 elemű tömböt egész számoknak.
//Ebbe az eredeti tömb számjegyeinek egész részei
//fognak kerülni.
int[] egeszSzamok = new int[10];
Console.WriteLine("Egésszé alakított számok tömbje:");
for (int i = 0; i < egeszSzamok.Length; i++)
{
//egeszSzamok[0] = szamok[0]; ez nem működik
egeszSzamok[i] = (int)szamok[i];
//típuskényszerítés: egész számmá alakítjuk a törtet,
//közben elveszik a tizedespont utáni rész,
//most éppen ez a cél
Console.WriteLine($"Az új tömb {i + 1}. eleme: {egeszSzamok[i]}");
}
Console.ReadLine();
//3. feladat:
//Írjuk ki a tömb tartalmát a foreach ciklussal!
//x: az adott tömbelem, mindig az aktuális
//a típusát meg kell adni, egyezzen a tömbelemek típusával - a var kulcsszó bármilyen típusnak megfelel
//in kulcsszó után kell megadni a tömb nevét
//Minden tömbelemet ki tudunk olvasni,
//de megváltoztatni nem tudjuk.
//foreach (var item in collection)
//{
//}
Console.WriteLine("A tömb tartalma foreach ciklussal:");
foreach (int x in egeszSzamok)
{
Console.WriteLine(x);
}
Console.ReadLine();
//4. feladat:
//Írjuk ki a tömb tartalmát visszafelé!
//(Utolsó elemtől az elsőig, egyesével visszafelé lépkedve.)
Console.WriteLine("A tömb tartalma visszafelé:");
for (int i = egeszSzamok.Length - 1; i >= 0; i--)
{
Console.WriteLine($"Az új tömb {i + 1}. eleme: {egeszSzamok[i]}");
}
Console.ReadLine();
//5. feladat:
//Összegzés tétele: határozd meg a tömbelemek összegét!
int osszeg = 0;
for (int i = 0; i < egeszSzamok.Length; i++)
{
osszeg = osszeg + egeszSzamok[i];
//osszeg += egeszSzamok[i];
}
Console.WriteLine($"A tömbelemek összege: {osszeg}");
Console.ReadLine();
osszeg = 0;
foreach (int x in egeszSzamok)
{
osszeg += x;
}
Console.WriteLine($"A tömbelemek összege foreach ciklussal: {osszeg}");
Console.ReadLine();
//6. feladat:
//Összegzés tétele:határozd meg a páros tömbelemek összegét!
int parosOsszeg = 0;
for (int i = 0; i < egeszSzamok.Length; i++)
{
if (egeszSzamok[i] % 2 == 0)
parosOsszeg = parosOsszeg + egeszSzamok[i]; //parosOsszeg += egeszSzamok[i];
}
Console.WriteLine($"A páros elemek összege: {parosOsszeg}");
Console.ReadLine();
parosOsszeg = 0;
foreach (int x in egeszSzamok)
{
if (x % 2 == 0)
parosOsszeg += x;
}
Console.WriteLine($"A páros elemek összege foreach ciklussal: {parosOsszeg}");
Console.ReadLine();
//7. feladat:
//Összegzés tétele:határozd meg a páratlan tömbelemek összegét!
int paratlanOsszeg = 0;
for (int i = 0; i < egeszSzamok.Length; i++)
{
if (egeszSzamok[i] % 2 != 0)
paratlanOsszeg = paratlanOsszeg + egeszSzamok[i]; //paratlanOsszeg += egeszSzamok[i];
}
Console.WriteLine($"A páratlan elemek összege: {paratlanOsszeg}");
Console.ReadLine();
paratlanOsszeg = 0;
foreach (int x in egeszSzamok)
{
if (x % 2 != 0)
paratlanOsszeg += x;
}
Console.WriteLine($"A páratlan elemek összege foreach ciklussal: {paratlanOsszeg}");
Console.ReadLine();
//8. feladat:
//Összegzés tétele:határozd meg a 50-nel osztható tömbelemek szorzatát!
//Kikötés: a nulla értékű tömbelemeket ne vegyük figyelembe.
int szorzat = 1;
for (int i = 0; i < egeszSzamok.Length; i++)
{
if (egeszSzamok[i] != 0 && egeszSzamok[i] % 50 == 0)
{
szorzat = szorzat * egeszSzamok[i]; //szorzat *= egeszSzamok[i];
}
}
if (szorzat == 1)
{
Console.WriteLine("Nincs 50-nel osztható elem (a nullákat nem vizsgáltuk).");
}
else
{
Console.WriteLine($"Az 50-nel osztható elemek szorzata: {szorzat}");
}
//vagy:
Console.WriteLine("Foreach ciklussal:");
szorzat = 1;
foreach (int x in egeszSzamok)
{
if (x != 0 && x % 50 == 0)
{
szorzat *= x;
}
}
if (szorzat == 1)
{
Console.WriteLine("Nincs 50-nel osztható elem (a nullákat nem vizsgáltuk).");
}
else
{
Console.WriteLine($"Az 50-nel osztható elemek szorzata: {szorzat}");
}
Console.ReadLine();