Mais uma quinta-feira mais um tutorial sobre C#. Hoje vamos começar a trabalhar com variáveis e estruturas de decisão (if/else). O tutorial de hoje será simples, e visa somente em escrevermos três números, e o programa irá “dizer” qual o maior.
Em programação as variáveis fazem sempre parte da estrutura do código. No tutorial de hoje vamos a começar a trabalhar com este aspecto importantíssimo na programação.
Vamos então por mãos à obra.
Antes de começarmos a programar, vamos pensar como funcionará o programa.
O objectivo é criarmos três “textbox” onde vamos digitar um número em cada uma. No fim, o programa vai indicar qual o maior.
- Após termos iniciado um novo projecto vamos “arrastar” um botão e três textbox para a form.
No tutorial de hoje é importante atribuir um nome a cada textbox para ser mais fácil construir o código.
Para atribuir um nome à textbox temos de fazer o seguinte:
- Clique com o botão direito do rato em cima da textbox e seleccione Properties
Irá visualizar as propriedades da textbox.
Procure o campo (name). No campo “name” irá verificar que tem o nome “textBox1”.
Altere o valor por exemplo para tB1.
Faça o mesmo para as outras textbox.
Altere para tB2 e tB3 respectivamente.
Depois de ter efectuado este passo, clique duas vezes no botão para poder escrever o código.
Começamos a declarar as variáveis.
No caso de números inteiros as variáveis declaram-se com um int (tem de ser colocado em minúsculas), mas neste caso vamos usar uma textbox que normalmente é usada para colocar texto.
Devido a este facto vamos ter de fazer uma pequena conversão, como será mostrada posteriormente.
int num = Int32.Parse(tB1.Text);
Este exemplo de código representa:
- int num – (criei uma variável de inteiros, à qual atribui o nome “num”)
- Int32.Parse – (serve para converter um outro tipo de variável para inteiro. Este “int” tem de ser escrito com i maiúsculo. O 32 significa o número de bits que suporta, pode escolher também o Int16 ou o Int64, conforme o tamanho do número inteiro.)
- (tB1.text) – (atribui à variável o valor que estará dentro da textbox. Como se trata de uma textbox, a seguir ao nome (tb1) temos de colocar o .(ponto) Text.
Temos de efectuar este mesmo passo para as outras textbox.
int num1 = Int32.Parse (tB2.Text);
int num2 = Int32.Parse(tB3.Text);
Agora o programa já “sabe” quais os números que estão nas textbox.
Mas como o objectivo deste tutorial é o programa indicar qual o número maior vamos precisar de mais código.
Irá também verificar que em programação existem diversas formas de chegar a um resultado.
No tutorial de hoje vou mostrar duas maneiras distintas para conseguir realizar o pretendido neste tutorial.
1º Tipo de resolução
Começamos por criar mais uma variável. Esta variável será a “base de dados”, isto é, quando efectuarmos a comparação entre os números, ela vai guardar o número maior dessa comparação.
- Criei uma nova variável de inteiro com o nome aux. Como não vamos atribuir nenhuma textbox a esta variável, vamos precisar de lhe atribuir um valor. Como se trata de uma variável de inteiros, vamos atribuir o valor 0 (zero).
- Também criei uma nova variável com o nome maior para guardar o resultado de todas as comparações. Tal como a variável aux, vamos atribuir o valor 0 (zero), se não o fizermos o programa dará erro.
int aux = 0;
int maior = 0;
Após termos criado esta nova variável, vamos começar a fazer as comparações entre os números.
Para efectuamos esta comparação, vamos utilizar as estruturas de decisão if / else.
Para o programa determinar qual o número maior, vamos fazer a comparação.
A lógica de pensamento é:
Se o num é maior que o num1
Então
o aux é o num
Senão
aux é o num1
Agora que determinamos qual o maior número dos dois primeiros, vamos comparar com o terceiro.
Se o num2 é maior que o aux
Então
o maior número é o o num2
Senão
O maior número é o aux
Antes de escrever o código, para fazermos a comparação precisamos dos símbolos > (maior) e < (menor)
O código:
int aux = 0;
int maior = 0;
if (num > num1)
aux = num;
else
aux = num1;
if (num2 > aux)
maior = num2;
else
maior = aux;
Agora que a comparação já está feita, vamos fazer com que o programa mostre o resultado.
Mais uma vez recorremos à MessageBox.
O código será:
MessageBox.Show(“O número maior é: ” + maior.ToString());
Como pode verificar, a seguir ao campo de texto da textbox foi acrescentado “+ maior”. Isto faz com que além do texto seja acrescentado o valor da variável maior.
Também foi acrescentado o ToString, como a TextBox é do tipo string (texto) e a variável maior é do tipo int (inteiro), temos de converter a variável maior para string. Por esse motivo é utilizado o ToString.
O resultado final será o seguinte:
Como mencionei no início, existem diversas formas de atingir um resultado.
Irei mostrar agora um outro tipo de resolução.
Vamos precisar de outro tipo de código de controlo, neste caso vamos usar o “e”, que se escreve em C# da maneira &&.
2º Tipo de resolução
A lógica de pensamento é:
Se
o num for maior que o num 1 e maior que o num2
Então
o maior é o num
Se o num1 for maior que o num e maior que o num2
Então
o maior é o num1
Se o num2 for maior que o num e maior que o num1
Então o maior é o num2
O código:
if (num > num1 && num > num2)
maior = num;
if (num1 > num && num1 > num2)
maior = num1;
if ( num2 > num && num2 > num1)
maior = num2;
Voltamos então a mostrar novamente o resultado através da MessageBox.
MessageBox.Show(“O número maior é: ” + maior.ToString());
O resultado desta resolução é igual ao primeiro.
Espero que tenham gostado. Cada semana o grau de dificuldade irá aumentar.
Qualquer dúvida ou sugestão pode sempre ser enviado para helio.moreira@pplware.com