Arhive categorie: Lectii

Echipe înscrise în concursul “The Code of Beauty – The Beauty of Code”

NU UITA! Te mai poți înscrie doar până pe 10 iunie 2019, ora 23.00, aici: https://programarecurabdare.ro/concursul-pentru-fete/

Echipe înscrise până acum în concursul de informatică pentru fete “The Code of Beauty – The Beauty of Code”

  1. Dumitrescu Andreea (Colegiul Național „Mihai Viteazul”, București) și Dervis Diana (Colegiul Național „Sfântul Sava”, București)
  2. Hîncu Alice (Colegiul Național „Gheorghe Vrănceanu”, Bacău) și Beresteanu Alexandra (Colegiul Național „Gheorghe Vrănceanu”, Bacău)
  3. Bourceanu Maria (Colegiul Național „Alexandru Ioan Cuza”, Galati) și Niculcea Elena (Colegiul Național „Alexandru Ioan Cuza”, Galați)
  4. Stoica Oana-Larisa (Colegiul Național „Emil Botta”, Adjud) și Carp Cristina-Emanuela (Colegiul Național „Emil Botta”, Adjud)
  5. Filimon Ioana Andreea (Colegiul National „Vasile Alecsandri”, Galati) și Gavrilescu Anamaria Angela (Colegiul National “Vasile Alecsandri” Galati)
  6. Zara Mara (Colegiul Național „Emil Botta”, Adjud) și Arsene Diana (Colegiul Național “Emil Botta”, Adjud)
  7. Doltu Teodora Eliza (Colegiul Național „Dimitrie Cantemir”, Onesti) și Pîrjol Mara Olivia (Colegiul Național „Dimitrie Cantemir”, Onesti)
  8. Trandafir Denisa-Adriana (Colegiul Național „Ienăchiță Văcărescu”, Târgoviște) și Onea Ioana-Cătălina (Colegiul Național „Ienăchiță Văcărescu”, Târgoviște)
  9. Bădescu Alexandra (Liceul Tehnologic Administrativ și de Servicii „Victor Slăvescu”, Ploiești) și Sandu Corina (Liceul Tehnologic Administrativ și de Servicii „Victor Slăvescu”, Ploiești)
  10. Adetu Amalia Ioana (Colegiul Național „Gheorghe Munteanu Murgoci” Brăila) și Munteanu Irina Mihaela (Colegiul Național „Nicolae Bălcescu” Brăila)
  11. Buzatu Ana Alexandra (Colegiul Național ”Grigore Moisil”, Onești) și Michea Adriana Georgiana (Colegiul Național ”Grigore Moisil”, Onești)
  12. Botezatu Bianca Ioana (Colegiul Național „Dimitrie Cantemir”, Onești) și Rusu Tatiana (Colegiul Național „Dimitrie Cantemir”, Onești)
  13. Pribagu Alexandra-Elena (Colegiul Național „Vasile Alecsandri”, Bacău) și Smău Alexandra-Mara (Colegiul Național „Vasile Alecsandri”, Bacău)
  14. Neagu Diana (Colegiul Național „Alexandru Ioan Cuza”, Galați) și Petrea Ana-Maria (Colegiul Național „Alexandru Ioan Cuza”, Galați)
  15. Munteanu Bianca-Stefania (Colegiul Național „Gheorghe Vrănceanu”, Bacău) și Murariu Alexandra (Colegiul Național „Gheorghe Vrănceanu”, Bacău)
  16. Buraga Andreea-Elena (Colegiul Național „Emil Botta”, Adjud) și Prisecaru Alexia-Nicoleta Colegiul Național „Emil Botta”, Adjud)
  17. Barbu Maria Teodora (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea) și Alexandru Andrada Theodora (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea)
  18. Zachman-Țîșcă Roxana (Liceul Teoretic „Ion Borcea” Buhuși) și Sava Cosmina-Narcisa (Liceul Teoretic „Ion Borcea” Buhuși)
  19. Ursoiu Ioana (Colegiul Național „Ion Luca Caragiale” Ploiești) și Tănase Andreea (Colegiul Național „Ion Luca Caragiale” Ploiești)
  20. Păun Mirela (Colegiul Național „Alexandru Ioan Cuza”, Galați) și Damian Oana-Ștefania (Colegiul Național „Alexandru Ioan Cuza”, Galați)
  21. Ivu Carina (Colegiul Național „Gheorghe Vrănceanu”, Bacău) și Nanu Alexandra (Colegiul Național „Gheorghe Vrănceanu”, Bacău)
  22. Popescu Diana Maria (Colegiul Național de Informatică „Tudor Vianu”, București) și Mosteanu Alina Miahaela (Colegiul Național de Informatică „Tudor Vianu”, București)
  23. Mitroi Elena-Andreea (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea) și Rotaru Mira (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea)
  24. Tudor Ștefania – Miruna (Colegiul Național „I. L. Caragiale”, Ploiești) și Andronache Mădălina – Georgiana (Colegiul Național „I. L. Caragiale”, Ploiești)
  25. Romanescu Adia (Liceul Teoretic de Informatică „Grigore Moisil”, Iași) și Mihaela Hudisteanu (Colegiul Național „Emil Racoviță”, Iași)
  26. Mocanu Maria Alexandra (Colegiul Național de Informatică „Tudor Vianu”, București), Halean Eusebia (Colegiul Național de Informatică „Tudor Vianu”, București)
  27. Stan Andra Beatrice Corina (Colegiul Național „Roman Vodă”, Roman) și Bolog Andreea Ioana (Colegiul Național „Roman Vodă”, Roman)
  28. Tanțoș Maria Iuliana (Colegiul Național „Ferdinand I”, Bacău) și Băluță Alexia (Colegiul Național „Ferdinand I”, Bacău)
  29. Ionescu Petra Alexandra (Colegiul Național „Ion Luca Caragiale”, Ploiești) și Dumitru Anastasia (Colegiul Național „Ion Luca Caragiale”, Ploiești)
  30. Pană Alexandra (Colegiul Național „Ienăchiță Văcărescu”, Târgoviște) și Cojocaru Anne-Marie-Zoe (Colegiul Național „Ienăchiță Văcărescu”, Târgoviște)
  31. Neguriță Diana-Gabriela (Colegiul Național „Gheorghe Vrănceanu”, Bacău) și Pătrăşcan Alina-Monica (Colegiul „Mihai Eminescu”, Bacau)
  32. Șerban Alexandra (Colegiul Național „Vasile Alecsandri”, Galați) și Gheorghiță Andreea (Colegiul Național „Vasile Alecsandri”, Galați)
  33. Postolache Anaid Maria (Colegiul Național de Informatică „Tudor Vianu”, București) și Costache Alexandra (Colegiul Național „Ion Luca Caragiale”, București)
  34. Mocanu Ioana (Colegiul Național „Vasile Alecsandri”) și Senteș Aida (Colegiul Național „Vasile Alecsandri”, Bacău)
  35. Rac Ioana (Colegiul Național „I. L. Caragiale” București) și Marinescu Ștefania Ioana (Colegiul Național de Informatică „Tudor Vianu”, București)
  36. Paraschiv Andreea (Colegiul Național „Mircea cel Bătrân”, Râmnicu Vâlcea) și Dincă Diana (Colegiul Național „Mircea cel Bătrân”, Râmnicu Vâlcea)
  37. Șerbănică Andreea-Maria (Colegiul Național „Mircea cel Bătrân”, Râmnicu Vâlcea) și Rădulescu Alexandra (Colegiul Naâional „Mircea cel Bătrân”, Râmnicu Vâlcea)
  38. Bușe Ioana Florena (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea) și Untaru Letiția Cristiana (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea)
  39. Erdei Sonia (Colegiul Național „Ioan Slavici”, Satu-Mare) și Iancu Dariana (Colegiul Național „Ioan Slavici”, Satu-Mare)
  40. Nicula Maria (Colegiul Național de Informatică „Matei Basarab”, Râmnicu Vâlcea) și Nicula Andreea (Școala „Take Ionescu”, Râmnicu Vâlcea)
  41. Boca Elena Iustina (Colegiul Național de Informatică „Tudor Vianu”, București) și Drăguț Maria Clara (Colegiul Național de Informatică „Tudor Vianu”, București)
  42. Cancel Nicole (Colegiul Național „Gheorghe Vrănceanu”, Bacău) și Dragomirescu Emilia (Colegiul Național „Gheorghe Vrănceanu”, Bacău)

Vrei să înveți mai mult? De pildă, programare în Java sau Inteligență artificială? Vino la Școala de Vară „Programare cu răbdare”. Click mai jos!

Școala de vară

Vrei să participi la activitățile gratuite din timpul anului școlar? Vezi videoclipurile de pe Youtube și mergi în secțiunea ÎNSCRIERE de pe acest site.

https://www.youtube.com/channel/UCFdyDe8BBM8KuVUmpedJQ1Q/videos

Școala de vară Java și IA

În perioada 21 iunie – 7 iulie 2019, Asociația EduSoft organizează o școală de vară cu acces deschis tuturor, cu următoarele cursuri:

  1. Java de la 0 la expert (10 zile x 4h / zi) – 15 locuri
  2. Inteligență artificială aplicată (10 zile x 3h / zi) – 15 locuri

Cursanții vor beneficia de instruire de calitate, cu experți în programare și în tehnici de inteligență artificială, instruire individualizată, examen de finalizare a studiilor și diplomă.

Orar

A. curs de Java (40 ore)

  • Vineri, 21 iunie 2019, 15.00-20.00 (5h) (predare)
  • Sâmbătă, 22 iunie 2019, 10.00-13.00 și 14.00-17.00 (6 h) (predare)
  • Duminică, 23 iunie 2019, 9.00-14.00 (5h) (predare)
  • Marți, 25 iunie 2019, 9.00-12.00 (3h) (exersare)
  • Miercuri, 26 iunie 2019, 9.00-12.00 (3h) (exersare)
  • Vineri, 28 iunie 2019, 15.00-20.00 (5h) (predare)
  • Sâmbătă, 29 iunie 2019, 10.00-13.00 și 14.00-17.00 (6 h) (predare)
  • Duminică, 30 iunie 2019, 9.00-14.00 (5h) (predare)
  • Marți. 2 iulie 2019, 14-16 (2h) (examinare)

B. curs de Inteligență Artificială Aplicată (30 ore)

  • Luni, 24 iunie 2019, 9-14 (5h) (predare)
  • Marți, 25 iunie 2019, 14-18 (4h) (predare)
  • Miercuri, 26 iunie 2019, 14-18 (4h) (predare)
  • Joi, 27 iunie 2019, 9-14 (5h) (predare)
  • Vineri, 29 iunie, 9-14 (4 h) (exersare)
  • Luni, 1 iulie 2019, 9-15 (6h) (predare)
  • Marți, 2 iulie 2019, 9-11 (2h) (examinare)

Locul desfășurării cursurilor: str. Mihai Eminescu, nr. 1, bloc A1, Bacău

Prețuri:

Tip cursant Nr. de locuri disponibile Java de la zero la expert Inteligență artificială
Elev participant activ cerc „Programare cu răbdare” 8 500 lei 500 lei
Elevi, studenți (neparticipanți activi la „Programare cu răbdare”) 5 750 lei 750 lei
Salariați / persoane fizice autorizate etc. 2 1200 lei 1200 lei

Numărul de locuri se ocupă în ordinea sosirii cererilor de înscriere și efectuării plății.

Persoanele cărora li se adresează cursurile / cerințe preliminare

Persoane care au cunoștințe generale elementare de programare, dar nu cunosc limbajul Java sau tehnici ale inteligenței artificiale.

Persoanele care doresc să se înscrie la acest curs trebuie să aibă cunoștințe de bază despre variabile, tipuri de date, operatori, structuri de control al execuției programului, funcții și să știe să utilizeze corect aceste elemente. Nivelul de cunoștințe trebuie să vă permită să scrieți programe de nivel simplu într-un limbaj oarecare.

Cursurile sunt predate în limba română de instructori cu experiență didactică.

Examenele de absolvire ale cursurilor constau în

  • test grilă
  • realizarea unui program / a unei aplicații

Înscrierea online nu include plata online a cursului și nu obligă în niciun fel pe cel care o efectuează.

Înscrierea efectiva și rezervarea locului se face în momentul semnării contractului și achitării cursului.

Pentru cursul de Java, coordonat de lect. dr. Cristian Frăsinaru (Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iași) se va urmări cursul de Advanced Programming, de la adresa https://profs.info.uaic.ro/~acf/java/

Pentru cursul de Inteligență artificială aplicată se vor folosi mai multe materiale, printre care și cele din cursul dlui prof. dr. Dan Cristea (Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iași): https://profs.info.uaic.ro/~dcristea/teaching.html

Componența echipelor de profesori va fi cunoscută la data începerii cursului.

Înscriere: 

1+1 = 7

Salut! Suntem de la „Programare cu răbdare” (https://programarecurabdare.ro) – cercul de informatică al tuturor copiilor.

Pentru că mulți dintre voi sunt mai buni la informatică, unii dintre voi chiar participând la diferite concursuri școlare, inclusiv la olimpiadă, dar alții dintre voi aveți probleme în a înțelege ce vă explică profesoara sau profesorul la școală, ne-am gândit că ar fi bine să vă ajutați între voi.

Astfel, am gândit acest proiect în care te poți înscrie ca FACILITATOR sau BENEFICIAR al procesului de învățare 1 la 1, care întotdeauna dă roade.

Continuă să citești

Octavian Custură continuă lecțiile despre vectori

La #programarecurabdare elevii învață unii de la alții. Așa că duminică, 3 martie 2019, de la ora 10, Octavian Custura (din grupa C) va prelua rolul de „profesor” pentru colegii săi din grupa A.

Sunteți pe mâini bune! Octavian și echipa “4SQUAD” a câștigat premiul I la concursul de programare pe care l-am organizat în ianuarie. (Colegii de echipă au fost Dimitrie-Toma FurduiNikoleta Eliana și Vladimir Berbece, elevi ai Colegiului Național “Gheorghe Vrănceanu”, Bacău).

Test grupa A

Problema 1

Cerinţa
Se citesc două numere naturale n și m. Să se decidă dacă cele două numere au cel puțin o cifră comună.

Date de intrare
Programul citește de la tastatură numerele n și m.

Date de ieşire
Programul afișează pe ecran mesajul DA, dacă cele două numere au cel puțin o cifră comună, respectiv NU în caz contrar.

Restricţii şi precizări
1 ≤ n, m ≤ 1.000.000.000
Exemplu
Date de intrare: 173954 889205
Date de ieșire: DA

Problema 2

Cerința
Se dă un șir cu n elemente, numere naturale. Determinați diferența în valoare absolută dintre numărul de valori pare din șir și numărul de valori impare din șir.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, reprezentând elementele șirului.

Date de ieșire
Programul va afișa pe ecran numărul C, reprezentând valoarea cerută.

Restricții și precizări
1 ≤ n ≤ 1000
cele n numere citite vor fi mai mici decât 1.000.000.000

Exemplu
Intrare: 5
15 245 28 33 11
Ieșire: 3
Explicație
Sunt 4 numere impare și un număr par în șir, deci diferența este 3.

Problema 3

Se dă un vector cu n elemente numere naturale. Să se verifice dacă are elementele ordonate crescător.

Trimiteți rezolvările prin acest formular:

Working Backwards – prezentarea lui Vlad Dascălu

Vlad Dascălu a lucrat la Google timp de 3 ani și a venit la cercul de informatică „Programare cu răbdare” ca să ne vorbească despre stabilirea obiectivelor profesionale în viață și să ne împărtășească din experiența sa de programator la o mare companie IT.

De asemenea, Vlad a rezolvat probleme cu tabele de dispersie cu elevii de la grupa C, la întâlnirea din 12 ianuarie. Vlad va reveni sâmbătă, 9 februarie 2019.

Marian Popovici – primul elev care prezintă realizările sale la cerc

Marian Popovici, elev din clasa a XI-a, la Colegiul Tehnic „Dimitrie Ghika” din Comănești, județul Bacău, este unul dintre cei mai activi elevi din cercul nostru de informatică.
Fiind pasionat de informatică, Marian a fost foarte încântat când a auzit de „Programare cu răbdare”, deoarece a considerat că e un prilej bun de a-și îmbunătăți cunoştințele şi, în acelaşi timp, de a cunoaşte oameni cu aceleaşi obiective ca ale sale.
Eram plictisit de consola neagră de la şcoală, iar atunci când am văzut modul în care se face grafică pentru jocuri am rămas plăcut surprins. Am învăţat o mulțime de lucruri şi am cunoscut oameni deosebiţi, care au lucrat sau lucrează la companii de top şi care m-au motivat să lucrez mai mult.
Marian a realizat deja câteva aplicații frumoase, de unul singur, acasă, după ce a învățat elemente de grafică la cercul de informatică.
Marian va prezenta colegilor săi realizările sale, la întâlnirea din 26 ianuarie, de la Colegiul Național „Gheorghe Vrănceanu”. Colegii săi vor putea pune întrebări și vor putea învăța de la Marian cum a gândit proiectele sale, vor primi sfaturi și vor fi încurajați să muncească.
Felicitări, Marian!

Întâlnire cerc joi, 24 ianuarie 2019, ora 11.00 la CN „Gheorghe Vrănceanu”

ATENȚIE!!! Următoarea întâlnire a cercului PCR („Programare cu răbdare”) este joi, 24 ianuarie, la ora 11:00, la Colegiul Național „Gheorghe Vrănceanu” din Bacău, când vom lucra pe grupe (cei noi pot veni și îi repartizăm atunci) și avem și ceva suprize pentru cei din grupele A, B și C 🙂

  • Grupa A – probleme cu instrucțiuni repetitive și serii de numere, cu conf. dr. Tiberiu Socaciu, Universitatea „Ștefan cel Mare” din Suceava;
  • Grupa B – începem să lucrăm la proiecte de tip jocuri, cu lect. dr. Bogdan Pătruț, Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iași
  • Grupa C – probleme pentru olimpiadele de informatică, cu prof. Adrian Panaete (Botoșani), membru în comisiile concursurilor internaționale și naționale de informatică.

Baze de date relaționale și limbajul SQL

Dr. Simona Vârlan, de la Facultatea de Informatică, Universitatea „Alexandru Ioan Cuza” din Iași, va face o scurtă introducere în domeniul bazelor de date relaționale, a limbajului SQL, cu mențiuni legate de Oracle SQL.

Aceste lucruri se vor întâmpla sâmbătă, 15 decembrie, la „Programare cu râbdare”, începând cu ora 9.

 

Ghid de instalare Android Studio pentru dezvoltare aplicații mobile

Pentru a dezvolta aplicații mobile pe telefoanele care au sistemul de operare Android, va trebui să aveți la îndemână un asemenea telefon, dar și un calculator conectat la Internet.

Mihail Arminia vă va explica cum să creați prima voastră aplicație mobilă, folosind acest mediu de dezvoltare, cu limbajul Java. Nu trebuie să vă faceți griji că nu ați mai făcut așa ceva niciodată. Toate au un început. Limbajul Java își are originile în limbajul C++, din care au fost eliminate anumite lucruri. E posibil ca prima dată să vi se pară mai complicat, iar asta pentru că, de fapt, voi la școală nu lucrați în C++, ci în limbajul C, la care sunt adăugate câteva elemente foarte simple din C++ (cum ar fi cin, cout etc.).

Pentru a instala Android Studio, trebuie să accesați https://developer.android.com/studio/

Va apărea o fereastră ca cea de mai jos.

În acest moment, apăsați pe „DOWNLOAD ANDROID STUDIO”. Acceptați termenii și condițiile, iar apoi apăsați pe „Download” și click pe Installer.

Acționați butonul Next și obțineți, unde Android Virtual Device trebuie să fie bifată.

Apăsați pe Next și alegeți locul unde va fi instalat Android Studio, de exemplu ca în figura de mai jos:

Instalarea e foarte simplă, după cum vedeți. Urmează să apăsați iar Next:

Și apoi Install, alegând tipul de instalare Standard, ca în figura următoare:

Ne vedem sâmbătă și continuăm.

 

 

 

 

 

 

Grafică în CodeBlocks

1. Biblioteca grafică WinBGIm

Biblioteca grafică WinBGIm se poate descărca de aici:

winbgim.zip

Atenție: pe web găsiți alte variante ale acestei arhive, dar nefuncționale.

Dupa ce descarcati și scoateți fișierele din această arhivă, veți face următoarele lucruri:

  1. Extrageti fisierele graphics.h, winmgim.h si libbgi.a din arhiva winbgim.zip.
  2. Copiati fisierele graphics.h si winbgim.h in folderul include din compilatorul MinGW, care se gaseste, cel mai probabil, aici: c:\Program Files\CodeBlocks\MinGW\include\
  3. Copiati fisierul libbgi.a in folderul lib al directorului compilatorului MinGW, care se gaseste, cel mai probabil, aici: c:\Program Files\CodeBlocks\MinGW\lib\
  4. In Code::Blocks accesati Settings >> Compiler… >> linker settings
  5. Faceti click pe butonul Add in partea Link libraries, apoi rasfoiti si selectati fisierul libbgi.a
  6. In partea dreapta (adica la Other linker options) scrieti urmatoarele comenzi:
    -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32
  7. Faceti click pe OK.

Descrierea functiilor grafice se gaseste aici:

http://www.cs.colorado.edu/~main/cs1300/doc/bgi/bgi.html

Un exemplu de program de test pentru grafica este aici:

#include <iostream>
#include <graphics.h>
#include <winbgim.h>

int main()
{

  initwindow(800,600);

  int x = 400, y = 300, r; 
  for (r = 25; r <= 125; r += 20)
      circle(x, y, r);

  getch();
  closegraph();
  return 0;
}

Daca acesta functioneaza, puteti continua sa folositi orice functie grafica si de lucru cu mouse-ul din biblioteca WinBGIm.

Succes!

2. Exemple de programe grafice

  • Desenarea unei table de șah, folosind doar primitiva grafică line -: la tablă
  • Desenarea graficului unei funcții, folosind doar primitiva grafică line -: la tablă
  • Desenarea unui poligon regulat, a unei stele, folosind doar primitiva grafică line -: la tablă

Presupunem că puteți lucra în modul grafic, pe un ecran cu latime*inaltime pixeli în care coordonatele colțului stânga sus sunt (0, 0), iar ale colțului dreapta-jos sunt (latime-1, inaltime-1). În acest mod grafic, dispuneți de următoarele primitive grafice
o funcție grafică void setcolor(unsigned int c), care stabilește culoarea pentru a desena următoarele linii, până la schimbarea culorii de un alt apel al acestei funcții (inițial se consideră c=0, implicit); c este un cod de culoare, care corespunde unei valori între 0 și 15, de exemplu 0=negru, 1=albastru, 2=roșu etc.
o funcție grafică void setwidth(unsigned int g), care stabilește grosimea (1<=g<=10, implicit g=1) de desenare a următoarelor linii, până la un nou apel al acestei funcții;
o funcție grafică void line(unsigned int x1, unsigned int y1, unsingned int x2, unsigned int y2) care trasează o linie între punctul de coordonate (x1, y1) și cel de coordonate (x2, y2), în culoarea curentă, de grosimea curentă;
o funcție void setfillcolor(unsigned int c), care stabilește culoarea de umplere pentru următoarele apeluri ale funcției fill de mai jos; c este implicit 0 (negru), dar poate fi orice valoarea 0<=c<=15;
o funcție void fill(unsigned int x1, unsigned int x2, unsigned int c), care colorează (prin umplere) în culoarea stabilită de funcția setfillcolor, conturul închis, mărginit de o linie poligonală închisă, având culoarea c. Colorarea începe în punctul de coordonate (x1, y1), care se presupune a fi în interiorul acelei linii poligonale.
(0,30p) Definiți o structură de date adecvată pentru a reprezenta o stea regulată cu un număr de colțuri (cel puțin 3), cu marginea de o anumită culoare și grosime, cu o anumită culoare în interior, cu o anumită mărime și o anumită „deschidere” a colțurilor, cu o anumită amplasare sub un anumit unghi față de orizontală a primului colț. Se pot folosi funcțiile trigonometrice sin și cos, din math.h.
(0,90p) Scrieți o funcție care să deseneze o asemenea stea, oarecare, amplasată oriunde și oricum, de culoare oarecare etc.
Click aici pentru solutie.

 

Un program de grafică cu o matrice în spate

#include <iostream>
#include <winbgim.h>
#include <stdlib.h>

using namespace std;

#define MAX 20
#define FUNDAL CYAN

int stanga,sus,width,height,latura, numar;
bool gata;

int TablaDeJoc[MAX][MAX];

int scor;

void afiseazaScor()
{
   char sirScor[10];
   setcolor(FUNDAL);
   itoa(scor,sirScor,10); outtextxy(200,50,sirScor);
   int i,j;  scor=0;
   for (i=1;i<=numar;i++)
       for (j=1;j<=numar;j++)
           if (TablaDeJoc[i][j]==2)
              scor++;
   setcolor(BLUE); itoa(scor,sirScor,10);
   outtextxy(200,50,sirScor);
}

void punerePiesa()
{
   int linia,coloana,x,y;
   int x1, y1, x2, y2;
   int xmijloc, ymijloc;

   if(ismouseclick(WM_LBUTTONDOWN))
     {
       clearmouseclick(WM_LBUTTONDOWN);
       x=mousex(); y=mousey();
       if (!(x>=stanga && x<=stanga+width && y>=sus&&y<=sus+height))
          gata=true;
       else
          {
            linia=(y-sus)/latura+1;
            coloana=(x-stanga)/latura+1;
            if (TablaDeJoc[linia][coloana]==0)
               {
                 TablaDeJoc[linia][coloana]=1;
                 // stergere
                 setcolor(FUNDAL); setfillstyle(SOLID_FILL,FUNDAL);
                 x1=stanga+latura*(coloana-1); y1=sus+latura*(linia-1);
                 x2=x1+latura; y2=y1+latura;
                 xmijloc=(x1+x2)/2; ymijloc=(y1+y2)/2;
                 bar(xmijloc-20,ymijloc-20,xmijloc+20,ymijloc+20);
                 // afisez cerc rosu aprins
                 setcolor(LIGHTRED); setfillstyle(SOLID_FILL,LIGHTRED);
                 fillellipse(xmijloc,ymijloc,18,18);
               }
            else
            if (TablaDeJoc[linia][coloana]==1)
               {
                 TablaDeJoc[linia][coloana]=2;
                 setcolor(FUNDAL); setfillstyle(SOLID_FILL,FUNDAL);
                 x1=stanga+latura*(coloana-1); y1=sus+latura*(linia-1);
                 x2=x1+latura; y2=y1+latura;
                 xmijloc=(x1+x2)/2; ymijloc=(y1+y2)/2;
                 bar(xmijloc-20,ymijloc-20,xmijloc+20,ymijloc+20);
                 // afisez un patrat galben
                 setcolor(LIGHTRED); setfillstyle(SOLID_FILL,YELLOW);
                 bar(xmijloc-20,ymijloc-20,xmijloc+20,ymijloc+20);
               }
            else // 2-> 0
            {
                 TablaDeJoc[linia][coloana]=0;
                 setcolor(FUNDAL); setfillstyle(SOLID_FILL,FUNDAL);
                 x1=stanga+latura*(coloana-1); y1=sus+latura*(linia-1);
                 x2=x1+latura; y2=y1+latura;
                 xmijloc=(x1+x2)/2; ymijloc=(y1+y2)/2;
                 bar(xmijloc-20,ymijloc-20,xmijloc+20,ymijloc+20);
            }
            afiseazaScor();
        }
    }
}

void desen()
{
   int i,j; numar=5;
   width=400; height=400; latura=width/numar;
   sus=(getmaxy()-width)/2; stanga=(getmaxx()-height)/2;
   setbkcolor(FUNDAL); clearviewport(); setcolor(BLUE);
   for(i=1; i<=numar; i++)
       for(j=1; j<=numar; j++)
          rectangle(stanga+latura*(i-1),
                    sus+latura*(j-1),stanga+latura*i,sus+latura*j);
}

int main()
{
   initwindow(800,600);
   scor=0; desen(); afiseazaScor();
   gata=false;
   do
   {
      punerePiesa();
   }
   while (!gata);
   getch();
   closegraph();
   return 0;
}

 

Pregătire specială pentru bacalaureat

Elevii interesați din clasa a XII-a pot participa, în cadrul cercului de informatică „Programare cu răbdare” la câteva ședințe de pregătire specială pentru bacalaureat, unde vor fi abordate următoarele teme:

  • 5 ianuarie 2019 – vectori
  • 12 ianuarie 2019 – matrice
  • 19 ianuarie 2019 – șiruri de caractere

Și elevii din clasa a XI-a se pot înscrie la aceste activități.

 

 

Ghid de instalare Unity 3D

Ghid instalare UNITY 3D (Windows/Mac OS)
1. Accesati aceasta pagina: https://unity3d.com/get-unity/download
2. Selectati “Choose your Unity + download”


3. Din coloana “Personal/For Beginners” selectati “Try Personal”

4. Daca sunteti de acord cu “Terms of Service”, bifati casuta si puteti continua cu descarcarea unei utilitar de tip .exe care sa instaleze Unity.
! Daca folositi Mac OS, aveti posibilitatea la acest pas sa descarcati alt utilitar.


5. Odata finalizata instalarea, se va deschide utilitarul si dati next.


6. Bifati casuta si continuati cu next.

7. Bifati componentele ca in imagine (“Unity 2018, Documentation, Microsoft Visual Studio Community 2017”) si continuati cu next.


8. Cand porniti Unity, va create cont sau va logati folosind Google/Facebook.

9. Selectati Unity Personal si continuati cu Next.


10. Selectati ultima varianta “I don’t use Unity in a professional capacity” si continuati cu Next.


11. Completati surveyul, avand grija sa selectati “Student” ca si primary use pt Unity.


You’re all set ! Ne vedem la workshop!

Irina vă va învăța despre jocurile video

Irina Mădălina Bejan va veni sămbăta, 8 decembrie 2018, pentru toți cei interesați de gaming și de crearea de jocuri pe calculator. Ea va dezvolta cu voi jocuri 3D folosind un game-engine numit Unity 3D, în care se programează în C#, un limbaj de programare foarte apropiat de C++.

Cursul va dura 4 ore. Irina îi roagă pe cei interesați de cursul de jocuri video să vină pregătiți cu laptop-ul, pe care să fie instalat deja Unity 3D. De asemenea, un stick de Internet sau un telefon pe post de hot-spot ar fi necesar.

Legat de Unity 3D, Irina a elaborat un ghid de instalare, pe care îl puteți vizualiza aici:

Ghid de instalare Unity 3D

sau îl puteți descărca în format PDF de aici: install_unity

Irina se prezintă pe Facebook ca fiind: