Dezvoltarea metodică a platformei de conținut "grafică în turbo pascal"

În această lucrare, prezentarea metodologică este construită de la "simplu la complex". În primul rând, capacitățile grafice ale limbajului de programare Turbo Pascal sunt considerate utilizând exemplul celor mai simple programe care implementează algoritmi liniari. Apoi, studiem implementarea algoritmilor ramificați și ciclici în grafic, ceea ce face ușor să continuăm să creăm programe care simulează mișcarea. În lucrare, sunt luate în considerare și aplicațiile de grafică pe calculator: construirea de grafice de funcții, histograme. diagrame, modele și unele curbe, utilizând elemente de matematică superioară.







Începând cu cea de-a 4-a versiune a lui Turbo-Pascal pentru IBM PC, a fost creată o puternică bibliotecă grafică, organizată în modulul GRAPH.

Utilizarea modulului vă permite să transformați programele de formare în produse software de bază, care au o interfață ușor de utilizat și un design frumos.

Revenind la rezolvarea problemelor pe tema "Grafica". este necesar să ne amintim că:

] În modul grafic, ecranul este o colecție de puncte, fiecare dintre acestea putând fi colorată într-una din cele 16 culori;

] coordonatele punctelor cresc de la stânga la dreapta și de sus în jos; punctul de sus stânga are coordonatele (0,0), iar cel din dreapta jos (640,480);

] astfel încât programul să poată afișa primitive grafice (linii, cercuri, dreptunghiuri), este necesar să inițializați modul grafic.

Modelul programului grafic este după cum urmează:

Dacă Errcode = grOk atunci

I. Cifre construite din cele mai simple figuri geometrice.

Una dintre cele mai ușoare căi de a construi o imagine grafică se bazează pe utilizarea unor forme geometrice elementare - segmente de linii, cercuri, dreptunghiuri, arce, elipse etc.

Imaginea construită adesea seamănă cu desenele sau imaginile copiilor pentru jocul de mozaic.

Nu este dificil să programați astfel de imagini, totuși, este necesară o muncă preliminară pentru a determina mărimea figurilor și plasarea acestora pe ecran.

Exemplu 1. Următorul program vă permite să obțineți o imagine a casei pe ecran.

Ca o lucrare independentă, este posibil să se ofere elevilor să prezinte pe ecranul computerului desenele propuse în manualul de instruire în cadrul ediției.

II. Construcția secțiunilor în figuri geometrice spațiale.

Pentru dezvoltarea imaginației spațiale și familiarizarea cu corpurile geometrice de bază, elevii pot fi rugați să scrie programe pe ecranul computerului, care prezintă imagini de prisme, piramide, conuri etc., cu construcția de secțiuni diferite.

Exemplul 1. Ca urmare a executării următorului program, se va construi o secțiune transversală în piramida triunghiulară, care va trece prin marginea laterală și mediană a bazei.

tr: array [1..5] de punct tip = ((x: 320; y: 80), (x:

șofer, mod, e, xc, yc: întreg;

Exemplul 2. Următorul program rezolvă problema: într-un paralelipiped dreptunghiular, trageți o secțiune diagonală.

var driver, modul: întreg;

Pentru munca independentă, studenților li se oferă posibilitatea de a construi un desen pentru următoarele sarcini:

1. În piramida triunghiulară, construiți o secțiune paralelă cu baza.

2. În piramida triunghiulară, construiți o secțiune care trece prin una din laturile bazei și mijlocul muchiei opuse.

3. Într-o piramidă obișnuită, trageți o secțiune care trece prin diagonala bazei și partea superioară a piramidei.

4. Într-o piramida obișnuită, trageți o secțiune care trece prin diagonala bazei și mijlocul marginii laterale.

5. Într-o piramidă obișnuită, trageți o secțiune paralelă cu baza și trecând prin mijlocul marginii laterale.

6. Într-un paralelipiped dreptunghiular, trageți o secțiune care trece prin partea inferioară a bazei inferioare și partea opusă a bazei superioare.

7. Într-o prismă dreptunghiulară, trageți o secțiune care trece prin diagonala bazei inferioare și unul dintre vârfurile bazei superioare.

8. Într-un paralelipiped dreptunghiular, construiți o secțiune care trece prin una din laturile bazei inferioare și unul dintre vârfurile celei superioare.

9. Într-un paralelipiped dreptunghiular, construiți o secțiune care trece printr-unul dintre marginile sale și punctul de intersecție al diagonalelor opuse acestei margini.

10. În cilindrul drept, construiți secțiunea axială.

11. În piramida hexagonală obișnuită, construiți o secțiune care trece prin vârf și o diagonală mare a bazei.

12. Într-o prismă hexagonală obișnuită, construiți o secțiune care trece printr-o diagonală mare a bazei inferioare și una din laturile celei superioare.

Algoritmi ramificați în grafic.

Algoritmii de ramificare sunt utilizați în acest curs pe baza dezvoltării programelor de meniu "Tipuri de forme geometrice".

Studentul trebuie să scrie un program care să ilustreze toate tipurile disponibile ale unei figuri geometrice. Programul trebuie să efectueze următoarele acțiuni: pe ecran apare o listă cu diferite tipuri de forme geometrice, utilizatorul selectează unul dintre aceste tipuri și programul afișează ilustrația corespunzătoare.

De exemplu, programul "Tipuri de cvadrilaterals". Acest program oferă utilizatorului un meniu din care poate selecta un patrulater de un anumit tip (pătrat, romb, dreptunghi, paralelogram, trapez). Imaginea patrulaterului selectat apare pe ecran.

var driver, modul: întreg;

xc, yc, x1, x2, y1, y2, y3, y4, x3, x4, v: întreg;

writeln ('Alegeți tipul de patrulater:');

scriteln ('1 - pătrat'); writeln;

scriteln ("2 - romb"); scriteln;

scriteln ('3 - dreptunghi'); scriteln;

writeln ('4 - paralelogramă'); writeln;

scriteln ('5 - trapezoid); scriteln;

writeln ('6 - ieșire'); writeln;

Pentru activități independente, sunt oferite următoarele opțiuni:

1. Tipuri de triunghiuri. Programul oferă utilizatorului un meniu din care poate selecta un tip de triunghi (dreptunghiular, acut, obtuz). Un model de triunghi de acest tip ar trebui să apară pe ecran.

2. "Tipuri de linii într-un triunghi". Programul oferă utilizatorului un meniu din care poate selecta tipul liniei de triunghi (median, înălțime, bisector). Un desen triunghi cu o linie de tipul selectat trebuie să apară pe ecran și trebuie evidențiat cu o culoare diferită sau clipește.

3. "Tipuri de forme spațiale". Programul oferă utilizatorului un meniu din care poate selecta o anumită formă (paralelipiped, prisma, con, cilindru, diferite variante de figuri trunchiate, figuri înclinate). Pe ecran trebuie să apară cifra formei selectate.

Algoritmi ciclici în grafic.

I. Cifre construite utilizând un singur ciclu

De exemplu, putem considera următoarea sarcină: reprezentarea unui model format din cincisprezece cercuri de rază diferită cu un centru comun, fiecare cerc ar trebui să fie evidențiat într-o altă culoare.







var x, y, r, dx, i, dr, modul: întreg;

pentru i: = 1 până la 15 nu

II.Risunki, construit folosind un generator de numere aleatoare.

Multe imagini interesante pot fi construite folosind un generator de numere aleatoare. O imagine creată utilizând variabilele aleatoare (definind, în special, elementele constitutive ale imaginii, culorile, dimensiunile și locația pe ecran), are efect de imprevizibilitate, unicitate.

Exemplul 1. Acest program stabilește modul grafic și umple ecranul cu 30000 de puncte de culoare aleatoare. Generatorul de numere aleatoare este utilizat pentru a selecta coordonatele punctelor.

var i, dr, modul, x, y: întreg;

pentru i: = 1 până la 30000

Exemplul 2. În următorul program, o fereastră fereastră dreptunghiulară este umplută cu 100 de cercuri aleatorii (coordonate selectate aleatoriu ale centrului, razei și culorii).

var i, drv, modul: întreg;

După ce elevii învață abilitățile de organizare a ciclurilor, puteți merge la utilizarea subrutinelor. Aici există o tranziție de la utilizarea coordonatelor absolute pentru a seta o cifră la sarcina sa în coordonate relative (de exemplu, în programele care simulează mișcarea).

Simularea mișcării în grafic.

Lucrul pe această temă ne apropie de crearea programelor simple de joc. Mișcarea este creată prin ștergerea imaginii în locul vechi și desenarea acesteia într-un loc nou (cu o ușoară schimbare). La compilarea unor astfel de programe, întârzierea este folosită pe scară largă. În primul rând, puteți sugera că elevii dezvoltă un program pentru a deplasa o figură elementară verticală sau orizontală.

Exemplul 1. Ca exemplu, este dat următorul program, drept urmare, dreptunghiul se execută în jurul marginilor ecranului în sensul acelor de ceasornic.

var xl, il, xp, yp, d, modul: întreg;

procedura reg (xl, yl, xp, yp: întreg);

dreptunghi (xl, il, xp, yp);

dreptunghi (xl, il, xp, yp);

în timp ce xp<640 do

în timp ce yp<480 do

dreptunghi (xl, il, xp, yp);

Pentru munca independentă, puteți invita copiii să scrie un program pentru deplasarea cercului orizontal, vertical, de-a lungul perimetrului ecranului, atât în ​​sensul acelor de ceas, cât și în sens antiorar.

Pentru lucrul creativ pe această temă, studenții trebuie să scrie un program care să simuleze mișcarea figurii desenate. Variantele de figuri, a căror mișcare trebuie simulate de program, pot fi preluate din manualul de instruire, editat.

De exemplu, vreau să aduc programul elevului, ca rezultat al mișcării furnicii (fig.10 din apendicele 1) pe ecran, iar furnica mișcă picioarele.

procedură murash (x, y: integer; spr: byte; arată: boolean);

Ca o lucrare independentă, studenților li se poate oferi să scrie următoarele programe:

1. Desenați un segment pe ecran ce se rotește în planul ecranului în jurul:

B) puncte împărțind segmentul în raportul 1: 3

2. Afișați pe ecran triunghiul drept care se rotește în planul ecranului în jurul centrului.

3. Afișați pe ecran un dreptunghi care se rotește în planul ecranului:

A) unul dintre vârfurile sale;

B) una din laturile sale;

B) una din diagonalele sale.

Aplicații grafice pentru calculator.

Una dintre aplicațiile de grafică pe calculator este o prezentare vizuală, colorată a rezultatelor calculelor matematice. Graficul grafic al funcțiilor desenate, histogramele și diagramele desenate fac ca rezultatele calculelor matematice să fie previzibile, mai clare și mai ușor de înțeles.

Plotarea poate fi realizată fie printr-o metodă punctuală. fie parțial liniar. În primul rând, graficul este construit ca o secvență de puncte cât mai aproape posibil. Există o enumerare "pe pixeli" a valorilor argumentului cu indicarea coordonatelor Y corespunzătoare. Cu o metodă liniară pe piesă, se specifică un pas matematic # 8710; X și se calculează secvența valorilor (Xi, Yi):

În acest caz, graficul este construit sub forma unor segmente de linii drepte trasate prin punctele (Xi, Yi), (Xi + 1, Yi + 1), unde i = 0,1,2, ..., n.

Să luăm în considerare o metodă liniară în parte pentru construirea unui grafic.

Pentru a obține graficul funcțiilor pe ecran, trebuie să efectuați următoarele acțiuni:

1. Definiți limitele valorilor argumentului în care graficul va fi reprezentat grafic: Xmin și Xmax.

2. Pentru un anumit interval de valori al argumentului, determinați valorile limită ale funcției: Ymin și Ymax. Aceste valori pot fi estimate, nu neapărat corecte.

3. Setați limitele ferestrei grafice în care va fi desenat graficul funcției: [XGmin, XGmax], [YGmin, YGmax]. Deoarece în coordonatele grafice axa verticală este îndreptată în jos, atunci YGmin> YGmax.

4. Traduceți coordonatele matematice (X, Y) în coordonate grafice (XG, YG). folosind următoarele formule:

Aici, parantezele pătrate denotă rotunjirea la o valoare întreagă (funcție rotundă).

5. Alegeți pasul h:

Următorul program prezintă graficul funcțiilor. y = cos (x) pentru, folosind o metodă liniară pe bucăți, cu desemnarea axelor de coordonate.

var șofer, modul, i: întreg; y, x, h: real;

kx, ky: real; xg, yg: întreg;

x0, y0, xgmax, xgmin, ygmin, ygmax: întreg;

Pentru munca independenta, elevii pot fi invitati sa studieze si sa construiasca grafice ale oricaror functii elementare studiate in cursul scolii matematice.

Histogramele și diagramele reprezintă un mijloc eficient de afișare a datelor numerice în acele cazuri în care este necesar să se dea o imagine clară a raportului dintre valorile numerice și un anumit set. Histograma (diagrama coloanei) este un set de dreptunghiuri ale căror baze sunt egale, iar înălțimile sunt proporționale cu valorile numerice corespunzătoare. O diagramă sectorială este un cerc al cărui domeniu de domeniu este proporțional cu valorile corespunzătoare.

Exemplul 1. Ca rezultat al următorului program, o histogramă a progresului elevilor este afișată pe ecran, de exemplu, pe baza rezultatelor unui test (examinare) pe un obiect.

var driver, modul: întreg;

kol, i, k, xi, y1, x2, y2: întreg;

m: matrice [2..5] de octet;

a: matrice [1..4] de șir [5];

Cu ajutorul graficii puteți crea modele frumoase. Următorul program desenează un model care se formează după cum urmează. Pe ecran, vârfurile unui triunghi obișnuit de optsprezece colțuri sunt desenate, al căror centru coincide cu centrul ecranului. Fiecare din cele optsprezece noduri este conectat prin segmente cu toate celelalte noduri. Coordonatele nodurilor sunt date de formulele:

yi = il + R * sin (2πi / 18); i = 1, ..., 18

unde i este numărul vârfului, R este raza cercului circumscris în jurul poligonului, xl, yl sunt coordonatele centrului său. Pentru a evita desenarea repetitivă a segmentelor între aceleași vârfuri, fiecare dintre ele se conectează numai la nodurile care au un număr mai mare.

var i, j, n, xc, yc, r, șofer, modul: întreg;

x, y: matrice [1..18] de întreg;

xc: = getmaxx div 2;

yc: = getmaxy div 2;

pentru i: = 1 până la n-1

pentru j: = i + 1 până la n

Exemplul 2. Următorul program trage un "pătrat fugar". "Pătratul de rulare" este format din pătrate imbricate, vârfurile fiecărui pătrat următor împărțesc laturile celui anterior într-un raport dat. Astfel, pătratele devin nu numai mai puțin și mai puțin, ci și rotite de un unghi.

Datele initiale pentru program sunt coordonatele colțul din stânga sus al pătratului exterioare (100, 100), o lungime laterală (o sută de puncte de ecran), numărul de pătrate care trebuie construite (30) și o valoare h = 0,8. Pentru a determina coordonatele următoare nodurile pătrate ispolzuyutcya raport, permițând coordonatele cunoscute ale punctele finale (X1, Y1) (X2, Y2) și relația h predeterminată, în care un punct împarte acest interval de timp, pentru a determina coordonatele (X, Y) ale punctului.

xl, y, i, j, n, xc, yc, r: întreg;

x, y, xd, yd: array [0..3] de integer;

rmu, smu, t, dt: real;

xd [j]: = rundă (rmu * x [j]) + runda (smu * x [(j + 1) mod 4]);

yd [j]: = runda (rmu * y [j]) + runda (smu * y [(j + 1) mod 4]);

linia (x [j], y [j], x [(j + 1) mod 4], y [(j + 1) mod 4]);

Ca o lucrare independentă, elevilor i se poate cere să deseneze un model compus din triunghiuri imbricate, pentagoane și hexagoane. De asemenea, puteți da sarcina: să obțineți un model din mai multe imagini ale pătratelor închise.

Curbează în grafic.

Cei care caută matematica sunt familiarizați cu astfel de curbe ca spirala lui Archimedes, melcul Pascal, cardioid, cuarț și quatrefoil. Ecuațiile curbelor în coordonate polare au următoarea formă:

Unghiul variază de la 0 la 2π, recalcularea coordonatelor polare în coordonate carteziene se face prin formule:

Pentru cei mai pregătiți studenți, puteți sugera urmatoarele curbe pe ecran: melcul Pascal, cardioid, trefoil, trandafir cu șapte frunze ( # 961; = sin7 # 966;). un trandafir cu două petale (# 961; = 1 + sin2 # 966;) și o prindere în buclă (# 961; = 1 + 2cos2 # 966;).

Organizarea interfeței cu utilizatorul în dezvoltarea programelor profesionale - nu este mai puțin (și deseori - și mai mult) complicată decât punerea în aplicare a părții logice sau calculate a sarcinii.

Dezvoltarea programelor care utilizează grafica este probabil una dintre cele mai eficiente metode de predare a studenților în programare. În studiul operatorilor grafice nu sunt doar merg școală de formare pentru programarea în sine, ci și într-un mod indirect copiii învață să se concentreze pe planul de coordonate, explorarea ambele forme geometrice plane și tridimensionale, astfel, elevii dezvolta gândirea spațială, ceea ce este important în studiul geometriei solide într-un curs geometrie.

Un aspect estetic al graficii didactice este important. Culorile grafice pe computerele personale sunt foarte frumoase. Elevii compun cu bucurie programe folosind operatori de grafică, își arată reciproc rezultatele muncii lor. La crearea graficii, elementul creativității în studiul programării devine deosebit de viu.

1. Selyun în programare. M .: Science, 1988.

2. Programul Gnezdilova pentru școlari. M .: Science, 1987.

[1] În exemplele de mai jos, pentru a economisi spațiu, nu vom verifica funcția GraphResult.







Trimiteți-le prietenilor: