20
Conf. dr. Cozgarea Adrian Structura lexicală a unui program VB.NET Elemente de programare VB.NET: 1. comentarii; 2. cuvinte cheie; 3. identificatori (denumiri); 4. literali (valori); 5. separatori; 6. variabile; 7. constante; 8. operatori şi expresii; 9. instrucţiuni şi funcţii (intrinseci) VB.NET; 10. proceduri şi funcţii definite de utilizator.

Structura Lexicală a Unui Program VB

Embed Size (px)

DESCRIPTION

structura lexicala a unui program vb

Citation preview

  • Conf. dr. Cozgarea Adrian

    Structura lexical a unui program VB.NET

    Elemente de programare VB.NET:

    1. comentarii;

    2. cuvinte cheie;

    3. identificatori (denumiri);

    4. literali (valori);

    5. separatori;

    6. variabile;

    7. constante;

    8. operatori i expresii;

    9. instruciuni i funcii (intrinseci) VB.NET;

    10. proceduri i funcii definite de utilizator.

  • Conf. dr. Cozgarea Adrian

    Comentarii

    Exemple:

    ' acesta este un comentariu pe o linie

    X= 1000 ' comentariu la sfarsitul unei linii de cod

    Cuvintele cheieExemple: And, Byte, Call, ... When, While

    IdentificatoriExemple: a123 _a _2 _ss_e2_

    Not: identificatorii AbC i aBc sunt identici (VB este case insensitive ) !!!

    LiteraliExemple: X=1000

    Y=22.29

    Sir="abcd Not: AbCaBc !!!

    Ziua=#01/01/2007#

    Separatori: ().,_:

  • Conf. dr. Cozgarea Adrian

    Scrierea unei instruciuni pe mai multe rnduri:

    Dim x As Integer, _

    y As Double, _

    d As Date

    Scrierea mai multor instruciuni pe un singur rnd:

    Dim x As Integer : x=10 : MsgBox (x)

  • Conf. dr. Cozgarea Adrian

    Variabile

    Etape:

    1. Declararea (definirea) variabilei :

    a. Denumire

    b. Tip de date

    2. Iniializarea variabilei :

    Implicit/automat (numai pt. tipul valoare) cu valoarea implicit

    Explicit (obligatorie pt. tipul referin)

    Durata de via :

    = durata execuiei structurii (ex: operaia) n care a fost definit var.

    Instruciunea Dim:

    Dim [As ][= ] [, ]

  • Conf. dr. Cozgarea Adrian

    Exemple:'tip VALOARE:

    Dim nr As Integer 'declarare si iniializare implicit (cu 0)

    Dim nrIntreg As Integer=100 'declarare i iniializare explicit

    Dim x,y as Single 2 variabile de tip Single, iniializate implicit (0)

    Dim nr1 As Byte=1, nr2 As Integer, _ 'declaraii

    ziua As Date multiple

    'tip REFERIN:

    Dim sir1 As String 'declarare FARA iniializare (sir1=Nothing)!

    sir1 = abc 'iniializare explicit

    Dim sir2 As String=abcdef 'declarare si iniializare explicit

    Variabile

  • Conf. dr. Cozgarea Adrian

    Constante

    Intruciunea CONST:

    Const [As ]= [, ]

    Exemple:

    Const PLAFON_MIN=1000

    Const DATA_CRT AS Date = #04/11/2007#, TVA As Decimal = 0.24

  • Conf. dr. Cozgarea Adrian

    Operatori aritmetici

    + - * / \ ^ Mod

    Exemple:

    Dim total As integer

    total=120+20 ' total=140

    total=5/3 ' total=2 (1.66 este convertit la ntreg!)

    total=7\2 ' total=3

    total=5^2 ' total=25

    total=10 Mod 3 ' total=1

  • Conf. dr. Cozgarea Adrian

    Operatori de atribuire

    = += -= *= /= \= ^=

    Exemple:

    Dim x As integer

    x=5

    x+=10 ' echivalent cu x=x+10

    x-=5 ' echivalent cu x=x-5

    x*=2 ' echivalent cu x=x*2

  • Conf. dr. Cozgarea Adrian

    Operatori de comparare

    < >= = Is IsNot Like

    Exemple:

    MsgBox 2>1 ' Afiseaza "True"

    MsgBox ("abcd" Like "ab?d") ' Afiseaza "True"

    MsgBox ("abcfgh" Like "a*") ' Afiseaza "True

    MsgBox ("aBc" = AbC") ' Afiseaza False

  • Conf. dr. Cozgarea Adrian

    Operatori de concatenare

    + &

    Exemple:

    MsgBox ("abc" + "d") Afiseaza "abcd"

    MsgBox ("12" + 3) Afiseaza 15 !

    MsgBox ("abc" + 3) Eroare !

    MsgBox ("abc" & 3) Afiseaza "abc3"

  • Conf. dr. Cozgarea Adrian

    Operatori logici

    1. And

    2. Or

    3. Not

    4. Xor

    5. AndAlso

    6. OrElse

    Exemple:

    MsgBox (True And False) ' Afiseaza False

    MsgBox (True Or False) ' Afiseaza "True"

    MsgBox ((2>1) And (4=1)) ' Afiseaza "False"

    MsgBox ((2>1) Or (4=1)) ' Afiseaza "True"

    Msgbox (True And False OR False) ' Afiseaza False"

  • Conf. dr. Cozgarea Adrian

    Ali operatori

    AddressOf GetType TypeOf

    Exemple:

    Dim sir As String="abc", obj

    MsgBox ( TypeOf sir Is String) ' Afiseaza "True"

    MsgBox ( TypeOf obj Is Object) ' Afiseaza "True"

  • Conf. dr. Cozgarea Adrian

    Precedena operatorilor

    I. Operatorii aritmetici i de concatenare:1. ^

    2. Operatorii unari +, 3. *, /

    4. \

    5. Mod

    6. +, 7. &

    II. Operatorii de comparare =, , =, Is, IsNot, Like, TypeOf...Is

    III. Operatorii logici:1. Not

    2. And, AndAlso

    3. Or, OrElse

    4. Xor

    Exemple

    x=5+2*3 x=11 (5+6)

    x=(5+2)*3 x=21

  • Conf. dr. Cozgarea Adrian

    Instruciuni declarative

    Instruciune Exemplu

    Class Class Factura...

    End Class

    Const Const PLAFON_MIN As Single=0

    Dim Dim x1, x2 As Single, sir As String

    Function Function Media(x1 As Double,x2 As Double) As Doublereturn (x1+x2)/2

    End Function

    Sub Sub AfisMedia(x1 As Single, x2 As Single)MsgBox((x1+x2)/2)

    End Sub

    Property

    Namespace Namespace Vanzari

    ...

    End Namespace

  • Conf. dr. Cozgarea Adrian

    Instruciuni executabile

    Instruciune Exemplu

    Call Call AfiseazaMedia(4,5)

    End End

    Imports Imports System.Math

    Rem Rem Un comentariu

    Return [] Return util intr-o procedura (nu returneaza o valoare)Return 5+2 pentru o functie care returneaza un intreg

    Stop Stop

    Cele mai importante: instruciunile pt. structurile de control:

    alternative : If...End If | Select Case...End Select repetitive : For Next | While End While etc.

    Altele:

  • Conf. dr. Cozgarea Adrian

    Funcii VB pentru conversii

    Funcie Exemplu

    Asc(), AscW() MsgBox(Asc("s"))

    MsgBox(AscW(""))

    Chr(), ChrW() MsgBox (Chr(115)) 'afiseaza s

    MsgBox (ChrW(351)) 'afiseaza

    CBool(), CByte(),

    CChar(), CDate(),

    CDbl(),

    CDec(),

    CInt(),

    CLng(),

    CSng(),

    Dim i As Integer=CInt("12")

    Dim s1 As String=CStr(123)

    Dim s2 As String=CStr(Now)

    Dim d As Date = CDate(11/14/2007")

    Format() MsgBox(Format(4.9,"#0.00")) afiseaza 4.90

    Str() Dim s As String= Str(123)

    Val() Dim i As Integer= Val("123")

    Ctype (,) Dim i As Integer=CType("123",Integer)

    Dim d as Date=CType(11/14/2007,Date) depend. de setarea calc.

    Altele:

  • Conf. dr. Cozgarea Adrian

    Funcii VB pentru iruri

    InStr(), Mid (), Left (),Lcase (), Ucase (), Trim () etc.

    nlocuite de metodele clasei String: IndexOf (), Replace (), Substring (), ToLower (),

    ToUpper (), Trim () etc.

  • Conf. dr. Cozgarea Adrian

    Funcii VB pentru date calendaristice

    DateAdd (), Day (), Month (), Year () etc.

    nlocuite de metodele clasei Date:AddDays (), AddMonths (), AddYears (), Month (), Year () etc.

  • Conf. dr. Cozgarea Adrian

    Funcii VB pentru validri

    Funcie

    IsArray()

    IsDate()

    IsNothing()

    IsNumeric()

    IsReference()

  • Conf. dr. Cozgarea Adrian

    Funcii pentru interaciunea cu utilizatorul

    Funcie Exemplu

    InputBox() Dim s As String = InputBox ("NumarFactura")

    MsgBox() 1. MsgBox(Cont invalid !",MsgBoxStyle.Critical,Eroare)

    2. Dim rasp As MsgBoxResult

    rasp=MsgBox("Continuati?", MsgBoxStyle.YesNo)