Escolar Documentos
Profissional Documentos
Cultura Documentos
Programao I
Introduo Programao em
Visual Basic
Fabricio Breve
Objetivos
Ser capaz de escrever programas simples em Visual
Basic
Ser capaz de usar os comandos de entrada e sada
Familiarizar-se com os tipos de dados
Entender os conceitos bsicos de memria
Ser capaz de usar operadores aritmticos
Entender a precedncia dos operadores aritmticos
Ser capaz de escrever comandos de tomada de deciso
Ser capaz de usar os operadores de igualdade e os
relacionamentos
Ser capaz de usar os dilogos para exibir mensagens
Aplicativos de Console
Contm apenas sada de texto
um dos tipos de projeto mais simples
A sada exibida no Prompt do MS-DOS
(Windows 95/98/ME) ou Prompt de
Comando (Windows NT/2000/XP)
' Bemvindo.vb
' Um programa simples em Visual Basic.
Module modFirstWelcome
Sub Main()
Console.WriteLine(Bem-Vindo ao Visual Basic!")
End Sub ' Main
End Module ' modFirstWelcome
Comentrios
Linhas 1 e 2 so linhas de comentrios pois
comeam com um caractere de aspa simples ()
Comentrio de linha inteira: aspa no incio da linha
Comentrio de final de linha: aspa no final de uma
linha de cdigo
Definio de Mdulo
Linhas 4 e 10 definem nosso primeiro
mdulo
Mdulos so agrupamentos lgicos de
procedimentos que simplificam a
organizao do programa
Todo aplicativo console em VB tem no
mnimo um mdulo e um procedimento
Definio de Mdulo
Module uma palavra-chave do VB
O nome do nosso mdulo (modFirstWelcome)
um identificador
Identificadores:
Srie de caracteres consistindo de letras, dgitos e
caracteres de underline ( _ )
No podem comear com dgitos nem conter
espaos
Linhas em branco
As linhas 3 e 5 so linhas em branco,
ignoradas pelo compilador
Servem apenas para melhorar a
legibilidade do cdigo
Main()
A linha 6 est presente em todo aplicativo
de console do VB
onde a execuo do programa comea
(ponto de entrada)
Os parnteses no final de Main indicam
que ele um procedimento
Recuo
Note que as linhas 6 a 8 esto recuadas
em relao as outras
Esta uma conveno usada para
melhorar a legibilidade do programa
Console.WriteLine
A linha 7 a que faz o trabalho real do
programa (imprimir a srie de caracteres
entre aspas string)
A linha inteira chamada comando
Quando o comando executado ele exibe
a mensagem Bem-Vindo ao Visual Basic
Console.WriteLine
Console.WriteLine so dois identificadores
separados por um ponto
Console o nome de uma classe e WriteLine
o nome de um mtodo da classe Console
O mtodo WriteLine imprime os caracteres
passados como argumento e coloca o cursos
na linha seguinte
Implementando o programa
Crie o aplicativo console:
File > New > Project
Console Application
Escreva o cdigo
Escreva o cdigo da linha 7
Lista de Membros
Descrio do membro
realado
Escreva o cdigo
Erro de Sintaxe
Aparece sublinhado em azul
Adicionando Inteiros
Declarando variveis
As declaraes comeam com a palavrachave Dim
Os identificadores primeiroNumero,
segundoNumero, numero1, numero2 e
somaDosNumero so variveis (posies
de memria do computador usadas pelo
programa)
Toda varivel deve ser declarada antes de
ser usada
Variveis
As variveis primeiroNumero e
segundoNumero so do tipo String
(armazenam strings de caracteres)
As variveis numero1 e numero2 so do
tipo Integer, ou seja, armazenam valores
inteiros.
O nome de uma varivel pode ser
qualquer identificador vlido
Dicas
D nome significativos para suas variveis
Por conveno nomes de variveis so
iniciados com letra minscula, e cada
palavra depois da primeira comea com
letra maiscula (Ex.: primeiroNumero)
ReadLine() e adio
numero1 = Console.ReadLine()
mtodo que interrompe o programa e
aguarda uma entrada do usurio e atribui
essa entrada varivel numero1
Imprimindo a soma
Console.WriteLine("A soma {0}",
somaDosNumeros)
{0} ser substitudo pela varivel
somaDosNumeros
Outro exemplo:
Console.WriteLine(Os nmeros so {0}, {1} e {2},
numero1, numero2, numero3)
{0}, {1} e {2} sero substitudos pelos valores das
variveis numero1, numero2 e numero3
respectivamente
Conceitos de Memria
Variveis
Correspondem a localizaes reais na memria do computador
Toda varivel tem
Nome
Tipo
Tamanho
Valor
Aritmtica
Operadores Aritmticos
O Visual Basic usa varios smbolos especiais
no usados na lgebra
Asterisco (*), palavra-chave Mod
Operadores Binrios
Operam usando dois operandos
soma + valor
Operadores Unrios
Operadores que s usam um operando
+9, -19
Aritmtica
Diviso com resultado inteiro
Use a barra invertida, \
7 \ 4 resulta em 1
Operadores Aritmticos
Operao
Adio
Operador
Aritmtico
+
Expresso
Algbrica
f+7
Expresso no
Visual Basic
f + 7
Subtrao
pc
p - c
Multiplicao
bm
b * m
Diviso (float)
X/y
x / y
Division
(Integer)
Mdulo
No tem
v \ u
r mod s
r Mod s
Exponenciao
qp
q^p
Unrio negativo -
Unrio Positivo +
+g
+g
Regras de Precedncia
1.Operadores em expresses contidas entre
parnteses
2.Exponenciao
3.Unrio positivo e negativo
4.Multiplicao e Diviso Ponto Flutuante
5.Diviso Inteira
6.Operao de mdulo
7.Operaes de adio e subtrao
Precedncia de Operadores
Operadores
( )
Operao
Parenteses
Exponenciao
+,
Operadores de
Sinal
*, /
Multiplicao e
Diviso
Diviso Inteira
Mod
Mdulo.
+,
Adio e
Subtrao
Exemplo de Precedncia de
Operadores
Passo 1. y = 2 * 5 * 5 + 3 * 5 + 7
2*5
10
Passo 2. y = 10 * 5 + 3 * 5 + 7
10 * 5
50
Passo 3. y = 50 + 3 * 5 + 7
3*5
15
Passo 4. y = 50 + 15 + 7
50 + 15
65
Passo 5. y = 65 + 7
65 + 7
Passo 6. y = 72
72
(ltima Adio)
Operadores de Igualdade e
Relacionais
Operador de
Igualdade ou
Relacional Algbrico
Padro
Operadores de igualdade
=
Operadores Relacionais
>
<
Operadores de
Igualdade ou
Relacionais do
Visual Basic
Exemplo de Significado de
Condio
Condio do Visual
do Visual
Basic
Basic
=
<>
x = y
x <> y
x igual a y
x diferente de y
>
<
>=
<=
x
x
x
x
X maior que y
x menor que y
x maior ou igual a y
x menor ou igual a y
> y
< y
>= y
<= y
Variveis de mesmo
tipo podem ser
colocadas na mesma
declarao
A estrutura If/Then
compara se os valores
de number1 e number2
so iguais
34
35
If (number1 <= number2) Then
36
Console.WriteLine("{0} <= {1}", number1, number2)
37
End If
38
39
If (number1 >= number2) Then
40
Console.WriteLine("{0} >= {1}", number1, number2)
41
End If
42
43 End Sub ' Main
44
45 End Module ' modComparison
Por favor digite o primeiro inteiro: 1000
Por favor digite o segundo inteiro: 2000
1000 <> 2000
1000 < 2000
1000 <= 2000
Por
Por
515
515
515
Por
Por
333
333
333
Sada do
Programa
Precedncia e Associatividade de
Operadores
Operadores
()
^
* /
Associatividade
esquerda para a direita
esquerda para a direita
esquerda para a direita
\
Mod
+ = <> <
<= > >=
Tipo
parenteses
exponenciao
multiplicativo e diviso
ponto-flutuante
diviso inteira
mdulo
adio e subtrao
igualdade e relacional
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
' RaizQuadrada.vb
' Mostra a raiz quadrada de 2 em um dilogo.
Imports System.Windows.Forms ' Namespace contendo MessageBox
Module modRaizQuadrada
Sub Main()
' Calcula a raz quadrada de 2
Dim root As Double = Math.Sqrt(2)
Caractere de continuao na
prxima linha
Tipo Double armazena
nmeros de ponto flutuante
Sada do programa
Boto OK permite
que o usurio feche
o dilogo
Fechar
Documentao MSDN
Informao sobre os assembly que ns precisamos
podem ser encontradas na documentao no MSDN
Selecione Help > Index para mostrar o dilogo
Index
Acessando a documentao
String de Busca
Link para a
documentao
Acessando a documentao
Referncia / Imports
Referncia
necessrio adicionar uma referncia ao assembly
se voc quiser usar suas classes
Exemplo
Para usar a classe MessageBox necessrio adicionar
referncia para System.Windows.Forms
Imports
Esquecer de adicionar um comando Imports para
um assembly referenciado gera um erro de sintaxe
Adicionando Referncia
Project > Add Reference
Exerccios
1) Exibir a mensagem Ol usando um
MessageBox
2) O que exibido no dilogo quando cada um
dos seguintes comandos executado?
Assuma que o valor de x 2 e o valor de y 3
a) MessageBox.Show(x,x)
b) MessageBox.Show((x+x), (x + x))
c) MessageBox.Show(x+y)
d) MessageBox.Show( _
(x+y),(y+y))
Exerccios
3) Qual o comando para a expresso
z = 8e5 n ?
4) Qual o valor de x para cada um dos
comandos abaixo?
a) X = 7 + 3 * 3 \ 2 - 1
b) X = 2 Mod 2 + 2 * 2 2 / 2
c) X = ( 3 * 9 * ( 3 + ( 9 * 3 / ( 3 ) ) ) )
Exerccios
5) Escreva um programa que solicite ao usurio
que digite dois nmeros e mostre a soma, a
diferena, o produto e o quociente entre os dois
nmeros. Use a janela de comando para
entrada e sada
6) Escreva um programa que receba como
entrada do usurio o raio de um crculo e
imprima o dimetro, a circunferncia e a rea do
crculo. Use as seguintes frmulas (r o raio):
dimetro = 2r, circunferncia = 2r, rea = r2.
Use 3,14159 para ou a constante Math.PI
Exerccios
7) Escreva um programa que leia dois
inteiros, determine e imprima se o primeiro
for um mltiplo do segundo. Por exemplo,
se o usurio inserir 15 e 3, o primeiro
nmero um mltiplo do segundo. Se o
usurio inserir 2 e 4, o primeiro no um
mltiplo do segundo. Use a janela de
comando para entrada e sada. (Dica: use
o operador de mdulo)
Exerccios
8) Escreva um programa que receba como
entrada do usurio um nmero consistindo
de cinco dgitos, separe o nmero nos
seus dgitos individuais e imprima os
dgitos separados uns dos outros por trs
espaos em branco cada. Por exemplo, se
o usurio digitar o nmero 42339, o
programa dever imprimir:
4 2 3 3 9
Referncias Bibliogrficas
MSDN: http://msdn.microsoft.com/vstudio/
DEITEL, Harvey M.; DEITEL, Paul J.;
NIETO, Tem R. Vual Basic.NET: Como
Programar. Prentice-Hall, 2004