BME MOGI Gépészeti informatika 5.

Hasonló dokumentumok
BME MOGI Gépészeti informatika 4.

// keressük meg a legnagyobb faktoriális értéket, ami kisebb, // mint százmillió

BME MOGI Gépészeti informatika 6.

1. feladat Készítse el szövegszerkesztővel, majd mentse osztály.txt néven a következő tartalmú szöveges fájlt:

BME MOGI Gépészeti informatika 13.

BME MOGI Gépészeti informatika 1.

BME MOGI Gépészeti informatika 7.

GenerikusOsztály<objektumtípus> objektum = new GenerikusOsztály<objektumtípus>();

BME MOGI Gépészeti informatika 2.

Felvételi tematika INFORMATIKA

Programozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás V 1.0 OE-NIK,

BME MOGI Gépészeti informatika 18. Grafika, fájlkezelés gyakorló óra. 1. feladat Készítsen alkalmazást az = +

Készítette: Nagy Tibor István

3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai

Programozás I. Gyakorlás egydimenziós tömbökkel Többdimenziós tömbök Gyakorló feladatok V 1.0 ÓE-NIK-AII,

BME MOGI Gépészeti informatika 8.

Bevezetés a programozásba I.

INFORMATIKAI ALAPISMERETEK

OOP: Java 1.Gy: Java alapok

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb

C# feladatok gyűjteménye

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

INFORMATIKA javítókulcs 2016

Szoftvertechnolo gia gyakorlat

BME MOGI Gépészeti informatika 14.

Java Programozás 1. Gy: Java alapok. Ismétlés ++

PROGRAMOZÁS ALAPFELADATOK

Alkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek

Informatika terméktervezőknek

hiányzott szeptemberben vagy A tanuló nem hiányzott szeptemberben szöveget

6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok

INFORMATIKA tétel 2018

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

BME MOGI Gépészeti informatika 15.

1. Jelölje meg az összes igaz állítást a következők közül!

Torna. A torna.csv UTF-8 kódolású állományban soronként egy versenyző eredményeit tároljuk. Az adatokat pontosvessző választja el egymástól.

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs

Gyakorló feladatok az 1. nagy zárthelyire

Objektumorientált Programozás V.

Objektumorientált Programozás VI.

A képernyőre írást igénylő részfeladatok eredményének megjelenítése előtt írja a képernyőre a feladat sorszámát (például: 3. feladat:)!

Megjegyzés: A programnak tartalmaznia kell legalább egy felhasználói alprogramot. Példa:

Kalapácsvetés 2016 szöveges

Ajánlott elemi feladatok az AAO tárgyhoz 41 feladat

Alkalmazott modul: Programozás. Programozási tételek, rendezések Giachetta Roberto

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

Programozás Minta programterv a 1. házi feladathoz 1.

Objektum Orientált Programozás V.

Form1 Form Size 400;400 Text Mozgó kör timer1 Timer Enabled True Interval 100

Szoftvertervezés és -fejlesztés I.

Bevezetés a programozásba I.

Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása

Programozási nyelvek Java

C# feladatgyűjtemény Kovács Emőd, Radványi Tibor, Király Roland, Hernyák Zoltán

Maximum kiválasztás tömbben

OOP I. Egyszerő algoritmusok és leírásuk. Készítette: Dr. Kotsis Domokos

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós szeptember 27. Széchenyi István Egyetem, Gy r

Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás

BBTE Matek-Infó verseny mintatételsor Informatika írásbeli vizsga

Számelmélet Megoldások

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 31. Széchenyi István Egyetem, Gy r

OOP: Java 8.Gy: Gyakorlás

1. numere.txt n (1 n 10000) n növekvő kilenc a) Pascal/C++ Például: NUMERE.TXT

Bánsághi Anna 2014 Bánsághi Anna 1 of 35

I. Specifikáció készítés. II. Algoritmus készítés

Programozás alapjai. 6. gyakorlat Futásidő, rekurzió, feladatmegoldás

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Felvételi vizsga mintatételsor Informatika írásbeli vizsga

2018, Funkcionális programozás

INFORMATIKA tétel 2019

INFORMATIKAI ALAPISMERETEK

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Példatár a bevezetés a Matlab programozásába tárgyhoz

OOP: Java 8.Gy: Abstract osztályok, interfészek

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

BABEŞ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR BBTE Matek-Infó verseny 1. tételsor INFORMATIKA írásbeli. A versenyzők figyelmébe:

Programozási nyelvek II.: JAVA, 4. gyakorlat

Programozás I. Szöveges fájlok kezelése Felsorolástípus Objektumtömb Gyakorló feladatok

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15

Programozás C nyelven 5. ELŐADÁS. Sapientia EMTE

Programozás BMEKOKAA146. Dr. Bécsi Tamás 8. előadás

2. Milyen értéket határoz meg az alábbi algoritmus, ha A egy vektor?. (2 pont)

end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..

4. Gy: JAVA osztályok

Tartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.

11. gyakorlat Sturktúrák használata. 1. Definiáljon dátum típust. Olvasson be két dátumot, és határozza meg melyik a régebbi.

Programozás alapjai 9.Gy: Struktúra 2.

Gyakorló feladatok. Az alaputasítások olyanok, mint C-ben. (Részleteket ld. segedletek/02.pdf vagy bármelyik Java tutorial.)

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Keresés és rendezés. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán

Alkalmazott modul: Programozás 4. előadás. Procedurális programozás: iteratív és rekurzív alprogramok. Alprogramok. Alprogramok.

Írjon olyan programot a standard könyvtár alkalmazásával, amely konzolról megadott valós adatokból meghatározza és kiírja a minimális értékűt!

Érdekes informatika feladatok

Access adatbázis elérése OLE DB-n keresztül

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Számelmélet

C programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem }

Tartalomjegyzék Algoritmusok - pszeudókód

Átírás:

BME MOGI Gépészeti informatika 5. 1. feladat Készítsen alkalmazást, mely feltölt egy egydimenziós tömböt adott tartományba eső, véletlenszerűen generált egész értékekkel! Határozza meg a legkisebb és a legnagyobb elemet, valamint azt, hogy ezen elemek sorban hányadik értékként találhatók meg a tömbben! Rendezze az elemeket nagyság szerint növekvő sorrendbe az Array osztály megfelelő metódusával, és bináris vagy szekvenciális kereséssel döntse el, hogy egy beolvasott érték előfordul-e a tömbben! A feladat megoldásához írja meg a következő metódusokat! a. Metódus egy sztringben tárolt adat egész számmá történő alakítására! Bemenő paraméter a sztring, kimenő paraméter az egész szám, visszaadott érték az igaz logikai érték, ha az átalakítás sikeres volt, különben a hamis logikai érték! Ha az átalakítás sikertelen, a metódus hozzon létre formátum kivételt! b. Metódus egy egydimenziós, egész tömb létrehozására, és feltöltésére véletlen egész számokkal! Bemenő paraméterek: a tömb mérete, annak a tartománynak az alsó és felső határa, amelyből az értékeket generálni kell. Visszaadott érték a generált tömb (hivatkozása)! c. Metódus egy egydimenziós, egész tömb elemeinek sztringben történő előállítására! Az elemeket vesszővel válassza el! Bemenő paraméterek: a tömb, visszaadott érték a sztring! d. Metódus egy egydimenziós, egész tömb legkisebb és legnagyobb elemének meghatározására! Bemenő paraméter a tömb, kimenő paraméterek a minimum és a maximum értéke. e. Metódus annak meghatározására, hogy egy egydimenziós, egész tömbben egy adott számmal mely tömbelemek egyenlők! Bemenő paraméter a tömb és a szám, visszaadott érték egy sztring, mely az indexeket vesszővel elválasztva tartalmazza! f. Metódus egy szám szekvenciális keresésére egydimenziós, egész tömbben! Bemenő paraméter a tömb és a szám! Visszaadott érték az igaz logikai érték, ha a szám előfordul a tömbben, különben a hamis logikai érték! Megoldási mód: Windows Forms alkalmazás Oktatási cél: egydimenziós tömbkezelés bemutatása, metódusok használata tömb argumentumokkal, minimum- és maximumkeresés, rendezés, bináris és szekvenciális keresés algoritmusának tárgyalása Az elkészítendő form: 1

A Form1 osztályba írandó programkód: const int maxméret = 100; int n = 0, minimum=0, maximum=0; int[] t = new int[maxméret]; int keresett = 0; private void button1_click(object sender, EventArgs e) if (BeolvasEgész(textBox1.Text, out n)) if (n<=0 n>maxméret ) MessageBox.Show("Hibás elemszám!"); return; t = Feltölt(n, 1, 100); textbox2.text=tömbkiír(t); MinMax(t, out minimum, out maximum); textbox3.text = minimum.tostring (); textbox4.text = maximum.tostring(); textbox5.text = Hányadik(t, minimum); textbox6.text = Hányadik(t, maximum); Array.Sort(t, 0, n); textbox7.text = TömbKiír(t); private bool BeolvasEgész(string mező, out int változó) 2

bool vissza = true; mező = "0" + mező; vissza = int.tryparse(mező, out változó); if (!vissza) throw new FormatException("Formátumhiba! " + mező); return vissza; private int[] Feltölt(int méret, int alsó, int felső) Random rnd = new Random(); int[] tömb = new int[méret]; for (int i = 0; i < méret; i++) tömb[i] = rnd.next(alsó, felső+1); return tömb; private string TömbKiír(int[] tömb) string s = ""; for (int i = 0; i < tömb.length; i++) s += tömb[i].tostring(); if (i<tömb.length-1) s += ", "; return s; private void button2_click(object sender, EventArgs e) if (BeolvasEgész(textBox8.Text, out keresett)) if (checkbox1.checked) if (Array.BinarySearch(t, keresett)>0) MessageBox.Show("A szám előfordul a tömbben."); else MessageBox.Show("A szám nem fordul elő a tömbben."); else if (talál(t,keresett)) MessageBox.Show("A szám előfordul a tömbben."); else MessageBox.Show("A szám nem fordul elő a tömbben."); 3

2. feladat private void MinMax(int[] tömb, out int min, out int max) max = int.minvalue; min = int.maxvalue; foreach (int elem in tömb) if (elem > max) max = elem; if (elem < min) min = elem; private void Form1_Load(object sender, EventArgs e) checkbox1.checked = true; private string Hányadik(int[] tömb, int elem) string s = ""; for (int i = 0; i < tömb.length; i++) if (tömb[i]==elem) s += (i+1).tostring()+", "; return s; private bool talál(int[] tömb, int szám) bool van = false; foreach (int elem in tömb) if (elem==szám) van = true; break; return van; Írjon konzolalkalmazást, amely véletlen egész értékekkel feltölt egy kétdimenziós tömböt! A mátrix méreteit és annak a számtartománynak a határait, melyből generálni kell az elemeket, kérje be a felhasználótól! Írja ki a mátrixot és a transzponáltját a képernyőre! Megoldási mód: konzolalkalmazás Oktatási cél: kétdimenziós tömbkezelés bemutatása 4

A programkód: static void Main(string[] args) Random rnd = new Random(); Console.WriteLine("Kérem a mátrix méreteit:"); int n = Convert.ToInt32(Console.ReadLine()); // sorok száma int m = Convert.ToInt32(Console.ReadLine()); // oszlopok száma Console.WriteLine("Kérem a generáláshoz a számtartomány határait:"); int alsó = Convert.ToInt32(Console.ReadLine()); int felső = Convert.ToInt32(Console.ReadLine()); int[,] t = new int[n, m]; Console.WriteLine(); Console.WriteLine("A mátrix"); for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) t[i, j] = rnd.next(alsó, felső + 1); Console.Write("0,5",t[i,j]); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("A mátrix transzponáltja"); for (int i = 0; i < m; i++) for (int j = 0; j < n; j++) Console.Write("0,5", t[j, i]); Console.WriteLine(); Console.ReadLine(); 3. feladat Készítsen alkalmazást, mely előállítja az alábbi négyzetes mátrixok egyikét: 5

egységmátrix, folytonos feltöltés 1-től nxn-ig a természetes számokkal, feltöltés az indexek összegével. A feltöltött mátrixot Label vezérlőben jelenítse meg, melynek betűtípusát állítsa Consolas vagy Courier betűtípusra. Írjon metódust, mely a formázott mátrixot sztringben adja vissza! Megoldási mód: Windows Forms alkalmazás Oktatási cél: kétdimenziós tömbkezelés gyakoroltatása Az elkészítendő form A Form1 osztályba írandó programkód: int n = 0; private void button1_click(object sender, EventArgs e) if (!int.tryparse(textbox1.text,out n) n<2 n>5) MessageBox.Show("Hibás adatmegadás!"); return; int[,] t = new int[n, n]; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) if (radiobutton1.checked ) if (i==j) 6

t[i, j] = 1; else t[i, j] = 0; else if (radiobutton2.checked) t[i, j] = i*n+j+1; else if (radiobutton3.checked) t[i, j] = i+j; textbox2.text = tömbkiír(t); private void Form1_Load(object sender, EventArgs e) radiobutton1.checked = true; private string tömbkiír(int[,] tömb) string s = ""; for (int i = 0; i < tömb.getlength(0); i++) for (int j = 0; j < tömb.getlength(1); j++) s += tömb[i, j].tostring() + "\t"; s += "\n"; return s; 7

Gyakorló feladatok - tömbkezelés 1. Készítsen konzolalkalmazást, melyben feltölt egy 30-elemű tömböt véletlen egész számokkal a [-50 ; 50] számtartományból! a. Írja ki a képernyőre egymás mellé a számokat, ha azonban a szám osztható öttel vagy nyolccal, emeljen sort! b. Írja ki a pozitív számokat a beolvasás sorrendjében és számoljuk meg, hogy hány páros van közöttük! Soronként tíz elem jelenjen meg! c. Írja ki a negatív elemeket fordított sorrendben! d. Vizsgálja meg, hogy egy beolvasott negatív szám előfordul-e a negatív számok között, és ha igen, akkor hányszor! e. Számítsa ki külön-külön az egyjegyű és a kétjegyű elemek átlagát! f. Keresse meg a legkisebb pozitív és a legnagyobb negatív elemet, és azt is írja ki, hogy ők melyik tömbelemben találhatók. 2. Készítsen Windows Forms alkalmazást, melyben töltsön fel egy N x M-es kétdimenziós valós tömböt -10 és 10 közötti véletlen egészekkel! N és M értékét is generálja, azok értéke 2 és 10 közötti legyen! a. Jelenítse meg formázva a tömböt egy Label vezérlőben, melynek betűtípusát előzőleg állítsa Consolas vagy Courier betűtípusra! b. Határozza meg a minimumot és a maximumot, és írja ki az értékeket egy-egy TextBox vezérlőbe! c. Írja ki külön-külön a minimummal és a maximummal azonos elemek indexeit egy ListBox vezérlőbe, soronként egy indexpárt megjelenítve! d. Számítsa ki a 2. oszlop elemei négyzetösszegének gyökét, és ossza el ezen oszlop elemeit a kiszámított értékkel, majd írja ki a tömböt! e. Vonja ki az 1. oszlop elemeiből a 2. oszlop elemeit, majd írja ki a tömböt! f. Cserélje meg az 1. sort a 2. sorral, és írja ki a tömböt! Az utolsó három feladatnál az eredményt egy új, kétdimenziós tömbben állítsa elő, a megjelenítéshez egy második Label vezérlőt használjon, hogy az eredeti mátrix látható maradjon! 3. Írjon Windows Forms alkalmazást, mely generál 5 lottószámot, majd bekér öt darab 1-90 közötti értéket, és meghatározza, hogy ezekkel a számokkal kitöltött lottószelvény hány találatos! 4. Készítsen címletező programot! Kérjen be egy beviteli mezőben egy összeget, és írja a képernyőre egy ListBox vezérlőbe, hogy ezt az összeget milyen címletekkel lehet kifizetni! (Használja a hivatalos magyar fizetőeszköz címleteit!) 5. Írjon Windows Forms alkalmazást, mely egy tízes számrendszerbeli számot átvált kettes számrendszerbe! Az adatbeolvasáshoz és az eredmény megjelenítéséhez használjon TextBox vezérlőket! 6. Készítsen Windows Forms alkalmazást, mely egy hetes számrendszerbeli szám tízes számrendszerbeli értékét határozza meg! A szám beolvasásakor ellenőrizze, hogy a szám számjegyei csak 0-6 közötti értékek lehetnek! 8

7. Készítsen konzolalkalmazást, mely egy billentyűzetről 9999 végjelig olvasott számsorozatot megvizsgál, hogy számtani vagy mértani sorozat-e! Számtani a sorozat, ha a n=(a n-1+a n+1)/2, mértani, ha a n2 =a n-1*a n+1 összefüggés teljesül az első és utolsó kivételével minden elemre! 8. Írjon Windows Forms alkalmazást, mely egy tömb elemeit 1 pozícióval eltolja a 0. elem irányába! A tömb régi első eleme legyen az utolsó, a második az első stb.! A tömböt véletlen számokkal töltse fel! Az eredeti és az eltolt tömb elemeit is többsoros TextBox vezérlőkben jelenítse meg, vesszővel tagolva! 9. Készítsen konzolalkalmazást, amely egy tömb elemeit kéri be billentyűzetről, de nem enged meg ismétlődést (két egyenlő értékű elemet nem fogad el)! 10. Írjon Windows Forms alkalmazást, mely egy véletlen számokkal feltöltött tömbben szereplő, különböző értékű elemeket egy másik tömbbe másolja. A tömböket ListBox vezérlőkben jelenítse meg! 11. Készítsen Windows Forms alkalmazást, amely egy polinom helyettesítési értékét számolja ki. A polinom együtthatóit egy a tömb tárolja! A polinom általános alakja a[0]*x n + a[1]*x n-1 + a[2]*x n-2 + a[n-1]*x+ a[n]. Az n és az x értékét olvassa be, a polinom együtthatóit véletlenszerűen generálja! 12. Készítsen konzolalkalmazást, mely feltölt egy tömböt véletlenszerűen 0-kal és 1-kel! Készítsen statisztikát egy másik tömbben az 1-es sorozatok (egymás utáni előfordulás) hosszáról! A darabszámokat tartalmazó tömb indexe jelezze, hogy az adott sorozat milyen hosszú. 13. Írjon Windows Forms alkalmazást, amely egy véletlenszerűen feltöltött tömbben megfordítja az elemek sorrendjét. 14. Írjon konzolalkalmazást, mely egy konstans négyzetes mátrixról eldönti, hogy bűvös négyzet-e! A bűvös négyzetben a sorok, az oszlopok és az átlók elemeinek összege egyenlő! Dolgozhat például a következő konstans tömbbel: int[,] tömb=4,9,8,11,7,3,6,5,10; 9