2022. október 28., péntek

2022.10.28. Számításos gyakorló feladatok

Témazáró várható a 11.07-i héten.

Számításos gyakorló feladatok - ami nem lesz kész az órán, azt házi feladat befejezni. Az otthon lévők igyekezzenek pótolni.

0. feladat

Webtárhely-szolgáltató

Egy ingyenes webtárhely-szolgáltató 20 Gb tárhelyet ingyenesen biztosít bárkinek, aki regisztrál. További tárterületeket úgy lehet igényelni, hogy venni kell kuponokat: 1 kupon 10 Gb helyet ér, bankkártyával lehet fizetni érte. Összesen 4 kupont lehet venni, így összesen 60 Gb helyhez lehet jutni.

Feladat: Kérdezd meg a felhasználót, hogy hány kupont szeretne vásárolni, majd írd ki neki, hogy hány Gb tárhelye lesz. Megengedett értékek tehát: 0,1,2,3,4 kupon.


1       feladat:

       Kérd be egy rombusz oldalának, és a magasságának a hosszát.

       Írd  ki a képernyőre a kerületét, és a területét.

2       feladat:

       Kérj be 5 logikai értéket.

       Számold ki a következő logikai műveleteket:

       log0 vagy log1 vagy log2 és log3

       log1 és nem(log1 vagy log2) és nem log3

       nem log2 és ((log3 vagy nem log4) és log1) és nem log0

3       feladat:

       Írd ki a képernyőre a fenti logikai műveletek eredményét úgy, hogy a kiírásban szerepelteted a képleteket.

4       feladat

       Egy megadott alapterületű kétszintes ház fűtésköltségének számítása.  Minden adat legyen adott, ne kérjen be semmit a program: földszint és emelet alapterülete, magassága; 1 köbméter belső tér fűtési költsége forintban.

       Számoljuk ki az adott fűtésköltség 20%-kal csökkentett összegét is.

2022. október 27., csütörtök

2022.10.27. Igazságtáblák - Logikai műveletek



Feladat:         

  //Hozz létre logikai változókat (min. 4-et)

            //és végezz közöttük műveleteket

            //önállóan az órai minta alapján.

2022.10.27. Bool típus

using System;
namespace logikaiTipus
{
    class Program
    {
        static void Main(string[] args)
        {
            //logikai típus
            //az értéke true/false
            bool logikai1 = true;
            bool logikai2 = false;
            //logikai1 = false;
            Console.WriteLine(logikai1);
            Console.WriteLine(logikai2);
            bool eredmeny1 = !logikai1; //logikai tagadás művelet
            Console.WriteLine(eredmeny1); //hamis
            Console.WriteLine(!logikai2); //true
            bool eredmeny2 = logikai1 && logikai2; //logikai ÉS művelet
            bool eredmeny3 = logikai1 || logikai2; //logikai VAGY művelet
            Console.WriteLine(eredmeny2); //false
            Console.WriteLine(eredmeny3); //true
            logikai1 = false;
            logikai2 = true;
            bool eredmeny4 = logikai1 && logikai2; //logikai ÉS művelet
            bool eredmeny5 = logikai1 || logikai2; //logikai VAGY művelet
            Console.WriteLine(eredmeny4); //false
            Console.WriteLine(eredmeny5); //true
            Console.WriteLine((logikai1 && logikai2) || logikai1);
            Console.WriteLine(!logikai1 && logikai1);
            Console.WriteLine(2>3);
            Console.WriteLine(2==3); //egyenlő-e?
            Console.WriteLine(2<3 && 3<4); //igaz és igaz --> igaz
            Console.WriteLine(!(2 < 3 && 3 < 4)); //false
            Console.WriteLine(2 < 3 || 3 < 4); //igaz vagy igaz --> igaz
            Console.WriteLine();
            Console.ReadLine();
        }
    }
}

 

2022.10.27. Bool típus bevezetés (film)

 namespace boolTipus

{

    class Program

    {

        static void Main(string[] args)

        {

            //Ismétlés, és a bool (logikai) változó bevezetése

            //A Gyalog Galopp film alapján valósítsunk meg

            //együtt egy párbeszédet, melyben különböző

            //típusú adatokat, köztük logikai típusúakat

            //kérünk be, írunk ki.

 

            Console.Write("Hány lovag érkezett a Halálnak Hídjához?: ");

            int fo = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("- Állj! Aki átkelni kíván a Halálnak Hídján, 3 kérdésre megfeleljen, vagy a hídon át nem eresztem.");

            Console.WriteLine("- Halljam a 3 kérdést, öreg, nem félek tőlük!");

            Console.Write("- Ki vagy te?: ");

            string nev = Console.ReadLine();

            Console.Write("- És mit keresel?: ");

            string keres = Console.ReadLine();

            Console.WriteLine("- Mi a kedvenc színed? Betűzd! ");

            Console.WriteLine("1. betű: ");

            char szin1 = Convert.ToChar(Console.ReadLine());

            Console.WriteLine("2. betű: ");

            char szin2 = Convert.ToChar(Console.ReadLine());

            Console.WriteLine("3. betű: ");

            char szin3 = Convert.ToChar(Console.ReadLine());

            Console.WriteLine("4. betű: ");

            char szin4 = Convert.ToChar(Console.ReadLine());

            Console.WriteLine("5. betű: ");

            char szin5 = Convert.ToChar(Console.ReadLine());

 

            string szin = "";

            szin = szin + szin1 + szin2 + szin3 + szin4 + szin5;

 

            Console.Write("- Mennyi a töketlen fecske maximális repülési sebessége?: ");

            double sebesség = Convert.ToDouble(Console.ReadLine());

 

            Console.Write("- Ez az afrikai fecskéé? (true/false): "); //true/false formában kell beírni

            bool valaszAfrika = Convert.ToBoolean(Console.ReadLine());

 

            Console.Write("- Vagy az európai fecskéé? (true/false): ");

            bool valaszEuropa = Convert.ToBoolean(Console.ReadLine());

 

            Console.Write("Végül megtalálták a Szent Kelyhet? (true/false): ");

            bool valaszKehely1 = Convert.ToBoolean(Console.ReadLine());

 

            Console.Write("És meg is szerezték? (true/false): ");

            bool valaszKehely2 = Convert.ToBoolean(Console.ReadLine());

 

            Console.WriteLine();

            Console.WriteLine("Ellenőrzés:");

            Console.WriteLine("--------------------------------------------------");

            Console.Write("Mi volt a jelentkező kedvenc színe?: ");

            Console.WriteLine(szin);

            Console.Write("Az afrikai fecske sebességét tudtuk meg?: ");

            Console.WriteLine(valaszAfrika);

            Console.Write("Az európai fecske sebességét tudtuk meg?: ");

            Console.WriteLine(valaszEuropa);

            Console.Write("Végül megtalálták a Szent Kelyhet?: ");

            Console.WriteLine(valaszKehely1);

            Console.Write("És meg is szerezték?: ");

            Console.WriteLine(valaszKehely2);

 

            Console.ReadLine();

        }

    }

}

2022. október 25., kedd

2022.10.25. Ismétlés

 Megbeszéltük az adatbázis dolgozat kérdését, ellenőriztük a házit.

Házi feladat: a csillagok kiírásánál a bal fölső sarokból a jobb alsó sarokba tartson egy csillagokból álló ferde vonal.

2022. október 24., hétfő

2022.10.24. AB

  Számonkérés volt, a hiányzók készüljenek, majd pótolni fogják ezt.

Átismételtük a normalizálásról eddig tanultakat.


2022. október 20., csütörtök

2022.10.21. Összefoglaló feladatsor

Helyettesítés lesz. Ezt a feladatsort kell elkezdeni órán, a maradék házi feladat lesz.


Összefoglaló feladatsor

Ha bármikor enterrel lehet továbbmenni, írd ki a felhasználónak.

Ha bármit ki kell írni, mindig magyarázó szöveggel írd ki.

Console.WriteLine("\n1. feladat\n");

Tedd fel a felhasználónak ezt a kérdést:

Melyik az a négyszög, amelynek egyenlőek az oldalai és 90 fokosak a szögei?

A kurzor a kérdés mögött villogjon.

((Segítség: a válasz a négyzet.))

A választ tárold egy megfelelő típusú változóban, majd írd ki betűnként a képernyőre úgy, hogy egy szónak látszódjon. (A gy betű természetesen két karakternek számít.) Használd az indexeket.

Console.WriteLine("\n2. feladat\n ");

Kérd be egy négyzet oldalának a hosszát, és tárold byte típusban.

Számold ki és írd ki a négyzet területét (a*a), és kerületét (4*a)

Console.WriteLine("\n3. feladat\n");

Rajzolj ki egy tiszta, kék képernyőre egy kicsi piros négyzetet tetszőleges helyre, de ne a képernyő bal felső sarkába.

Console.WriteLine("\n4. feladat\n");

Állítsd át a színeket egy választott betű-, és háttérszínre.

Egy tiszta képernyőn tedd fel a felhasználónak ezt a kérdést:

Melyik az a test, amelynek minden oldala egy négyzet? Írd be betűnként!

(Segítség: a válasz a kocka. Tehát 5 karaktert kell bekérned.)

A betűnként bekért választ végül tárold le egyetlen megfelelő típusú változóban, majd írd ki a tartalmát.

Console.WriteLine("\n5. feladat\n");

Add értékül egy byte típusú változónak programból a következő értéket: 5. (Ne kérd be.)

Deklarálj egy aOldal nevű, double típusú változót, aminek add értékül a bekért értéket átkonvertálva double típusúvá.

Számold ki a kocka térfogatát az aOldal segítségével (aOldal*aOldal*aOldal). Tárold az eredményt egy double típusú változóban.

Írd ki a képernyőre az eredményt.

Console.WriteLine("\n6. feladat\n");

Kérd be egy téglalap két oldalának hosszát, és tárold int típusú változóban.

Számold ki és írd ki a téglalap területét (a*b), és kerületét (2*(a + b))

Állítsd vissza az eredeti színeket egy paranccsal, majd töröld le a képernyőt.

Console.WriteLine("\n7. feladat\n");

Írd ki a képernyőre a pí (3,14) nagy pontosságú értékét a következő beépített érték segítségével:

Console.WriteLine(Math.PI);

Kérd be double típusú változóba egy kör sugarát.

Számold ki a kör területét a következő képlet segítségével:

sugár a négyzeten

Számold ki a kör kerületét a következő képlet segítségével:

2* sugár * Math.PI

Mindkét eredményt írd ki.

Töröld le a képernyőt.

Console.WriteLine("\n8. feladat\n");

Programból adj értéket két double típusú változónak: két tetszőleges pozitív tört számot (ne kérd be). A változók neve legyen: A és B

Írd ki a két szám szorzatát,

majd a két szám különbségét.

Emelj két sort.

Console.WriteLine("\n9. feladat\n");

Számold ki a következő két számítást, és az eredményt tárold változóban.

A*B a négyzeten

négyzetgyök B-ből vond ki a következőt:  A az ötödiken

Írd ki a képleteket és a kiszámított eredményeket is.

Emelj két sort.

Console.WriteLine("\n10. feladat\n");

Számold ki a következő három számítást, és az eredményt tárolás nélkül írd ki.

B abszolútértékéből vond ki A kétszeres szorzatát

A abszolútértékének négyzetgyöke

A abszolútértékének négyzete

 

Console.WriteLine("\n11. feladat:Csillaghullás\n");

Írd a program elejére a következőt:

using System.Threading;

Állíts be fekete háttéren sárga betűszínt. Később ezt variálhatod.

Töröld le a képernyőt.

Írj ki az 1. sorba tetszőleges számú (max. 80) csillagot WriteLine-nal

Írd be a következőt: Thread.Sleep(200); //ez várni fog 200 ezredmásodpercig

Később ezt gyorsíthatod.

Töröld le a képernyőt, ehhez ne kelljen entert nyomni.

Tedd a kurzort egy sorral lejjebb:

Console.SetCursorPosition(0,1);

//első paraméter: a karakter pozíciója az adott sorban

//második paraméter: hányadik sorban vagyunk

Ezeket a sorokat ismételd úgy, hogy a második paramétert mindig növeled 1-gyel.

Egy teljes képernyő becsillagozásához 25-ször kell kiírni :)

Aki tudja, oldja meg ciklussal :)

Console.WriteLine("\n12. feladat\n");

Írd ki: A kilépéshez nyomjon Entert!

Enter megnyomása után érjen véget a program.

2022.10.20. Számonkérés

2022. október 19., szerda

2022.10.19. AB

 A jegyzetben eljutottunk a normalizálásig. Megnéztük a gyakorlati példát, aztán átvettük a tranzitív függésig a fogalmakat.

Röpdolgozat várható az eddigi elméletből.

2022. október 18., kedd

2022.10.19. ! ADATTÍPUSOK !

  


Forrás: Hernyák Zoltán: 05 Tipusok es literalok.ppt, EKF, 2007




2022.10.18. Karakter típus – gyakorlás, indexelés

Elméletből nemsokára röpdolgozat lesz.  

F5: fordítás, futtatás

F6: fordítás

Házi feladat befejezni:    

   //Karakter típus – gyakorlás, indexelés

            //Egy kis program, ami egy 3 tagú összetett szót kért be.
            //Például:
            Console.WriteLine("Kérem írja be a \"papír\" szót");
            string papir = Console.ReadLine();
            Console.WriteLine("Kérem írja be a \"z\" betűt");
            char z = Convert.ToChar(Console.ReadLine());
            Console.WriteLine("Kérem írja be a \"s\" betűt");
            char s = Convert.ToChar(Console.ReadLine());
            Console.WriteLine("Kérem írja be a \"e\" betűt");
            char e = Convert.ToChar(Console.ReadLine());
            Console.WriteLine("Kérem írja be a \"b\" betűt");
            char b = Convert.ToChar(Console.ReadLine());
            Console.WriteLine("Kérem írja be a \"kendő\" szót");
            string kendo = Console.ReadLine();
            string osszetettszo = papir + z + s + e + b + kendo;
            Console.WriteLine("A szó tehát \"{0}\"", osszetettszo);
            Console.ReadLine();
            //Ismétlés: ha a dupla idézőjelet szeretnéd a kiírásban megjeleníteni,
            //akkor eléje \ jelet kell tenni mindenhova.

            //Tanulmányozd át a következő programot, amely a szó karaktereit egyenként írja ki.
            //Tudnivaló: a string egy karakterlánc, azaz "karakterek láncolata".
            //Minden karaktert egy sorszámmal érhetünk el,
            //ezt a számot indexnek nevezzük.Az indexelés nullától kezdődik.
            //A string egyes karaktereire tehát hivatkozhatunk úgy,
            //ha megadjuk a string nevét és mögötte szögletes zárójelpárban az indexét.
            string szo = "ipiapacs";
            Console.WriteLine($"A szó hossza: {szo.Length}"); //megadja a szó hosszát
            //A szó hossza: 8
            //A szót 0-tól 7-ig indexeljük.
            Console.WriteLine(szo[0]);
            Console.WriteLine(szo[1]);
            Console.WriteLine(szo[2]);
            Console.WriteLine(szo[3]);
            Console.WriteLine(szo[4]);
            Console.WriteLine(szo[5]);
            Console.WriteLine(szo[6]);
            Console.WriteLine(szo[7]);
            //A képernyőre ez íródik ki:
            //i
            //p
            //i
            //a
            //p
            //a
            //c
            //s
            //Feladat: oldd meg, hogy a szó egy sorba íródjon ki!
//További feladatok
            //Minden bekért és számított értéket tárolj új változóban.
            //Kérj be három betűt,
            //három pozitív egész számot,
            //három negatív egész számot.
            //Programból adj értéket három pozitív tört számnak,
            //három byte típusú számnak.
            //Kérj be egy 5 karakter hosszú szót,
            //egy 3 karakter hosszút, és
            //egy 15 karakter hosszút.
            //Végezz 10 tetszőleges matematikai műveletsort a számokkal,
            //pl. egyszerű összeadás, kivonás, osztás, szorzás.
            //Legyenek zárójeles műveletek, pl.:
            //(elso + masodik) * (harmadik-masodik)
            //Vigyázz, hogy az osztás eredménye csak double lehet.
            //Minden eredményt írj ki.
            //Ha bármelyik művelet nem sikerült, ne töröld ki,
            //hanem tedd megjegyzésbe és meg fogjuk beszélni.
            //Alkoss a bekért karakterekből 5 különféle szót (karakter-összeadással a tanult módon),
            //lehet ismétlődés is, tehát akár 10 karakterből álló szavakat is alkothatsz.
            //Írd ki az első szó minden második karakterét (a másodikat, a negyediket, stb.).
            //(A második karakter indexe: 1, tehát: szo[1])
            //Írd ki a második szó minden páros indexű karakterét (nullától indulva).
            //Írd ki a program elején bekért szavak hosszát.
            //Ezek után adj hozzájuk egy-egy, a program elején bekért karaktert,
            //majd újra írasd ki a hosszukat.


2022. október 17., hétfő

2022.10.17. AB

 A logikai adatmodellekig jutottunk el, megbeszéltük a relációsat. Eddig meg kell tanulni.

(Helyettesítéskor megnéztük a dolgozatokat is, a tartalmáról programozás órán beszélünk.)

2022. október 14., péntek

2022.10.14. Math osztály

Átnéztük az elejét, házi feladat megoldani végig a feladatsort. Aki tud szelekciót írni, ellenőrizheti az eredményeket.

Math osztály

using System;

 

namespace MathOsztaly

{

    class Program

    {

        static void Main(string[] args)

        {         

            double szam1 = 2;

            //A következőkben a MATH osztály metódusait használjuk.

            //A Math után a . (pont) operátor segítségével választjuk ki a megfelelő metódust.

            //A metódusoknak paramétereket kell beírni a zárójelpárba.

            double gyok1 = Math.Sqrt(szam1); //a szam1 négyzetgyöke

            double negyzet1 = Math.Pow(szam1, 2); //a szam1 második hatványa, vagyis a négyzete

            double hatvany1 = Math.Pow(szam1, 5);//szam1 az otodiken;

            //a második paraméter adja meg, hogy hanyadikra emeljük

            double abszolutErtek1 = Math.Abs(szam1); //a szam1 abszolútértéke

            //A következő kiírásban a \n soremelést helyez el a szöveg belsejében:

            Console.WriteLine("A {0} négyzetgyöke: {1},\n a négyzete: {2},\n az ötödik hatványa: {3},\n abszolútértéke: {4}\n", szam1, gyok1, negyzet1, hatvany1, abszolutErtek1);

 

            //Kérj be egy egész számot az "A" nevű változóba.

            //Kérj be egy egész számot a "B" nevű változóba.

            //A további feladatokban ezekkel dolgozz.

            Console.Write("Kérek egy egész számot: ");

            double A = Convert.ToDouble(Console.ReadLine());

            Console.Write("Kérek még egy egész számot: ");

            double B = Convert.ToDouble(Console.ReadLine());

 

            //Matekból azt tanultad, hogy (A-B)*(A+B) egyenlő A négyzete - B négyzete

            //Igazold ezt. Számold ki külön a bal oldalt és külön a jobb oldalt.

            //Írasd ki az eredményt, és döntsd el (fejben), hogy a kettő egyenlő-e.

            //(Aki tudja, egyágú szelekcióval eldöntheti, hogy igaz-e.)

            //Megoldás:

            double szamitas1 = (A - B) * (A + B);

            double szamitas2 = Math.Pow(A, 2) - Math.Pow(B, 2);

            Console.WriteLine("Első eredmény: {0}, második eredmény: {1} ", szamitas1, szamitas2);

 

            //Oldd meg a további feladatokat:

 

            //Igazold, hogy négyzetgyök A a négyzeten egyenlő A abszolútértékével.

 

            //Igazold, hogy (négyzetgyök A-1) * (négyzetgyök A+1) egyenlő A-1-gyel

 

            //Igazold, hogy (2*négyzetgyök A + 1) * (2*négyzetgyök A - 1) egyenlő 4*A-1 -gyel

 

            //Igazold, hogy (A+B) a négyzeten egyenlő A a négyzeten+ 2*A*B + B a négyzeten.

 

            //Írd ki a következő számítások eredményét, majd

            //ellenőrizd őket a Windows számológépével.

            // 5 / négyzetgyök 7 + négyzetgyök 2

            // 3 / négyzetgyök 7

            // 7 / 3 * négyzetgyök 5

            // 34 / négyzetgyök 3 - 2 * négyzetgyök 5

 

            Console.ReadLine();

        }

    }

}