2020.10.22. Programozás puska 2.0

A szünetet követő héten gyakorlati számonkérés lesz. 

Segítség a tanuláshoz:

  • argumentum szó másik jelentése: paraméter
  • SHIFT-F5: a futó program megszakítása
  • F5: fordítás és futtatás
  • F6: fordítás
  • CTRL-E-F: a kód helyreigazítása
  • A billentyűzet segítségével begépelt értékek, amit a konzol ablakból beolvasunk, mind kivétel nélkül string típusúak. Ha nem ilyen típusként akarjuk őket használni, konvertálni kell őket. Ha string-ként akarjuk őket használni, TILOS konvertálni.
  • Ha a dupla idézőjelet a szövegben ki akarom írni, mindenhova \ jelet kell elé beszúrni.
  • A \n soremelést helyez el a kiírt szöveg belsejében.

utasítás

értelmezés

Console.WriteLine();

üres sor létrehozása, a kurzor a következő sorban lesz

Console.WriteLine("Ide szöveget írok.");

szöveg kiírása, a kurzor a következő sorban lesz

Console.Write("Ide szöveget írok.");

szöveg kiírása, a kurzor ugyanabban a sorban marad

Console.ReadLine();

várakoztatás egy Enter lenyomására

string nev;

szöveg típusú változó definiálása (változó nevének és típusának megadása, hely lefoglalása a memóriában), nem adtunk neki kezdőértéket

string nev = "";

szöveg típusú változó definiálása ésértékadása („legyen egyenlő egy üres karakterlánccal”)

string osztaly = "";

osztaly= "9.a";

szöveg típusú változó definiálása és értékadása külön utasításban

Console.Write("Kérem a neved: ");

nev = Console.ReadLine();

1. adatbekérés kiírása a felhasználónak

2. adatbekérés változóba (a változót fentebb definiálni kellett)

Console.WriteLine(nev);

nev változó tartalmának kiírása (lehet bármilyen típusú)

Console.Beep();

hangjelzés

Console.Beep(500, 200);

hangjelzés, megadjuk a hangmagasságot és az időtartamot

Console.Title = "Ez az én programom";

a program ablak címsorába kerülő szöveg

Console.BackgroundColor = ConsoleColor.Blue;

a betű háttérszínének állítása

Console.ForegroundColor = ConsoleColor.Cyan;

a betű színének állítása

Console.Clear();

az aktuális háttérszínnel letörli a képernyőt

Console.ResetColor();

visszaállítja az eredeti előtér-, és háttérszínt

string jegy1 = Console.ReadLine();

a jegy1 nevű string (szöveges) típusú   változóba beolvasunk a billentyűzetről

int jegyEgy = Convert.ToInt32(jegy1);

1. a jegy1 string típusú változó tartalmát átkonvertáljuk int-té (egész   típusúvá)

2. a jegyEgy nevű int (egész szám) típusú változóba beletesszük az átkonvertált értéket

string jegy2 = Console.ReadLine();

lásd az előzőekben

int jegyKetto = Convert.ToInt32(jegy2);

lásd az előzőekben

int osszegUj = jegyEgy + jegyKetto;

1. a két int típusú változó tartalmát összeadjuk

2. elhelyezzük egy új int típusú osszegUj nevű változóban

Console.Write("Hány barátot szereztél az első héten? :");

kérdés kiírása

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

1. a válasz beolvasása a billentyűzetről (string-ként)

2. a beolvasott (szöveges) választ átalakítjuk byte (szám: 0-255) típusúvá

3. a byte típusú értéket elhelyezzük egy új, byte típusú barat1 nevű változóban

Console.Write("Hány új barátot szereztél a második héten? :");

lásd az előzőekben

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

lásd az előzőekben

Console.WriteLine("Összesen tehát {0} új barátot szereztél.", barat1 + barat2);

kiírunk egy szöveget, melynek belsejében a {0} helyén kiírjuk kettő byte típusú érték összegét

double elso = 10.5; 

double masodik = 7.25;

double típus (64 bites tört szám)

pontot kell írni a programban a tizedesvessző helyére

            double tortosszeg = elso + masodik;

            double tortkivonas = elso - masodik;

            double tortosztas = elso / masodik;

            double tortszorzas = elso * masodik;

alapműveletek tört számokkal

            Console.WriteLine("Összeadás: {0}  Kivonás (első - második) {1}  Osztás (első / második): {2}  Szorzás {3}", tortosszeg, tortkivonas,   tortosztas, tortszorzas);

4 változó értékét írjuk ki egy kiírásban;

a vessző után írt változók itt paraméterek (argumentumok), melyeket a Console.WriteLine() metódusnak meg kell adni, ha a {0}, stb. megoldást használjuk

az argumentumok közül az elsőt nullával jelezzük, és így tovább sorban

Console.Write("Kérem az első tört számot!  : "); 

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

tört szám bekérése a billentyűzetről:

a felhasználó vesszővel adja meg;

ezt is át kell konvertálni

Console.Write("Hányan voltak a hétvégi koncerten?: ");

kérdés kiírása

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

1. a válasz beolvasása a billentyűzetről (string-ként)

2. a beolvasott (szöveges) választ átalakítjuk int (szám) típusúvá

3. az int típusú értéket elhelyezzük egy új, int típusú fo nevű változóban

double cola = fo * 0.6;

1. megszorozzuk a fo változó tartalmát egy tört értékkel (forráskódban: 0.6, konzolos képernyőn: 0,6)

2. elhelyezzük az értéket egy double típusú, cola nevű változóban

Console.Write("Ki koncertezett a hét végén a városban?: ");

kérdés kiírása

string eloado = Console.ReadLine();

az eloado nevű string (szöveges) típusú változóba beolvasunk a billentyűzetről

Console.WriteLine("Biztos jól írtad be? Betűzd! (8 betű, ha kell, szóközökkel pótold.) ");

kérés kiírása

string eloado1 = "";

szöveg típusú változó definiálása ésértékadása („legyen egyenlő egy üres karakterlánccal”)

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

kérés kiírása, kurzor a kiírás után marad

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

1. a válasz beolvasása a billentyűzetről (string-ként)

2. a beolvasott (szöveges) választ átalakítjuk char (karakter) típusúvá

3. a karakter típusú értéket elhelyezzük egy új, char típusú _1 nevű változóban

eloado1 = eloado1 + _1;

1. a string típusú, alapértelmezetten üres eloado1 nevű változóhoz hozzáadjuk az _1 nevű, karakter típusú változó tartalmát, ezáltal az eredménystring egyetlen betű lesz, mégpedig az _1 tartalma

 

eloado1 = eloado1 + _2;

ehhez hozzáadjuk az _2 tartalmát is, mostmár két karakteres a string

char elsoSzam = '1';

char betu = 'a';

char típus esetén sima aposztrófot használunk

string kod1 = String.Empty;

a változónak kezdőértéket ad, méghozzá egy üres karakterláncot

            string szo = "ipiapacs";

            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 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 = "szünet";

            Console.WriteLine(szo.Length);

kiírja, hány karakter hosszú a szó

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

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);

 

a \n soremelést helyez el a szöveg belsejében

2020.10.21.-22. Gyakorlás - Math osztály - Házi feladat befejezni


using System;

 

namespace gyak102410b

{

    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();

        }

    }

}


F.Szabolcs megoldása:

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.

            double negyzetgyokANegyzet = Math.Pow(Math.Sqrt(A), 2);

            double AbszolutErtekA = Math.Abs(A);

            Console.WriteLine("Négyzetgyök A a négyzeten: {0}, A abszolútértéke: {1}", negyzetgyokANegyzet, AbszolutErtekA);

 

 

 

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

            double negyzetgyökAMinusz1 = (Math.Sqrt(A) - 1) * (Math.Sqrt(A) + 1);

            double negyzetgyökAUtolso = A - 1;

            Console.WriteLine("(négyzetgyök A-1) * (négyzetgyök A+1): {0}, A-1: {1}", negyzetgyökAMinusz1, negyzetgyökAUtolso);

 

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

            double szamitas3 = (2 * Math.Sqrt(A) + 1) * (2 * Math.Sqrt(A) - 1);

            double szamitas4 = 4 * A - 1;

            Console.WriteLine("(2*négyzetgyök A + 1) * (2*négyzetgyök A - 1): {0}, 4*A-4: {1}", szamitas3, szamitas4);

 

 

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

            double szamitas5 = Math.Pow(A + B, 2);

            double szamitas6 = Math.Pow(A, 2) + 2 * A * B + Math.Pow(B, 2);

            Console.WriteLine("A+B^2: {0}, A^2 + 2*A*B + B^2: {1}", szamitas5, szamitas6);

 

 

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

            double szamitas7 = 5 / Math.Sqrt(7) + Math.Sqrt(2);

            Console.WriteLine("5 / négyzetgyök 7 + négyzetgyök 2: {0}", szamitas7);

 

            // 3 / négyzetgyök 7

            double szamitas8 = 3 / Math.Sqrt(7);

            Console.WriteLine("3 / négyzetgyök 7: {0}", szamitas8);

 

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

            double szamitas9 = 7 / 3 * Math.Sqrt(5);

            Console.WriteLine("7 / 3 * négyzetgyök 5. {0}", szamitas9);

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

            double szamitas10 = 34 / Math.Sqrt(3) - 2 * Math.Sqrt(5);

            Console.WriteLine("34 / négyzetgyök 3 - 2 * négyzetgyök 5: {0}", szamitas10);

 

 

            Console.ReadLine();


2023.04.26. Javító feladatsor