Script de bază vizual - pentru scurt timp pentru rezolvarea problemelor într-un sistem vectorial

Unele reguli VBscript

O procedură este un nume generic pentru o funcție sau o subrutină. Are sintaxa:

sub nume
eveniment
end sub

în cazul în care:
numele este numele procedurii.
un eveniment este ceva ce se poate "întâmpla" în timpul executării unui program (calcule, redare).

Pentru ca variabilele x să fie convertite în întregi, utilizați funcția Cint (variabilă):
a = Cint (x)

Dacă codul nu se potrivește într-o singură linie, atunci puteți utiliza caracterul de continuare: Aceeași linie, atunci când se imprimă text și calcule pe ecran, se efectuează prin procedura vbCrLf în următoarea construcție:
Să compilam tabelul valorilor deduse ale magiei Quart Lo-Shu
VBSMsg "primul rând, n1 =" n1 "n2 =" n2 "n3 =" n3 "și suma lor =" m1 _
vbCrLf "Al doilea rând, n4 =" n4 "n5 =" N5 "n6 =" N6 "și suma lor =" m2 _
vbCrLf "Al treilea rând, n7 =" N7 "n8 =" n8 "n9 =" n9 "și suma lor =" m3 _
vbCrLf "suma verificată: 1 stb. =" m4 "2 stb. =" m5 "Al treilea stâlp =" m6 _
vbCrLf "suma pe diagonale: 1-I =" m7 "2 nd =" m8
VBSMsg - procedură specială în VBS pentru procedura "Vector" de ieșire text pe ecran.

ID-uri de bază de date

- Primul caracter al identificatorului este în mod necesar o literă sau un subliniere. De exemplu, identificatorii Mai întâi, _Var sunt corecți, iar primul, 100 este incorect. În mijlocul sau la sfârșitul identificatorului este permisă utilizarea numerelor, de exemplu: A1, A1B2, etc.
- În identificatori nu este permisă utilizarea spațiilor, precum și a caracterelor speciale: semne de punctuație și, de asemenea, @, #, $, . Varul meu, noi identificatori sunt greșite.
- Lungimea maximă a identificatorului nu poate depăși 255 de caractere.
- Identificatorul nu poate coincide cu cuvintele rezervate ale limbajului de programare Visual Basic Script.
- În cadrul aceluiași modul sau proiect nu este permisă declararea aceluiași identificator de două ori.

Cuvinte rezervate - este instrucțiuni standard, care să permită rezolvarea unor acțiuni: pentru a descrie procedurile pentru a deschide bucle, declara variabile, etc. Nici unul dintre aceste cuvinte este inacceptabil de a utiliza ca un identificator ..

Folosind variabilele, puteți stoca temporar valorile expresiilor pentru a le folosi mai târziu.

Atribuirea unei valori variabile

Valoarea inițială a variabilei este 0 pentru tipurile de date numerice. În majoritatea cazurilor, această valoare este destul de potrivită pentru condițiile problemei. Deci, puteți compila un program pentru însumarea rândurilor de tabelă A, fără a reduce valoarea variabilei S:

Dim S
Pentru I = 1 până la 5
S = S + A [I]
următor

Un astfel de program nu va produce o eroare în timpul execuției și va însuma în mod corect cinci elemente ale matricei. Dar regulile de ton bun în programare încă vigoare înainte de a atribui o nouă variabilă, atribuiți valoarea inițială. Pentru a adăuga la programul de adăugare a elementelor din matrice încă o linie:

Dim S
S = 0
Pentru I = 1 până la 5
S = S + A [I]
următor

Puteți atribui o valoare unei variabile în două moduri: explicit sau implicit. Următoarele exemple prezintă moduri diferite de a atribui valori variabilelor:

"calcularea semnificației expresiei
B = (3 * (3 + 4)) / 4

întunecos <массив> (<размерность1, размерность2.>) [Ca tip]
Atunci când se descrie o matrice, se utilizează următoarea notație:
<массив> - Numele matricei, format ca alte identificatoare.
<размерность, размерность2.> - lungimea fiecărei dimensiuni a matricei.
<тип> - tipul opțional de date al matricei.

Dim FirstArray (4) Ca Integer
FirstArray (0) = 20
FirstArray (1) = 16
FirstArray (2) = 15
FirstArray (3) = 23
FirstArray (4) = 11

Pentru a manipula elementele matricei, buclă For este cea mai potrivită, în care, de exemplu, puteți sume elemente ale matricei FirstArray:

Pentru I = 0 până la 4
S = S + FirstArray (I)
Următorul

Pentru a studia rapid caracteristicile folosirii variabilelor, constantelor și ariilor, trebuie să folosiți orice carte pe BASIC, care prezintă exemple de diverse programe, și apoi să încercați să le implementați în cadrul Visual Basic Scout pentru mediul Vector. Pentru alte întrebări, contactați Help VBS. De exemplu, o ruptură de linie la afișarea mesajelor pe ecran a fost găsită în Ajutor și folosită în VbsBox.

Lucrând direct în "VectorW"

Mai sus sunt date funcțiile standard ale VBS. În "Vector", cu excepția direct diferitelor construcții grafice și transformări care sunt scrise în scenariu, procedurile proprii sunt implementate:
ostruzok.s (x1, y1, z1, x2, y2, z2) - construirea segmentului prin punctele p1, p2;
krug.s (x1, y1, z1, R) este construcția unui cerc de rază R centrat la p1.

Un exemplu de construire a unui segment printr-o metodă diferită de specificare a variabilelor
otrezok.s 1, 4, 5, 7, 7, 10 '- direct prin setarea valorilor la accesarea otrezok.s

x2 = 7
y2 = 6
z2 = 9
otrezok.s x1, y1, z1, x2, y2, z2 '- prin registrele variabilelor

Dim p1, p2
p1 = Array (1,2,3)
p2 = Array (7,5,8)
(1), p1 (1), p1 (2), p2 (0), p2 (1), p2 (2)

Exemplu de calcul al lui din segmentului p1-p2

VbsBox "Lungimea segmentului p1-p2 =" s - ieșire text (în citate) și valori numerice (variabila s).

Transformarea obiectelor geometrice

obj.xAngle, obj.yAngle, obj.zAngle - în care variabilele sunt transmise unghiul de rotație în jurul unei axe special, de exemplu: obj.zAngle = 10 - pur și simplu atribuie la unghiul de 10 grade sau obj.zAngle = 10 * n - alocare utilizate pentru un ciclu în care n este un parametru variabil.
obj.origin (0) = 1 'este trecerea în x de 1
obj.origin (1) = 1 'este compensat cu 1
obj.origin (2) = 1 'este trecerea în z cu 1
obj.scale - scară (de exemplu, obj.scale = 0,5)
obj.All = True (sau obj.All = 1) - convertiți toate obiectele
obj.All = 0 - anulați conversia tuturor obiectelor
obj.SetH - setați matricea de transformare și trageți.
exemplu
otrezok.s 0,0,0,5,5,0
obj.zAngle = 10
obj.SetH
Ce înseamnă: un segment de setat, rotiți-l într-un unghi și remizați.

OrtTrans a, b - transformarea unui segment într-o poziție proeminentă a unuia sau a altui plan
unde
a - la ce coord. planul transformăm obiectul 0 - în plan orizontal al proiecțiilor,
1 - în planul frontal al proeminențelor,
2 - la planul profilului proiecțiilor, b - numărul segmentului pe care îl transformăm
exemplu
OrtTrans 0, 0
Mijloace: pentru a produce o transformare ortogonală în planul orizontal al coordonatelor segmentului zero.

Un exemplu de imagine a unui segment de linie care se rotește în jurul originii

Pentru n = 0 Pentru 36 etapa 1
otrezok.s 0,0,0,5,5,0
obj.zanghel = 10 * n
obj.SetH
următor
sau
Pentru s = 0 Pentru 360 pasul 10
otrezok.s 0,0,0,5,5,0
obj.zAngle = s
obj.SetH
următor

Importul liniilor de format .dxf
Un exemplu de imagine a unei linii "Rnew12.dxf" care se rotește importată din directorul curent (unde se află vector.exe)

Pentru s = 0 Pentru 360 pasul 5
Importați curba de import "Rnew12.dxf"
obj.yangle = s 'variabilă - unghiul de rotație
obj.SetH "matricea de transformare și imagine
următor

Un exemplu de imagine linie (în scară, rotativă și cu schimbare) nu a fost importat din directorul curent.

Pentru s = 0 Pentru 360 pasul 10
Importați "C: \ cg8n \ krug1.dxf"
obj.scale = 0,1 '- scară
obj.zAngle = s '- variabil - unghiul de rotație
obj.origin (0) = 1 '- schimbare variabilă în x
obj.origin (1) = 1 '- schimbare variabilă cu y
obj.origin (2) = 1 '- schimbare variabilă în z
obj.SetH "matricea de transformare și imaginile funcționează
"prin sărituri: scară. rotație, schimbare
următor

* Notă: rotația cercului dat în centrul coordonatelor în jurul axei Oz nu va da nimic

Un exemplu al imaginii liniei importate pe scală, leagăn și apoi rotație este încă în buclă.

Pentru s = 0 Pentru 360 pasul 10
Importați "C: \ cg8n \ krug1.dxf"
obj.zAngle = s
obj.origin (0) = 20 '- o schimbare în x de 20, dată de scară, va fi de fapt o deplasare de 2 cm
obj.origin (1) = 0 '- schimbare în y (dacă este activată pe 0, atunci nu puteți specifica)
obj.origin (2) = 0 'este schimbarea în z
obj.scale = 0,1 '- scară
objSetH 'matricea de transformare acționează după rotație
următor

Pentru s = 0 Pentru 360 pasul 10
Importați "C: \ cg8n \ krug1.dxf"
obj.scale = 0,1 '- scară
obj.origin (0) = 1 'este trecerea în x cu 1
obj.origin (1) = 1 'este compensat cu 1
obj.origin (2) = 1 'este trecerea în z cu 1
obj.SetH "matrice de transformare pentru schimbare
obj.zAngle = s '- transformat
objSetH 'matricea de transformare acționează după rotație
următor


SetInvisibleAll "ecran de curățare

Mai jos este un program pentru calcularea lungimii segmentului p1-p2 și afișarea valorilor sale pe afișajul displayului.
Macroprogramul punctual arată cum este determinată distanța cea mai scurtă de la punctul p3 la linia p1-p2. De asemenea, determinăm punctul p la care distanța este minimă. Se tipărește un mesaj:
Cea mai mică distanță de punctul p3 până la linia p1-p2 = 10
Coordonatele punctului p sunt următoarele:
x = 5
y = 7
z = 4

Exemplu 1. Scrieți un program care numără în mod aleator un număr de la 1 la 100 și afișează acest număr în fereastra de lucru a sistemului "Vector".

Dim a 'definește variabilele
randomize "permite generarea de numere aleatoare
a = int (rnd (1) * 100 + 1) 'atribuirea unei variabile (a) la o valoare aleatoare
krug.s a / 10, a / 10,0,0,1 "Desenarea numerelor uscate (coordonatele centrului) pe cercuri
VBSMsg "Număr aleatoriu =" o

Ce s-ar întâmpla dacă nu am declara o variabilă la începutul programului. Dar nimic. Declarația unei variabile este necesară pentru ca aceasta să fie "vizibilă" în alte proceduri (sub, funcție).

Exemplul 2. În ce etapă veți ghici numărul dat în avans?
Pentru a scrie un program, trebuie să organizați:
- atribuirea unui număr predeterminat în avans,
- o buclă de numere,
- ieșiți din program când ghiciți numărul,
- mesajele de ieșire, pentru ce perioadă a apărut ghicitul.
În acest caz, secvența numerelor ghizibili poate fi reprezentată de cercuri ale căror coordonate de centru sunt: ​​numărul abscisă - iterație, ordinul - valoarea numărului ghicit.

"Deci, în ce etapă a" i "va ajunge în prealabil numărul predefinit" k "?

k = 23 'număr predefinit

Pentru i = 1 până la 150 Pasul 1
randomize "permite generarea de numere aleatoare
a = int (rnd (1) * 100 + 1) 'atribuirea unei variabile (a) la o valoare aleatoare
krug.s i / 10, a / 10,0,0,1 'vom afișa valoarea (a), unde a este ordinul punctului, i este abscisa
dacă a = k Apoi ieșiți Pentru 'condiție de ieșire
următor

'Afișați mesaje pe ecran
VBSMsg "numărul" o vbCrLf "este primit în pasul" eu

Visual Basic astăzi a devenit un instrument complet pentru profesioniști. Discuția despre limbi este adesea redusă la dilema "Visual C ++ sau Delphi". Și cum rămâne cu VB, care depășește toate celelalte mijloace din sfera profesională în ceea ce privește popularitatea în lume? Ca să nu mai vorbim de faptul că utilizarea diferitelor instrumente în cadrul aceluiași proiect este destul de banal: unul pentru design de interfață de utilizator, al doilea - pentru a crea un module de calcul, al treilea - pentru a oferi acces la baze de date, etc. Deci a fost acum douăzeci de ani, dar astăzi a devenit deosebit de important în contextul modelului component de creare a aplicațiilor. Probleme de dezvoltare au fost mult timp mutat din zona de coduri de scris în domeniul capacității macro de a utiliza instrumente.

Da Delhpi este unul dintre cele mai bune și mai elegante instrumente de dezvoltare. Însă conducerea VB pe piață este determinată de caracterul său de masă, care a dat naștere unei piețe fără precedent a diverselor adaosuri și extensii, ca rezultat al faptului că devine, de fapt, standardul macro-limbaj pentru o gamă largă de aplicații de afaceri. Desigur, problema principală în alegerea unui instrument de dezvoltare este o posibilitate fundamentală de a pune în aplicare sarcina. În acest plan, apariția limbajului Java este foarte tipică. Tehnologia sa se concentrează mai mult pe noi domenii de aplicare și metode de implementare (Internet, applet, bytecode, etc.). Cu toate acestea, domeniul de aplicare al Java nu este doar zonele speciale ale Internetului - cea mai mare parte a dezvoltării se îndreaptă către domeniul sistemelor tradiționale de aplicații.

Cum să predați și cum să predați programarea

Abordarea cea mai caracteristică a fost și rămâne formarea cu principiul că "știm, atunci învățăm", nu ne îngrijim de întrebare "și de ce este necesar". Astăzi, programarea face parte din problematica alfabetizării informatice, iar metodologia de predare ar trebui să se schimbe în modul cel mai decisiv. Tehnologia de dezvoltare a programelor: programarea vizuală, logica evenimentului, tehnologia componentelor, utilizarea mijloacelor macro, etc., ar trebui să aibă un impact profund asupra metodologiei de predare. Și ce se face acum? Este mai frecventă studierea teoriei limbilor? Dar această afirmație a întrebării ne amintește de o anecdotă binecunoscută despre bazin, care se promite că este umplută cu apă când toată lumea învață să înoate. Schema clasică de predare a programării arăta astfel: în primul rând, un studiu teoretic al sintaxei unui anumit limbaj, și numai apoi punerea în aplicare a unor sarcini practice. Astăzi, pentru scrierea primelor programe pentru Windows, nu trebuie să știți deloc despre caracteristicile lingvistice - trebuie să înțelegeți logica generală a dezvoltării aplicațiilor și să puteți lucra în mediul instrumentului. Și numai după aceea puteți să învățați limba pentru "programarea sofisticată". Ce instrument de dezvoltare este potrivit pentru această sarcină? Răspunsul este Visual Basic. În primul rând, va permite abstractizarea în cea mai mare măsură a problemelor lingvistice. În al doilea rând, - familiarizați-vă cu mediul de programare, caracteristic pentru toate instrumentele de dezvoltare Microsoft. Stăpânirea aceleiași limbi este cu adevărat posibilă numai în timpul muncii practice și auto-instruirii. Pentru industria de calculatoare, ca sferă cea mai dinamică în curs de dezvoltare, ca și cum nicăieri nu este obiectivul principal al educației - punând bazele unei viitoare învățări pe toată viața mea.