terça-feira, 17 de julho de 2012

Usando Vetores

Neste Post vamos estudar a utilização de Vetores em VB.NET.
Como primeiro exemplo, vou usar de uma aplicação do tipo Console.

Menu new Project do Visual Studio 2010 para criação de uma aplicação Console.


Após a criação do projeto da aplicação segui alguns passos para renomear o módulo no Solution Explorer. Você pode revisar acessando o Post Criando aplicação Console VB.NET .

Seguindo os passos do exercício, vamos criar um vetor que receba o nome de 5 amigos.
Para dimensionar um vetor com essas características basta digitar:


Declaração de Vetor: DIM amigos(4) as string


Na linha indicada estamos fazendo:
Dim:  dimensionar , amigos(4): vetor com cinco posições contando a partir do zero, As String: receberá uma cadeia de caracteres.

Para atribuir um valor dado pelo usuário à uma determinada posição do Vetor, vamos emitir uma mensagem usando o método WriteLine.

Console.WriteLine("Digite o nome de um amigo")    amigos(0) = Console.ReadLine()


Na linha : amigos(0) = Console.ReadLine()
Estamos atribuindo o valor digitado pelo o usuário ao índice 0 do Vetor.
O índice 0 é a primeira posição de um vetor.

Usando a estrutura de repetição "Enquanto" para preencher um Vetor.


Para preencher o vetor usando um mecanismo de repetição vamos apenas acrescentar a instrução
While ao código e uma variável que faça o controle de vezes que a repetição será executada.

Vamos chamar essa variável de contador.





Dessa forma, o algoritmo executará cinco vezes (de 0 até 4) o método WriteLine e a atribuição do nome digitado pelo o usuário a uma posição do vetor.

Agora vamos fazer com que o algoritmo apresente os nomes digitados pelo usuário.

Para apresentar os nomes que estão alocados no vetor foi utilizada uma nova estrutura de repetição para apresentar os nomes um a um.

Note que foi zerado o valor do contador pois quando a primeira estrutura de repetição for finalizada
o contador deverá ter o valor 5. Como 5 é maior que 4 não entrará nenhuma vez no segunda estrutura de repetição.



Não podemos esquecer que no final do algoritmo devemos incluir o Console.ReadLine() apenas para que o Console não feche a tela antes que o usuário possa ler o conteúdo.



Agora é só executar pressionando F5.





Algo deu errado!!

Na hora de exibir os nomes alocados no Vetor, o mesmo nome apareceu cinco vezes.

A falha no algoritmo está na linha indicada:





amigos(0) = Console.ReadLine()

Indica que toda vez que o laço de repetição enquanto (while) é executado e o usuário digita um nome,
este nome é atribuído à mesma posição do vetor. (posição zero)

Para resolver este problema basta trocar o zero, que está como índice do vetor, para a variável contador.
Assim, cada nome digitado será alocado em uma posição diferente do vetor até que ele esteja completo.



Agora o resultado deve ser o seguinte:



Para exibir essa linha separadora apenas incluí uma linha

Console.WriteLine("---------- Mostrando os amigos -----------")

antes de começar a segunda estrutura de repetição enquanto.




domingo, 8 de julho de 2012

Criando uma aplicação Console em VB.NET com Visual Studio

Olá pessoal!


Neste post vamos aprender a criar uma aplicação Console em VB.NET. Neste primeiro momento vamos utilizar um algoritmo que já estudamos com Visualg: O cálculo da média simples.


Dado três notas, o algoritmo deve fazer o cálculo da média simples e mostrar-la aos usuários.


Em primeiro lugar, veremos como criar um projeto de aplicação Console no Visual Studio.

Criando um projeto Visual Studio 2010



Clicando no link indicado poderemos ver um tela de seleção de tipos de projetos:

Seleção do tipo de projeto e local para a gravação do projeto

Nesta etapa é importante observarmos alguns pontos:
  1. O Tipo de linguagem de programação que usaremos.
    O Visual Studio é uma IDE de desenvolvimento com suporte a várias linguagens, neste exercício usaremos VB.NET.
  2. O Tipo de Projeto - Console Application.
  3. O Diretório onde será criado o projeto.
                   Você pode selecionar qualquer diretorio em seu computador, caso não modifique o Visual Studio gravará no diretório padrão que geralmente é \Documents\Visual Studio 2010\Projects.



Após confirmarmos a criação do projeto será criado um módulo com um método  Main(). Nesta postagem não iremos nos aprofundar nas definições de método, por hora é válido saber que ele executará o comportamento necessário de um algoritmo que calcula a média simples através de uma Entrada (as notas que serão imputadas pelo usuário), através de um processamento (a expressão matemática que realiza o cálculo, e por fim, uma Saída (a mostra do resultado da média simples).

Método Main


É recomendável que o módulo criado automaticamente pelo Visual Studio seja renomeado com um título mais sugestivo, algo que indique a funcionalidade do algoritmo.  Vamos renomear para Media, sem acento.


Para renomear de forma segura, utilizaremos o painel do Solution Explorer. Clicando em cima do Module1 e pressionando F2 para renomear.
Aparecerá uma mensagem perguntando se gostaria de renomear todas as referências com o novo nome. Clique em Sim.




(Se o Solution Explorer não estiver visível como na imagem, é possível torna-lo visível através das teclas de atalho Ctrl + Alt + L.)

Alterar nome do módulo


Bom, agora chegou a hora de falarmos do código.
Assim como já desenvolvemos antes, precisaremos da declaração de algumas variáveis para o algoritmo armazenar as notas e mostrar o resultado.


declaração de variáveis: Dim nota1 as decimal, dim nota2 as decimal, dim nota3 as decimal, dim media as decimal
De acordo com o exemplo acima, as variáveis foram declaradas como decimal.
Você pode checar os tipos de variáveis disponíveis em VB.NET no link Tipos de variáveis em VB.NET


A palavra chave Dim significa dimensionar, ou simplesmente declarar na memória.
Quando declaramos uma variável estamos "reservando" um espaço na memória para receber unm determinado valor, neste caso um número decimal.

Não se preocupe se os nomes das variáveis ficarem sublinhadas com uma linha verde, essas linhas verdes são avisos que o Visual Studio emite. Eles, na maioria das vezes, indicam que algo pode não estar em conformidade mas não representam erros de sintaxe ou compilação.
No exemplo a seguir o Visual Studio mostrará no painel Error List (Se ele não estiver aparecendo você poderá visualiza-lo através do menu View) um aviso de que as variáveis ainda não foram utilizadas e não receberam valores. 

Lista de erros do Visual Studio 2010








Quando há algum erro de compilação ou um erro de sintaxe no código o mesmo ficará sublinhado com uma linha vermelha, este erro impede a compilação do programa.



Para emitir uma mensagem ao usuário, por exemplo, para pedir que digite uma nota, usaremos o método Escreva que no VB.NET é escrito da seguinte forma em uma aplicação console


Console.WriteLine("Digite a primeira nota")

Podemos dizer que WriteLine equivale ao Escreval do Visualg; faz com que uma mensagem seja escrita utilizando uma nova linha.
Já a palavra Console trás uma novidade para nós uma novidade.
Como VB.NET é uma linguagem que pode ser utilizada em aplicações Web, Desktop e em aplicações console, precisamos informar onde a mensagem seria exibida; neste caso em uma janela do tipo console.

Para recuperarmos um valor digitado por um usuário e atribuirmos a uma variável, usaremos o método ReadLine():

nota1 = Console.ReadLine()

Agora, a novidade fica por conta de Nota1 estar recebendo o Console.ReadLine().
(No VisualG era preciso colocar o nome da variável dentro do parenteses para que ela recebesse o valor).
Métodos Escreva e leia no VB




A partir do momento que uma variável recebe valor, a linha de aviso que o Visual Studio havia colocado desaparecerá.

Basta repetir o procedimento para as outras variáveis para terminar o algoritmo.


Console.WriteLine("Digite a primeira nota")
        nota1 = Console.ReadLine()
        Console.WriteLine("Digite a segunda nota")
        nota2 = Console.ReadLine()
        Console.WriteLine("Digite a terceira nota")
        nota3 = Console.ReadLine()

        media = (nota1 + nota2 + nota3) / 3

        Console.WriteLine("Sua média é : " & media)



Pronto! Terminado o algoritmo! Desta vez, a novidade ficou por conta do símbolo de concatenação.
Observe que no Visualg a concatenação era feita através da vírgula. No VB.NET o símbolo utilizado é o de & ("E" comercial).
        Console.WriteLine("Sua média é : " & media)

Para visualizar o algoritmo em execução, basta pressionar F5.
O resultado deve ser o seguinte:

execução do algoritmo

 

OPS!! Algo parece ter dado errado!
Como a saída é muito rápida, tratando-se apenas de uma frase, o console é fechado rapidamente.
Para resolver este problema basta apenas acrescentar uma linha:


Console.ReadLine()

O console ficará aguardando o pressionar de alguma tecla para fechar a janela. Assim fica mais fácil de visualizar o resultado.






Até Mais!

quinta-feira, 5 de julho de 2012

Tipos de Variáveis em VB.NET.

Tipos de Variáveis em VB.NET.


Boa tarde galera!
Neste primeiro post do blog  .NET Programmers Extreme, gostaria de mostrar as diferenças entre os tipos de varíáveis disponíveis no VB.NET.



Tipos de Variáveis em VB.NET
Tipo de Variável Tamanho Range Situação exemplo
Byte 1 Byte 0 a 255 (sem sinal) Dim ID as Byte
ID = 16
Short 2 Bytes - 32.768 até 32.767 Dim rendimentos as Shor
rendimentos = -10
Integer 4 Bytes - 2.147.483.648 até 2.147.483.647 Dim habitantes as Integer
habitantes = 150000000
Long 8 Bytes - 9.223.372.036.854.775.808 até 9.223.372.036.854.775.807 Dim Celulas as Long
Celulas = 12345768009
Single 4 Bytes - 3,402823 x 1038 to -1.401298 x 10-45 (valores negativos)
1,401298 x 10-45 a 3,402823 x 1038 (valores positivos)
Dim valor as Single
valor = 1457,42
Double 8 Bytes ± 79.228.162.514.264.337.593.543.950.335 (sem ponto decimal)
± 7,9228162514264337593543950335 (com 28 casas decimais)
Menor valor representável: ± 0,0000000000000000000000000001
Dim DEBITO as Decimal
DEBITO = 1387987,34
Char 2 Bytes 0 até 65.535 caracteres Dim SEXO as Char
SEXO = “M”
String 10 Bytes + 2 X quantidade de caracteres 0 até aproximadamente dois bilhões de caracteres Unicode Dim NOME as String
NOME = “José da Silva”
Boolean 4 Bytes True ou False Dim Ativo as Boolean
Ativo = True
Date 8 Bytes 1 de janeiro de 0001 a 31 de dezembro de 9999 Dim DataNascimento as Date
DataNascimento = #14/10/1982#
Object 4 Bytes Qualquer tipo pode ser armazenado em uma variável do tipo Object