Planeta Delphi - Artigo | Lógica de Programação - Parte 1...
Bom pessoal, esse é o primeiro artigo sobre lógica de programação. Estes artigos serão destinados a pessoas que não tem uma grande familiaridade com uma linguagem de programação. Pelo motivo de serem artigos para iniciantes serão apresentados exemplos simples e ao final de cada artigo, alguns exercícios para você possa praticar o conteúdo visto. Para não fugir do escopo do site estaremos usando o Delphi para realizarmos esse curso, a versão que estarei usando é a 7, mas nada impede que você use outras versões.
Nesse artigo estaremos usando aplicações do tipo Console (Console Application), para iniciar uma nova aplicação desse tipo vá até o menu File / New / Other. Em seguida selecione Console application e clique no botão OK.
Esse tipo de programa é feito para rodar em ambientes não-gráficos, por exemplo: Shell e o DOS.
A seguir podemos observar o código fonte do nosso programa. Esse código fonte é criado automaticamente pelo Delphi. cc
A primeira linha do nosso programa, program Project2; é o nome do nosso projeto, para alterarmos o nome dele, devemos usar o menu File / Save Project As... Na seqüência temos a linha {$APPTYPE CONSOLE} que indica o tipo do nosso programa, ou seja, uma aplicação do tipo console. Colocamos na seção Uses as bibliotecas que serão usadas em nosso programa. Por exemplo, nesse programa estamos usando a biblioteca SysUtils, ela contém funções que iremos usar a no decorrer do artigo. Colocamos na seção Uses as bibliotecas que serão usadas em nosso programa. Por exemplo, nesse programa estamos usando a biblioteca SysUtils, ela contém funções que iremos usar a no decorrer do artigo. Colocamos na seção Uses as bibliotecas que serão usadas em nosso programa. Por exemplo, nesse programa estamos usando a biblioteca SysUtils, ela contém funções que iremos usar a no decorrer do artigo.
O código que nós digitaremos ficará contido entre o escopo Begin.. End. onde encontramos a linha {TODO -oUser -cConsole Main : Insert code here}.
Para testarmos nosso programa iremos ter que compilá-lo, para fazer isso vá até o menu Run / Run ou pressione a tecla F9.
Observe que após compilar seu programa, uma tela preta (DOS) é exibida na tela e logo em seguida ela desaparece.
Variáveis são regiões nomeadas de memória usadas para armazenar dados temporariamente. Elas serão úteis em praticamente todos os programas, pois qualquer programa em algum momento necessitar armazenar um valor.
Cada variável pode armazenar um tipo de dados diferente, de acordo como ela for declarada.
As variáveis são declaradas acima do Begin, através da palavra reservada Var. Observe o código abaixo:
Salario: Double;
No código você pode observar que foram declaradas cinco variáveis. A sua declaração se dá da seguinte maneira: Nome: Tipo; ou Nome1, Nome2, Nome3: Tipo;
Estaremos usando os seguintes tipos de dados para as variáveis:
String: armazena uma cadeia de caracteres alfanuméricos, essa cadeia de caracteres deve estar entre apóstrofo (aspas simples). Exemplo: 'Jakson', 'Artigo', 'Delphi7'.
Integer: armazena valores do tipo inteiro, ou seja, sem casas decimais. Exemplo: 1, 49, 233.
Double: armazena valores do tipo fracionário, permitindo assim as casas decimais. Exemplo: 1.49, 22.58, 333.666.
Boolean: permite armazenarmos apenas dois valores: True (Verdadeiro) ou False (Falso).
Char: semelhante ao tipo string, porém armazena apenas um caractere. Exemplo: 'a', '2', 'p'.
Atribuir valores para as variáveis quer dizer armazenar um valor dentro dela. Para fazer a atribuição usaremos os símbolos := (dois pontos – igual). Abaixo alguns exemplos de atribuição. Vale lembrar que para atribuirmos um valor para uma variável o seu tipo deve corresponder.
Nome := 'Jakson Wendt';
Idade := 21;
Salario := 100.12;
Fumante := False;
Letra := 'J';
Para escrevermos alguma informação na tela usamos a função Write ou Writeln a diferença entre ambas é que Write escreve e mantém o cursor na mesma linha, já o Writeln escreve o coloca o cursor na linha abaixo.
Para testarmos esse comando faça o seguinte código:
Write('Meu primeiro programa!');
Observação: note que após compilar seu programa ele aparece na tela e some rapidamente. Podemos corrigir colocando o comando Readln antes do end.
Como você pode observar acima usamos o comando Write, quando a mensagem é exibida note que o cursor ficará pronto para "escrever" na mesma linha. Isso pode ser um problema se, por exemplo, colocarmos outro comando Write na seqüência.
Write('Minha primeira linha de codigo!');
Write('Minha segunda linha de codigo!');
Quando executado o programa, observe que ambas as linhas se mantêm juntas.
Para corrigirmos isso devemos mudar o primeiro Write para Writeln. Com isso ele irá escrever 'Minha primeira linha de codigo' e na seqüência irá posicionar o cursor na segunda linha para que possamos escrever 'Minha segunda linha de codigo'.
Agora veremos como escrever na tela o valor armazenado em variável.
Antes de tudo vamos declarar duas variáveis, uma chamada Nome e a outra chamada Salario. Em seguida vamos atribuir valores para as mesmas. E por ultimo usando a função Writeln vamos exibir seus valores na tela.
Nome: String; //Declara variável Nome do tipo String
Salario: Double; //Declara variável salario do tipo Double
Nome := 'Jakson'; //Atritui a palavra Jakson à variável Nome
Salario := 500.00; //Atribuir o valor de 500.00 à Variável Salario
Writeln('Meu nome e: ', Nome); //Escreve 'Meu nome é: ' e depois a variável Nome
Write('Meu salario e: ', Salario:3:2); //Escreve  'Meu salário é : ' e depois a variável Salário
Observe que após mostrarmos a variável salário, colocamos :3:2, ficando Salario:3:2. O 3 representa o número de casas antes da virgulas e o 2 são o número de casas decimais.
Usando o mesmo código agora vamos calcular o desconto de INSS (8%) sobre o salário. Para isso vamos ter que adicionar mais uma variável chamada INSS e em seguida calculá-la.
Salario, INSS: Double; //Declara a variável INSS
Nome := 'Jakson';
Salario := 500.00;
INSS := Salario * 0.08; //Atribui à variável INSS o valor do cálculo (Salario * 8%)
Writeln('Meu nome e: ', Nome);
Writeln('Meu salario e: ', Salario:3:2);
Writeln('Meu INSS e: ', INSS:3:2); //Exibe o valor da variável INSS
Para fixar melhor vamos fazer um exemplo na qual iremos realizar a soma de dois números inteiros. Para fazermos esse cálculo, vamos precisar de três variáveis: num1, num2 e soma.
num1, num2, soma: Integer; //Declara variáveis
num1 := 20; //Atribui 20 à variável num1
num2 := 60; //Atribui 60 à variável num2
soma := num1 + num2; //Soma as variáveis num1 e num 2
Writeln('A soma e: ', soma); //Exibe a variável soma
Para implementarmos um pouco mais ainda nosso programa, vamos fazer com que os valores de num1 e num2 sejam informados pelos usuário ao invés de simplesmente defini-los. Para que possamos ler os valores informados pelo usuário vamos fazer uso da função read e readln. A diferença entre read e readln é a mesma entre write e writeln.
Para ler os valores informados pelo usuário será necessário alterarmos as duas primeiras linhas de nosso programa, transformando-as em quatro linhas.
Write('Digite o número 1: ');
Write('Digite o número 2: ');
Assim, exibiremos uma mensagem solicitando ao usuário que digite o primeiro valor. Após exibir a mensagem o programa fica "esperando" que o usuário digite um número inteiro e pressione a tecla Enter. Assim que Enter for pressionada, o valor digitado pelo usuário será armazenado dentro da variável num1. Em seguida, será exibida a mensagem solicitando que o usuário digite o segundo valor e será aguardado que o número seja digitado e Enter pressionada. Na seqüência o programa se comportará de maneira semelhante ao programa anterior.
As constantes são muito parecidas com as variáveis a única diferença é que seu valor não pode ser alterado durante a execução do programa. Para criarmos constantes precisamos declará-las usando a palavras reservada Const.
Para exemplificarmos o uso de uma constante vamos desenvolver um programa que leia o nome e o salário de um funcionário em seguida calcule qual é o valor de seu desconto de INSS. Para tal programa trabalharemos como o valor do INSS sendo uma constante de 8% (0.08).
INSS: Double = 0.08; //Declara constante INSS e atribui valor para a mesma
Write('Digite seu nome: ');
write('Digite seu salario: ');
Write(Nome, ' seu desconto e de: ', Salario * INSS:3:2);
Bom, espero que esse artigo sirva para os que estão iniciando para terem um pouco mais de lógica de programação. Nos próximos dias estarem postando a continuação dos mesmos. Vou deixar um e-mail para que vocês possam entrar em contato, enviar sugestões para artigos, críticas, dúvidas etc.
A seguir alguns exercícios para os que quiserem praticar um pouco mais:
1.	Crie um programa que calcule a área de um circulo, tendo como base a fórmula Área = Raio² * PI. O valor do PI pode ser considerado como uma constante com o valor 3.14.
Crie um programa que leia 4 notas de um aluno, calcule a média e exiba a média, tendo como base a fórmula Media = (Nota1 + Nota2 + Nota3 + Nota4) / 4.
Crie um programa que faça a leitura de uma temperatura em Graus Celsius e mostre essa temperatura convertida em graus Fahrenheit, tendo como base a fórmula F = C * 1.8 + 32.
Crie um programa que leia a base e a altura de um triangulo e calcule a sua área tendo como base a fórmula: Área = base * altura / 2.
Crie um programa que leia o nome do funcionário, seu salário e o número de horas extras. O programa deve informar qual será o salário a receber dos funcionários tendo como base um desconto de INSS (8%) sobre o salário e um acréscimo de 2.19 por cada hora extra de serviço.