WebProg-2014/Gyakorlat6
A MathWikiből
(Változatok közti eltérés)
(Új oldal, tartalma: „== Ismétlés == === Prímek adott számig === Egészítsétek ki a primes függvényt, ami egy List objektumban visszaadja a prímek listáját 0-tól a paraméterk…”) |
|||
(egy szerkesztő 9 közbeeső változata nincs mutatva) | |||
3. sor: | 3. sor: | ||
=== Prímek adott számig === | === Prímek adott számig === | ||
− | Egészítsétek ki a primes függvényt, ami egy List objektumban visszaadja a prímek listáját 0-tól a paraméterként kapott számig. Tehát, ha 10-et adunk át a függvénynek, akkor adja vissza a [2, 3, 5, 7] listát. | + | Egészítsétek ki a '''primes''' függvényt, ami egy '''List''' objektumban visszaadja a prímek listáját 0-tól a paraméterként kapott számig. Tehát, ha 10-et adunk át a függvénynek, akkor adja vissza a [2, 3, 5, 7] listát. |
<java> | <java> | ||
22. sor: | 22. sor: | ||
== Bemelegítõ feladatok == | == Bemelegítõ feladatok == | ||
+ | |||
+ | Ezekhez a feladatokhoz nagyon hasznos az elõadás ismerete: [http://math.bme.hu/~kkovacs/webprog2015/WebprogEA6.pdf 6. elõadás] | ||
=== Tégla rajzolás === | === Tégla rajzolás === | ||
+ | Módosítsuk úgy az alábbi kódot, hogy a kb a következõ ábrát kapjuk: [http://math.bme.hu/~kkovacs/webprog2015/teglak.jpg teglak] | ||
+ | |||
+ | <java> | ||
+ | import java.awt.Color; | ||
+ | import java.awt.Frame; | ||
+ | import java.awt.Graphics; | ||
+ | import java.awt.Graphics2D; | ||
+ | import java.awt.event.WindowAdapter; | ||
+ | import java.awt.event.WindowEvent; | ||
+ | |||
+ | public class Teglak extends Frame { | ||
+ | |||
+ | public static void main(String args[]) { | ||
+ | new Teglak(); | ||
+ | } | ||
+ | |||
+ | public Teglak() { | ||
+ | super("Teglak"); // Az ablak neve | ||
+ | |||
+ | setSize(400, 200); // Ablakméret beállítása | ||
+ | |||
+ | setVisible(true); // Enélkül nem látszana semmi | ||
+ | |||
+ | // Ezzel most ne foglalkozzatok, arra felel, hogy | ||
+ | // ha bezáródik az ablak, akkor minden felszabaduljon. | ||
+ | addWindowListener(new WindowAdapter() { | ||
+ | public void windowClosing(WindowEvent e) { | ||
+ | dispose(); | ||
+ | System.exit(0); | ||
+ | } | ||
+ | }); | ||
+ | } | ||
+ | |||
+ | // Itt történik a rajzolás | ||
+ | @Override | ||
+ | public void paint(Graphics g) { | ||
+ | // Csak, hogy a 2D rajzolást használjuk | ||
+ | Graphics2D g2d = (Graphics2D) g.create(); | ||
+ | |||
+ | g2d.setColor(Color.black); // Szín beállítása | ||
+ | g2d.drawRect(50, 50, 50, 70); // Keret rajzolása | ||
+ | g2d.setColor(Color.blue); | ||
+ | g2d.fillRect(50, 50, 50, 70); // Kitöltés | ||
+ | |||
+ | // Ezáltal a transzformációk visszaállnak a következõ rajzolásnál | ||
+ | g2d.dispose(); | ||
+ | } | ||
+ | } | ||
+ | </java> | ||
+ | |||
+ | === Kör(szelet) === | ||
+ | |||
+ | Használva a '''Graphics2D''' '''fillArc''' és '''fillOval''' metódusait rajzoljatok körszeletet és kört. | ||
+ | === Háromszög === | ||
− | + | Rajzoljatok egy háromszöget az elõadáson tanult '''GeneralPath''' osztályt használva. Írjátok a háromszögbe a 3-as számot a '''Graphics2D''' '''drawString''' metódusával. | |
− | === | + | === Ház === |
− | + | Használjátok bármilyen rajzolási módot, hogy rajzoljatok egy minimalista (óvodás rajzolta) házat. |
A lap jelenlegi, 2015. április 1., 11:06-kori változata
Tartalomjegyzék |
Ismétlés
Prímek adott számig
Egészítsétek ki a primes függvényt, ami egy List objektumban visszaadja a prímek listáját 0-tól a paraméterként kapott számig. Tehát, ha 10-et adunk át a függvénynek, akkor adja vissza a [2, 3, 5, 7] listát.
import java.util.ArrayList; import java.util.List; public class Prime { public static List<Integer> primes(int upperBound) { // TODO } public static void main(String[] args) { System.out.println(primes(100)); } }
Bemelegítõ feladatok
Ezekhez a feladatokhoz nagyon hasznos az elõadás ismerete: 6. elõadás
Tégla rajzolás
Módosítsuk úgy az alábbi kódot, hogy a kb a következõ ábrát kapjuk: teglak
import java.awt.Color; import java.awt.Frame; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class Teglak extends Frame { public static void main(String args[]) { new Teglak(); } public Teglak() { super("Teglak"); // Az ablak neve setSize(400, 200); // Ablakméret beállítása setVisible(true); // Enélkül nem látszana semmi // Ezzel most ne foglalkozzatok, arra felel, hogy // ha bezáródik az ablak, akkor minden felszabaduljon. addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { dispose(); System.exit(0); } }); } // Itt történik a rajzolás @Override public void paint(Graphics g) { // Csak, hogy a 2D rajzolást használjuk Graphics2D g2d = (Graphics2D) g.create(); g2d.setColor(Color.black); // Szín beállítása g2d.drawRect(50, 50, 50, 70); // Keret rajzolása g2d.setColor(Color.blue); g2d.fillRect(50, 50, 50, 70); // Kitöltés // Ezáltal a transzformációk visszaállnak a következõ rajzolásnál g2d.dispose(); } }
Kör(szelet)
Használva a Graphics2D fillArc és fillOval metódusait rajzoljatok körszeletet és kört.
Háromszög
Rajzoljatok egy háromszöget az elõadáson tanult GeneralPath osztályt használva. Írjátok a háromszögbe a 3-as számot a Graphics2D drawString metódusával.
Ház
Használjátok bármilyen rajzolási módot, hogy rajzoljatok egy minimalista (óvodás rajzolta) házat.