Házi feladat: 3 feladatot megoldani onnantól, ahol vagy éppen.
NMSZC Szent-Györgyi Albert Technikum (Balassagyarmat) - 2022-23/12B2 csoport 'programozás' órai anyagai
2020.11.02. Összefoglalás: ismétlés, rendszerezés
Házi feladat bepótolni a házit, akinek kell.
További házi feladat a lemaradásodat pótolni, ha van ilyen. Még a héten megírjuk a gyakorlati tz-t.
Ezt a feladatsort itt folytatjuk.
Gyakorló feladatsor: ezt a feladatsort másold a programba:
Ö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 6 oldalú 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.
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); | a 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();
}
}
}
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();
-
Elkezdtük (ebből a web készen van a többségnek) 2022. ŐSZ KÖZÉP - XIX. Bükk Hegyikerékpár Maraton, Balaton
-
Folytattuk: Pataky próbaérettségi befejezés (Lottószámok, Kőbánya) - még van, aki nem fejezte be 2021. TAVASZ KÖZÉP - Karácsonyi díszek, Tr...
-
'22. tavaszi közép befejezés '20 Jedlikes próbaérettségi