2023. március 29., szerda

2023.03.29. While ciklus megszakítása: break, continue

 Példafeladat, egyben tananyag - másold a tartalmát a füzetedbe, és meg kell tanulni.

[régebbi feladatok ellenőrzésére még visszatérünk]

Szünet után while ciklus témazáró lesz.

2023. március 28., kedd

2023.03.29. While ciklus, break kulcsszó, ESC leütéséig felelők sorsolása - megoldás

Írtunk egy kis röpi while ciklusokból.


Feladat:

       Tároljuk a csoport névsorát egy tömbben.

       Írjunk egy ciklust, ami addig sorsol ki véletlenszerűen felelőket, amíg ESC-t nem ütünk.

       Oldjuk meg ezt a feladatot a break kulcsszó használatával is.


Megoldás:

using System;

namespace randomSelect
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] nevek = new string[16];
            nevek[0] = "Öröm Melitta";
            nevek[1] = "Avon Mór";
            nevek[2] = "Ordy Bálint";
            nevek[3] = "Szikla Szilárd";
            nevek[4] = "Bekre Pál";
            nevek[5] = "Heu Réka";
            nevek[6] = "Mérta Nóra";
            nevek[7] = "Emanci Pál";
            nevek[8] = "Hot Elek";
            nevek[9] = "Parady Csoma";
            nevek[10] = "Patkóm Ágnes";
            nevek[11] = "Szüre Tibor";
            nevek[12] = "Teo Dóra";
            nevek[13] = "Veg Eta";
            nevek[14] = "Zúz Mara";
            nevek[15] = "Halo Lajos";
            Random rnd = new Random();
            Console.WriteLine("Nyomjon egy billentyűt az indításhoz...");
            ConsoleKeyInfo console_key_info = Console.ReadKey(true);
            //Mindkét változat jól működik:
            //1. változat:
            while (console_key_info.Key != ConsoleKey.Escape)
            {
                Console.Write("A felelő pedig a következő: ");
                Console.WriteLine(nevek[rnd.Next(0, 16)]);
                console_key_info = Console.ReadKey(true);
            }
            //2. változat:
            while (true)
            {
                console_key_info = Console.ReadKey(true);
                if (console_key_info.Key == ConsoleKey.Escape) break;
                Console.Write("A felelő pedig a következő: ");
                Console.WriteLine(nevek[rnd.Next(0, 16)]);
            }
        }
    }
}

2023. március 22., szerda

2023.03.23. Adatbázis óra - helyettesítés

 A mai  órán folytassátok a múlt órán kiadott projektfeladatot. Mentsetek a hálózatra és a drive-ra.


2023.03.23. Programozás óra - helyettesítés

 A tegnap kiadott feladatokat a következő órán ellenőrizzük.

Mai feladatok (ameddig eljutsz, tedd be a digifüzetbe, nem kell otthon befejezni):

Rajzolás egymásba ágyazott ciklusokkal

1. Rajzold ki 5-ször egymásba ágyazott ciklusokkal a következőt. 3 szinten kell egymásba ágyaznod a ciklusszinteket:

xxxxxxxxxx

    ******

    ******

    ******

    oooooo

    oooooo

    ++++++

    ++++++

    ++++++

2. Rajzold ki 10-szer egymásba ágyazott ciklusokkal a következőt:

!!!!!!!!!!@@@@@@@@@@!!!!!!!!!!

 

3. Rajzold ki egy üres képernyőre 25-ször egymásba ágyazott ciklusokkal a következőt:

~~~~~`````~~~~~`````~~~~~`````~~~~~`````~~~~~`````~~~~~`````~~~~~`````~~~~~`````



 While ciklus gyakorló feladatok

1. Tárolj tömbben jeleket. (!!+”’()&@# stb.)

2. Tárolj egy másik tömbben kétjegyű véletlen számokat.

3. Ezekből, és véletlenszerű kis-és nagybetűkből alkoss 3 különböző, 5 hosszú PIN kódokat. Írd ki őket a képernyőre.

4. Véletlenszerűen írass ki érdemjegyeket (1-5) addig, amíg ötös nem jön ki. Ekkor írj ki egy gratuláló szöveget.

4. Véletlenszerűen írass ki érdemjegyeket (1-5). Minden esetben kérdezd meg a felhasználót, hogy ez megfelel-e neki programozásból. Ha nem felel meg, menj tovább. Ha megfelel, lépj ki a ciklusból.

5. Kérj be egy pozitív egész számot a usertől. Kezdj el visszafelé számolni ettől a számtól kezdve mínusz 100-ig. Amikor pozitív számot írsz ki a sor elejére, töltsd föl mögötte az adott sort + jelekkel. Ha a nullánál tartasz, írd tele a sort nullával. Ha negatív számot írsz ki, írd tele a képernyőt – jelekkel.


2023.03.22. Random felelő választó - szorgalmi

 Írjunk egy konzolos programot, ami addig sorsol ki véletlenszerűen felelőket egy tömbből, amíg ESC-t nem ütünk.

2023.03.22. Betűeső

Házi feladat: megnézni a Mátrix c. filmet :) 

A futó program mintája alapján írj egy programot, ami megállás nélkül jelenít meg random karaktereket a konzol ablakban.





Egy lehetséges megoldás:
using System;
using System.Threading;
namespace matrix
{
  class Program
  {  
    static void Main(string[] args)
    {
      const int n = 120;
      bool[] betuk = new bool[n];
      Console.ForegroundColor = ConsoleColor.Green;
      Random rnd = new Random();
      for (int i = 0; i < n; i++)
      {
        if (i % 3 == 0)
        {
          betuk[i] = true;
        }
        else
        {
          betuk[i] = false;
        }
      }
      while (true)
      {
        for (int j = 0; j < n; j++)
        {
          if (betuk[j])
          {
            Console.Write(Convert.ToChar(rnd.Next(31, 127)));
          }
          else
          {
            Console.Write(' ');
          }
        }
        Console.WriteLine();
        Thread.Sleep(50);
      }
    }
  }
}


2023.03.22. Egymásba ágyazott ciklusok - folytatás


//6.  feladat:

            // Az órai munka minden feladatát futtasd lépésenként, vizsgáld a műveleteket, változókat.
            Console.WriteLine("6. feladat");
            //7.  feladat:
            // Ismételd meg tízszer a Beep() metódus segítségével a Morse SOS (. . . – – – . . .) jelet
            //(a harmadik leckében találsz hozzá segítséget).
            //A külső ciklus 10-szer fusson, ezen belül fusson 3 belső ciklus.
            //Az első ismételje 3-szor a rövid hangot; a második ismételje 3-szor a hosszú hangot,
            //a harmadik ugyanaz, mint az első.
            //Módosítás: ne hangot adjon a program, hanem írja ki a jeleket.
            Console.WriteLine("7. feladat");

            }
            //8.  feladat:
            //–  Hangokkal kódold le a végén a TITANIC szót (ehhez ne használj ciklust)
Házi feladat:

4       feladat:

       Hozz létre egy 20 elemű string tömböt, melyben 10 számjegyből álló titkos kódokat fogsz tárolni.

       Külső ciklus:

       menj végig minden tömbelemen;

       helyezz el a tömbelemben egy stringgé alakított véletlen számjegyet;

       Belső ciklus, ami 10-szer ismétlődik:

       lépésenként adj hozzá a tömbelem aktuális tartalmához egy, a fenti módon  stringgé alakított véletlen számjegyet úgy, hogy egy stringet alkossanak.

       A külső ciklusból kilépve listázd ki a képernyőre a tömböt.

5       feladat: Oldd meg, hogy a listázás a ciklusok futása közben megvalósuljon, ehhez keresd meg azt a helyet, ahová a kiírást el kell helyezni.  

2023. március 21., kedd

2023.03.21. Kutatómunka csapatban

 Kutatómunka csapatban

Téma: SQL nyelvek

Kiinduló források:

TOP 5 SQL databases

SQL vs noSQL

mySQL vs noSQL

1. feladat

Végezzetek kutatómunkát a fenti linkekről indulva. További forrásokat is dolgozzatok föl, lehet benne videó is. Emeljétek ki, és tanuljátok meg a fontos, új szavakat.

Készítsetek egy beszámolót, ami érinti a fenti témákat. Alkossatok véleményt a különböző SQL nyelvekről. Mutassátok be a különböző nyelvek lehetőségeit.

Eszköz: bemutató, lehetőség szerint preziben. Ehhez először ismerkedjetek meg a prezivel.

Minden meglátogatott és/vagy felhasznált oldal elérhetőségét rögzítsétek.

2. feladat

Szóban előadni a produktumot, ami legyen csapatmunka.


2023. március 10., péntek

2023.03.10.

 Ellenőriztük a Vízvezetéket, a Notebook a köv. órára maradt, ezért csak az azt követő órán írunk röpit.

2023. március 9., csütörtök

2023.03.09.Notebook adatbázis

 Legközelebb ellenőrizzük a Vízvezetéket és a Notebookot.

2023.03.09. Egymásba ágyazott ciklusok

Házi feladat az eddigieket tanulni. While ciklus számonkérés várható.

 Egymásba ágyazott ciklusok

1       feladat:

       A külső ciklus 10-szer fusson le, minden ciklusmagban írja ki, hogy hányadik külső ciklus-lépésben járunk.

       A belső ciklus 5-ször fusson, (futásonként) írja ki, hogy ő a belső ciklus, és írjon még ki egy véletlenszámot.

2       feladat:

       Módosítsuk az előző feladatot úgy, hogy a külső és a belső ciklus más-más színnel írjon a képernyőre.

-----------------------------------------------------------------------------------------

3       feladat:

       Lépésenkénti futtatással vizsgáljuk meg a ciklusok működését.

4       feladat:

       Hozz létre egy 20 elemű string tömböt, melyben 10 számjegyből álló titkos kódokat fogsz tárolni.

       Külső ciklus:

       menj végig minden tömbelemen;

       helyezz el a tömbelemben egy stringgé alakított véletlen számjegyet;

       Belső ciklus, ami 10-szer ismétlődik:

       lépésenként adj hozzá a tömbelem aktuális tartalmához egy, a fenti módon  stringgé alakított véletlen számjegyet úgy, hogy egy stringet alkossanak.

       A külső ciklusból kilépve listázd ki a képernyőre a tömböt.

5       feladat: Oldd meg, hogy a listázás a ciklusok futása közben megvalósuljon, ehhez keresd meg azt a helyet, ahová a kiírást el kell helyezni.


Eddigi megoldásunk:using System;


namespace beagyazas
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.  feladat:
            // A külső ciklus 10-szer fusson le, minden ciklusmagban írja ki,
            //hogy hányadik külső ciklus-lépésben járunk.
            // A belső ciklus 5-ször fusson, (futásonként) írja ki, hogy ő a belső ciklus,
            //és írjon még ki egy véletlenszámot.
            Console.WriteLine("1. feladat");
            int i = 0;
            int j = 0;
            Random rnd = new Random();
            while (i < 10)
            {
                Console.WriteLine("Külső ciklus: {0}", i + 1);
                j = 0;
                while (j < 5)
                {
                    Console.WriteLine("\tén vagyok a belső ciklus: {0}", rnd.Next(0, 100));
                    j++;
                }
                i++;
            }
            Console.ReadLine();
             Console.WriteLine("2. feladat");
            i = 0;
            while (i < 10)
            {
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("Külső ciklus: {0}", i + 1);
                Console.ForegroundColor = ConsoleColor.Green;
                j = 0;
                while (j < 5)
                {
                    Console.WriteLine("\tén vagyok a belső ciklus: {0}", rnd.Next(0, 100));
                    j++;
                }
                i++;
            }
            Console.ResetColor();
            Console.ReadLine();

     

2023.03.09. Notebook ab. feladat

 A Vízvezeték feladatsort, és ezt a Notebook feladatsort be kell fejezni otthon, akinek nincs kész.

2023. március 8., szerda

2023.03.08. While ciklus gyakorlás II.

Házi feladat befejezni. 
//A feladatokat while ciklussal oldd meg!
            //1. feladat:                                             
            //Írjunk ki addig páratlan számokat a képernyőre, amíg
            //el nem érjük a 20-at.
            //Az első szám az 1 legyen.
            //(1, 3, 5, ..19)
            Console.WriteLine("1. feladat");
            Console.ReadLine();
            //2. feladat:                                            
            //Írjuk ki 100-tól kezdve a számokat ötösével 500-ig.
            //100, 105, 110, ...500
            Console.WriteLine("2. feladat");
            Console.ReadLine();
            //3. feladat: Töltsünk fel egy 15 elemű                  
            //tömböt -1000 és 1000 közötti véletlen egész számokkal!
            Console.WriteLine("3. feladat");
            Console.ReadLine();
            //4. feladat:                                           
            //Írd ki a tömb negatív elemeit a képernyőre.
            //A kiírás így nézzen ki: "A tömb 2. eleme: -85"
            //(A -85 helyére természetesen a valódi tömbelem kerüljön.)
            Console.WriteLine("4. feladat");
            Console.ReadLine();
            
 using System;
namespace gyak2
{
    class Program
    {
        static void Main(string[] args)
        {
            //A feladatokat while ciklussal oldd meg!
            //1. feladat:                                            
            //Írjunk ki addig páratlan számokat a képernyőre, amíg
            //el nem érjük a 20-at.
            //Az első szám az 1 legyen.
            //(1, 3, 5, ..19)
            Random rnd = new Random();
            int szam = 0;
            Console.WriteLine("Páratlan számok");
            while (szam <= 20)
            {
                if (szam % 2 == 1)
                {
                    Console.WriteLine(szam);
                }
                szam++;
            }
            Console.WriteLine("1. feladat");
            Console.ReadLine();
            //2. feladat:                                            
            //Írjuk ki 100-tól kezdve a számokat ötösével 500-ig.
            //100, 105, 110, ...500
            szam = 100;
            while (szam <= 500)
            {
                Console.WriteLine(szam);
                szam += 5;
            }
            Console.WriteLine("2. feladat");
            Console.ReadLine();
            //3. feladat: Töltsünk fel egy 15 elemű                  
            //tömböt -1000 és 1000 közötti véletlen egész számokkal!
            int[] tomb = new int[15];
            int i = 0;
            while (i < tomb.Length)
            {
                tomb[i] = rnd.Next(-1000, 1000);
                i++;
            }
            Console.WriteLine("3. feladat");
            Console.ReadLine();
            //4. feladat:                                          
            //Írd ki a tömb negatív elemeit a képernyőre.
            //A kiírás így nézzen ki: "A tömb 2. eleme: -85"
            //(A -85 helyére természetesen a valódi tömbelem kerüljön.)

            Console.WriteLine("4. feladat");
            i= 0;
            while (i < tomb.Length)
            {
                if (tomb[i] < 0)
                {
                    Console.WriteLine($"A tömb {i+ 1}. eleme: {tomb[i]}");
                }
                i++;
            }
            Console.ReadLine();
            //Pontszám: 23/
            //Érdemjegy:
        }
    }
}


 

2023.03.08. While ciklus - gyakorlás I.

 

While ciklus - gyakorlás

            //A feladatokat while ciklussal oldd meg!

 

            //1. feladat: Töltsünk fel egy 15 elemű                 

            //tömböt -1000 és 1000 közötti véletlen egész számokkal!

            //(a random szám képzésénél paraméter:(-1000,1000))

            Console.WriteLine("1. feladat");

 

            Console.ReadLine();

 

            //2. feladat:                                            

            //Írd ki a tömb negatív elemeit a képernyőre.

            //A kiírás első sora így nézzen ki: "A tömb 1. eleme: -85"

            //(A -85 helyére természetesen a valódi tömbelem kerüljön.)

 

            Console.WriteLine("2. feladat");

 

            Console.ReadLine();

 

 

            //3. feladat:                                             

            //Írjuk ki 10-től kezdve a számokat kettesével 28-ig.

            //10, 12, 14, ...28

            Console.WriteLine("3. feladat");

 

            Console.ReadLine();

 

            //2. feladat:                                             

            //Írjunk ki addig 3-mal osztható egész számokat a képernyőre, amíg

            //el nem érjük a 100-at.

            //Az első szám a 0 legyen.

            //(0, 3, 6, 9, 12, ...)

 

            Console.WriteLine("4. feladat");

 

            Console.ReadLine();

            //A feladatokat while ciklussal oldd meg!


            //1. feladat: Töltsünk fel egy 15 elemű                  
            //tömböt -1000 és 1000 közötti véletlen egész számokkal!
            //(a random szám képzésénél paraméter:(-1000,1000))
            Console.WriteLine("1. feladat");
            int[] szamok = new int[15];
            Random rnd = new Random();


            int i = 0;
            while (i < szamok.Length)
            {
                szamok[i] = rnd.Next(-1000,1000);
                Console.WriteLine(szamok[i]);
                i++;
            }
            Console.ReadLine();


            //2. feladat:                                            
            //Írd ki a tömb negatív elemeit a képernyőre.
            //A kiírás első sora így nézzen ki: "A tömb 1. eleme: -85"
            //(A -85 helyére természetesen a valódi tömbelem kerüljön.)


            Console.WriteLine("2. feladat");
            i = 0;
            while (i < szamok.Length)
            {
                if (szamok[i] < 0 )
                {
                    Console.WriteLine("A tömb {0}. eleme: {1}",i+1, szamok[i]);
                }
                i++;
            }


            Console.ReadLine();



            //3. feladat:                                            
            //Írjuk ki 10-től kezdve a számokat kettesével 28-ig.
            //10, 12, 14, ...28
            Console.WriteLine("3. feladat");
            int szam = 10;
            i = 0;
            while (szam <= 28)
            {
                Console.WriteLine(szam);
                szam += 2;
                i++;
            }
            Console.ReadLine();


            //2. feladat:                                            
            //Írjunk ki addig 3-mal osztható számokat a képernyőre, amíg
            //el nem érjük a 100-at.
            //Az első szám a 0 legyen.
            //(0, 3, 6, 9, 12, ...)


            Console.WriteLine("4. feladat");
            i = 0;
            while (i < 100)
            {
                if (i % 3 == 0)
                {
                    Console.WriteLine(i);
                }
                i++;
            }
            Console.ReadLine();