2020.11.18. Házi feladat - szövegfeldolgozás

Válassz egy informatikával kapcsolatos szövegrészletet egy cikkből. (Javaslom pl. a http://computerworld.hu/ oldalait.) Készítsd ez alapján egy olyan programot, mint az órai.

Vagy 2017.10.hó: 40 nap alatt szedett fel 3000 évnyi tudást a Google mesterséges intelligenciája:

http://index.hu/tech/2017/10/18/40_nap_alatt_szedett_fel_3000_evnyi_tudast_a_google_mesterseges_intelligenciaja/

Addig kell ma eljutnod, hogy kiíratod a szöveget.


Console.WriteLine("Óriási árfolyam-emelkedést produkál mostanában a bitcoin, " + "\n" + 

                "az elmúlt héten 16 százalékos növekedéssel már a 18 000 dolláros árfolyamot" + "\n" + 

                "is túllépteUgyanakkor ez a szint árfolyam még messze jár a 2017-es, közel" + "\n" + 

                "20 000 dolláros történelmi csúcstólamit aztán jókora visszaesés követett." + "\n" + 

                " A jelenleg forgalomban lévő kibányászott bitcoin összesített értéke jelenleg " + "\n" + 

                "325,6 milliárd dollárami több, mint hatszorosa a második legelterjedtebb" + "\n" + 

                "kriptovalutánakaz EtherumnakBár a bitcoin-árfolyam hagyományosan nagyon" + "\n" + 

                "ingadozóaz elemzők szerint most tartós maradhat a lendület. A bitcoin világban" + "\n" + 

                "azonban egyáltalán nincs minden rendben. A decentralizált pénzügy (DeFiugyani" + "\n" + 

                "s alapvetően az Etherum láncra épül, a fejlesztésekből a bitcoin szinte teljes egészében" + "\n" + 

                "kimaradVagyis az emberek nem használják másra a bitcoint, mint felhalmozásra." + "\n" + 

                "Jelenleg 18,5 millió bitcoin van \"kibányászva\": a kriptovaluta elvi korlátja 21" + "\n" + 

                "millió darabtehát még van perspektíva a bitcoin-bányászok előttám a" + "\n" + 

                "küszöbértékhez közeledve a bányászat is keservesebbé válik."); 

            Console.WriteLine(); 

            Console.Write("1. feladat: \nMi a kriptovaluta neve?: "); 

            string bitcoin = String.Empty; 

            char _0 = Convert.ToChar(Console.Read()); 

            bitcoin = bitcoin + _0; 

 

            char _1 = Convert.ToChar(Console.Read()); 

            bitcoin = bitcoin + _1; 

 

            char _2 = Convert.ToChar(Console.Read()); 

            bitcoin = bitcoin + _2; 

 

            char _3 = Convert.ToChar(Console.Read()); 

            bitcoin = bitcoin + _3; 

 

            char _4 = Convert.ToChar(Console.Read()); 

            bitcoin = bitcoin + _4; 

 

            char _5 = Convert.ToChar(Console.Read()); 

            bitcoin = bitcoin + _5; 

 

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

            bitcoin = bitcoin + _6; 

 

            Console.Write("2. feladat \nHány millió Bitcoin van kibányászva?: "); 

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

 

            Console.Write("3. feladat \nMekkora volt az árfolyama körülbelül 2017-ben a Bitcoin-nak(dollárban)?: "); 

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

 

            Console.Write("4. feladat \nAz elmúlt héten hány %-os növekedést produkált a bitcoin?: "); 

            byte lastWeeksGrow = Convert.ToByte(Console.ReadLine()); 

 

            Console.Write("5. feladat\nMi a pontos neve ennek a valutának? (segítség ......valuta): "); 

            string cryptoCurrency = Console.ReadLine(); 

 

            Console.WriteLine(); 

            Console.WriteLine("Kiértékelés:"); 

            Console.WriteLine(); 

            byte points = 0; 

            if (bitcoin == "bitcoin" || bitcoin == "Bitcoin"//1. feladat ellenőrzése 

            { 

                Console.WriteLine("1. feladat megoldása megfelelő +1 pont"); 

                points++; 

            } 

            else 

            { 

                Console.WriteLine("1. feladat megoldása nem megfelelő a válaszod {0} volt, a helyes megfejtés: bitcoin", bitcoin); 

            } 

 

            if (minedBitcoins == 18.5) //2. feladat ellenőrzése 

            { 

                Console.WriteLine("2. feladat megoldása megfelelő +1 pont"); 

                points++; 

            } 

            else 

            { 

                Console.WriteLine("2. feladat megoldása nem megfelelő a válaszod {0} volt, a helyes megfejtés: 18.5"minedBitcoins); 

            } 

 

            if (bitcoinPrice17 == 20000) //3. feladat ellenőrzése 

            { 

                Console.WriteLine("3. feladat megoldása megfelelő +1 pont"); 

                points++; 

            } 

            else 

            { 

                Console.WriteLine("3. feladat megoldása nem megfelelő a válaszod {0} volt, a helyes megfejtés: 20000", bitcoinPrice17); 

            } 

 

            if (lastWeeksGrow == 16) //4. feladat ellenőrzése 

            { 

                Console.WriteLine("4. feladat megoldása megfelelő +1 pont"); 

                points++; 

            } 

            else 

            { 

                Console.WriteLine("4. feladat megoldása nem megfelelő. A válaszod {0} volt, a helyes megfejtés: 16"lastWeeksGrow); 

            } 

 

            if (cryptoCurrency == "kripto" || cryptoCurrency == "kriptovaluta"//5. feladat ellenőrzése 

            { 

                Console.WriteLine("5. feladat megoldása megfelelő +1 pont"); 

                points++; 

            } 

            else 

            { 

                Console.WriteLine("5. feladat megoldása nem megfelelő. A válaszod {0} volt, a helyes megfejtéskripto"cryptoCurrency); 

            } 

 

            Console.WriteLine(); 

 

            Console.WriteLine("Elérhető pontszám 5 ebből elértél: {0} pontot.", points); 

            double szazalek = (points / 5.0)*100; 

            Console.WriteLine("Százalékos teljesítményed: {0}%"szazalek); 

            Console.ReadLine(); 



Barbi megoldása:



            Console.WriteLine("Tíz vállalat közül nyolc gyorsított digitális átalakulásán a járványhelyzet következtében," + "\n" +

 

                "mutatja a Dell Technologies friss transzformációs indexe." + "\n" +

 

                "Most bejelentett APEX - projektjén keresztül a szállító hamarosan szolgáltatásként elérhető hardvermegoldásokkal is segíteni fogja a tempó fokozását." + "\n" +

 

                "A jelenlegi üzleti környezetben a vállalatok 80 százaléka" + "\n" +

 

                "mindössze pár hónap leforgása alatt felgyorsította digitális átalakulást célzó programjainak legalább némelyikét," + "\n" +

 

                "állapította meg a cég kétévente frissített globális felmérésének idei kiadásában," + "\n" +

 

                "amely az elsők között ad ilyen átfogó képet a világjárvány informatikai beruházásokra gyakorolt hatásáról." + "\n" +

 

                "Július és augusztus folyamán a Vanson Bourne közreműködésével a Dell Technologies 18 országban" + "\n" +

 

                " 4300 közép- és nagyvállalati felsővezetőt kérdezett az üzlet digitális átalakításáról." + "\n" +

 

                " A válaszok alapján a két korábbi - 2016-ban és 2018-ban készült - indexet követően" + "\n" +

 

                "idén először nőtt 6 százalékra a digitálisan legérettebbnek számító vállalatok aránya," + "\n" +

 

                "míg az aktívan digitalizáló szervezetek tábora két év leforgása alatt" + "\n" +

 

                "23-ról 39 százalékra bővült.");

 

 

 

            Console.WriteLine();

 

            Console.Write("10 vállalat közül hány gyorsított a digitális átalakulásán?");

 

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

 

 

 

            Console.Write("Milyen projektet jelentettek be?");

 

            char apex1 = Convert.ToChar(Console.Read());

 

            char apex2 = Convert.ToChar(Console.Read());

 

            char apex3 = Convert.ToChar(Console.Read());

 

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

 

            string apex = "";

 

            apex = apex + apex1 + apex2 + apex3 + apex4;

 

 

 

            Console.Write("Kinek a közreműködésével kérdeztek az üzlet digitális átalakításáról?");

 

            string kozremukodo = Console.ReadLine();

 

 

 

            Console.Write("Hány országban kérdeztek vállalati felsővezetőket?");

 

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

 

 

 

            Console.Write("Hány közép- és nagyvállalati felsővezetőt kérdeztek?");

 

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

 

 

 

            Console.Write("Hány százalékra nőtt idén a digitálisan legérettebbnek számító vállalatok aránya?");

 

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

 

 

 

            Console.Write("Az aktívan digitalizálók tábora két év alatt 23-ról 39 százalékra nőtt? (true/false)");

 

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

 

 

 

            Console.WriteLine();

 

 

 

            Console.WriteLine("A következőket válaszoltad: ");

 

            Console.WriteLine("10 vállalat közül ennyi gyorsított digitális átalakulásán:{0}", vallalat);

 

            Console.WriteLine("Ezt a projektet jelentette be a DELL:{0}", apex);

 

            Console.WriteLine("Az ő közreműködésével kérdeztek az üzlet digitális átalakításáról:{0}", kozremukodo);

 

            Console.WriteLine("Ennyi országban kérdeztek vállalati felsővezetőket:{0}", orszag);

 

            Console.WriteLine("Ennyi közép- és nagyvállalati felsővezetőt kérdeztek:{0}", felsovezeto);

 

            Console.WriteLine("Idén ennyi százalékra nőtt a digitálisan legérettebbnek számító vállalatok aránya:{0}", szazalek);

 

            Console.WriteLine("Az aktívan digitalizálók tábora két év alatt 23-ról 39 százalékra nőtt:{0}", bovules);

 

 

 

            Console.ReadLine();


2020.11.18. Változók értékadása!

             int szam = 0;

            Console.WriteLine(szam);//0

            Console.WriteLine(szam + 2); //2

            Console.WriteLine("szam+2"); //szam+2

            Console.WriteLine("Eredmény: {0}", szam + 2);//2

            Console.WriteLine(szam);//0

            szam = szam + 2; //a változó értéke akkor változik meg, ha értékadás történt

            Console.WriteLine(szam);//2

 

            ///////////////////////////////////////////////////////////////////////

            //de:

            szam = 0;

            Console.WriteLine("Eredmény: {0}", szam = szam + 2);//2, itt ugyanis szabályos értékadás történt

            Console.WriteLine(szam); //megmaradt az értéke

            //Ilyet órán lehetőleg nem használunk kezdőként, de aki tudja, mit csinál, az használhatja.

            //Vagyis aki nem akar belekavarodni, az ne használjon ilyet.

            ///////////////////////////////////////////////////////////////////////

 

            string szo = "C#";

            Console.WriteLine(szo + " nyelv"); //C# nyelv

            Console.WriteLine("Kiegészítve: {0}", szo + " nyelv"); //C# nyelv

            Console.WriteLine(szo); //C#

            szo = szo + " nyelv"; //a változó értéke akkor változik meg, ha értékadás történt

            Console.WriteLine(szo); //C# nyelv

 

            double tort = 0;

            Console.WriteLine(tort); //0

            tort = 5;

            Console.WriteLine("A tört szám osztva kettővel: {0}", tort/2); //2,5

            Console.WriteLine(tort); //5

            tort = tort / 2; //a változó értéke akkor változik meg, ha értékadás történt

            Console.WriteLine(tort); //2,5

 

            bool log = true;

            Console.WriteLine(!log); //false

            log = !log; //a változó értéke akkor változik meg, ha értékadás történt

            Console.WriteLine(log); //false

 

 

 

            Console.ReadLine();

2020.11.18. Szövegfeldolgozás - eddigi típusok összefoglalása

              //Ezzel a programmal a szövegértési képességet mérjük.

            //Feladat:

            //- Tagoltan írjunk ki a képernyőre egy tudományos szöveget.

            //- Tegyünk fel kérdéseket a szöveg tartalmára vonatkozóan.

            //Ügyeljünk, hogy minden ismert típus szerepeljen benne.

            //- Írjuk ki a képernyőre, mit tudtunk meg. Ehhez használjunk

            //egy paraméteres kiírási lehetőséget.

 

            Console.WriteLine("Komoly áttörést ért el a DNS-alapú adattárolásban" + "\n" + 

            "a Harvard Egyetem biomérnöki intézete, ahol George Church" + "\n" +             //új sor ("\n")

            "és csapata egy 53 400 szavas könyvet, 11 képet" + "\n" +                        //és szövegek összefűzése (+)

            "és egy JavaScript programot – összesen 5,27 millió bit adatot" + "\n" +

            "– kódoltak bele egy DNS-be." + "\n" +

            "A DNS az egyik legstabilabb és legnagyobb adatsűrűségű" + "\n" +

            "információtároló, ami elméletben két bit adatot tud tárolni" + "\n" +

            "nukleotidonként (ez a DNS szerkezeti egysége)." + "\n" +

            "Egyetlen gramm DNS-ben 455 exabájt adat tárolható," + "\n" +

            "ami hozzávetőlegesen 100 milliárd dvd kapacitásának felel meg" + "\n" +

            "és 4-5-ször nagyobb adatsűrűséget tesz lehetővé," + "\n" +

            "mint például a flash memória. Emellett a DNS-be írt" + "\n" +

            "információknak nagy előnye, hogy több száz évvel később is" + "\n" +

            "olvashatóak maradnak, miközben egy dvd élettartama" + "\n" +

            "legfeljebb néhány évtized.");

 

            //Másik módszerrel:

Console.WriteLine("Komoly áttörést ért el a DNS-alapú adattárolásban \na Harvard Egyetem biomérnöki intézete, ahol George Church \nés csapata egy 53 400 szavas könyvet, 11 képet\nés egy JavaScript programot – összesen 5,27 millió bit adatot\n– kódoltak bele egy DNS-be.\nA DNS az egyik legstabilabb és legnagyobb adatsűrűségű\ninformációtároló, ami elméletben két bit adatot tud tárolni\nnukleotidonként (ez a DNS szerkezeti egysége).\nEgyetlen gramm DNS-ben 455 exabájt adat tárolható,\nami hozzávetőlegesen 100 milliárd dvd kapacitásának felel meg\nés 4-5-ször nagyobb adatsűrűséget tesz lehetővé,\nmint például a flash memória. Emellett a DNS-be írt\ninformációknak nagy előnye, hogy több száz évvel később is\nolvashatóak maradnak, miközben egy dvd élettartama\nlegfeljebb néhány évtized."); 

 

            Console.WriteLine();

            Console.Write("Kinek a nevéhez fűződik a felfedezés?: ");

            string tudos = Console.ReadLine();

 

            Console.Write("Mibe kódolták az adatokat a Harvardon?: ");

            char dns1 = Convert.ToChar(Console.Read()); //nincs soremelés

            char dns2 = Convert.ToChar(Console.Read());

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

            string dns = "";

//vagy: dns=String.Empty;

            dns = dns + dns1 + dns2 + dns3;

 

            Console.Write("Hány könyvet kódoltak a DNS-be?: ");

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

            Console.Write("Hány képet kódoltak a DNS-be?: ");

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

            Console.Write("Hány programot kódoltak a DNS-be?: ");

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

            Console.Write("Összesen hány millió bit adatot kódoltak a DNS-be?: ");

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

            Console.Write("A DNS nukleotidja elméletben két bit adatot tud tárolni? (true/false): ");

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

 

            Console.WriteLine();

 

            Console.WriteLine("A következőket válaszoltad: ");

            Console.WriteLine("A tudós, akinek a nevéhez fűződik a felfedezés: {0}", tudos);

            Console.WriteLine("A Harvardon ebbe az anyagba kódolták az adatokat: {0}", dns);

            Console.WriteLine("Összesen ennyi könyvet, képet és programot kódoltak a DNS-be: {0}", konyv + kep + program);

            Console.WriteLine("Összesen ennyi millió bit adatot kódoltak a DNS-be: {0}", bit);

            Console.WriteLine("A DNS nukleotidja elméletben két bit adatot tud tárolni?: {0}", kapacitas);

 

            Console.ReadLine();

2020.11.16. Dátum-idő típus

Akinek nincs kész a logikai műveletes házija, pótolja.

Mai első anyag: Dátum-idő típus

 Mintaprogram:

            DateTime minDate = DateTime.MinValue; //a lehetséges legkisebb dátum

            Console.WriteLine("minimális dátum: {0}", minDate);

            DateTime maiDatum = DateTime.Now; //a mai dátum, a futtatás perce, másodperce, ezredmásodperce

            Console.WriteLine("mai dátum, idő: {0}", maiDatum);

            Console.Write("Tegnapi dátum (év.hó.nap): ");

            DateTime tegnapiDatum = Convert.ToDateTime(Console.ReadLine()); //ha csak dátumot írsz be, nulla óra nulla perctől számol

 

            Console.Write("Kérem a születési dátumod (év.hó.nap): ");//a végére lehet, de nem kell pontot tenni

            DateTime szulDatum = Convert.ToDateTime(Console.ReadLine());

            Console.WriteLine("Születési dátum: {0}", szulDatum);

            Console.Write("Hány óra van? (óra:perc:másodperc):");

            DateTime ido = Convert.ToDateTime(Console.ReadLine());

            Console.WriteLine("ido: {0}", ido);

 

            string maiDatumIdo = DateTime.Now.ToString("yyyyMMdd_HHmm");

            Console.WriteLine("Jelenlegi dátum és idő szövegesen: {0}", maiDatumIdo);

 

            int ev = 2020;

            int honap = 01;

            int nap = 01;

            int ora = 15;

            int perc = 20;

            int masodPerc = 23;

            DateTime dt = new DateTime(ev, honap, nap, ora, perc, masodPerc);

            Console.WriteLine("Dátum és idő 6 változóból: {0}", dt);

            DateTime d = new DateTime(ev, honap, nap);

            Console.WriteLine("Ebből a dátum: {0} - mint látszik, kiírja az időt is", d); //kiírja az időt is

 

            TimeSpan elteltIdo = maiDatum - tegnapiDatum;   //a mai nap-idő és a tegnapi nap-idő között eltelt idő

            Console.WriteLine("Eltelt idő a mai és a tegnapi nap között: {0}", elteltIdo);

            int elteltNap = elteltIdo.Days;

            Console.WriteLine("Eltelt napok a mai és a tegnapi nap között: {0}", elteltNap);

 

            elteltIdo = maiDatum - szulDatum;   //a mai nap-idő és a születési nap-idő között eltelt idő

            Console.WriteLine("Eltelt idő a születésed és a mai nap között: {0}", elteltIdo);

 

            elteltNap = elteltIdo.Days;

            int elteltOra = elteltIdo.Hours;

            int elteltPerc = elteltIdo.Minutes;

            int elteltMasodPerc = elteltIdo.Seconds;

            int elteltEzredMasodPerc = elteltIdo.Milliseconds;

 

            Console.WriteLine("Eltelt napok a születésed és a mai nap között: {0}", elteltNap);

            Console.WriteLine("Ezen felül az eltelt órák: {0}", elteltOra);

            Console.WriteLine("Ezen felül az eltelt percek: {0}", elteltPerc);

            Console.WriteLine("Ezen felül az eltelt másodpercek: {0}", elteltMasodPerc);

            Console.WriteLine("Ezen felül az eltelt ezredmásodpercek: {0}", elteltEzredMasodPerc);

 

            Console.WriteLine("Ennyi éves vagy: {0}", elteltNap / 365);

 

            Console.ReadLine();

2020.11.13. Logikai műveletek 2. Igazságtáblák

 

! (NOT, tagadás)

A

!A

false

true

true

false

&& (ÉS)

A

B

A && B

true

true

true

true

false

false

false

true

false

false

false

false

|| (VAGY)

A

B

A || B

true

true

true

true

false

true

false

true

true

false

false

false


Órai munka: 

            //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.

Házi feladat befejezni.


2023.04.26. Javító feladatsor