Escolar Documentos
Profissional Documentos
Cultura Documentos
Tipos de Dados
- Se for armazenar número inteiro que terão que ser somente números positivos, utilizar o tipo
de dados inteiro = Word ou Cardinal (65535).
Operadores de Atribuição
- MOD Exemplo: 10/3 vai ser igual a 1. Pois 10/3 dá 3 e sobra 1, ou seja o MOD exibe o resto da
divisão.
Operadores Booleanos
--
- Na condição And, pode se utilizar o exemplo: Se você vai a uma festa onde você tem que
levar os seus documentos e ser maior de 18 anos. Estas 2 condições tem de ser verdadeiras
para entrar. Não adianta Levar os documentos e não ser maior de 18.
Operadores Relacionais
Comandos de Sequencia
Comando For Do
- A grande diferença do comando For para o comando While e o Repeat é que estes 2
dependem de uma condição para ser executados. Já no comando For independe da
condição.
- O Componente edit2 com a propriedade text vai receber o conteúdo da propriedade text
do edit1.
Para que some os 2 valores eu vou precisa converter os valores para inteiro.
- Foram acrescentados 7 Edits, e foi alterada a propriedade name de todos eles para edtA,
edtB, edtC, edtDelta, edtX1, edtX2 e edtResult.
d) Se Delta for igual a 0, exibir “Duas Raizes iguais e reais”, senão, exibir “Não existe
raízes reais.
Exercício Tabuada
Para a tabuada foi inserido em um novo form os componentes Memo, Label, Edit e Button.
Quando você clica no objeto Memo na tela e vai na paleta de propriedades dele, existe um
campo Lines, lá você pode adicionar ou eliminar texto dentro desta Janela.
Limpamos todo o conteúdo do Memo, senão ele sempre ira imprimir após o último texto
dentro dele.
Criamos um For que diz, para “i” recebe de 1 até 10 e faça: Adiciona linhas dentro do memo1,
exibindo o conteúdo do edit1, que é o número que você vai digitar, imprime na tela o “X” e
converte o Inteiro para String que tiver dentro da variável “i”.
No exemplo abaixo é digitado 5 e clicado no botão Button e ele imprime:
Lembrando que strtoint(edit1.text) é preciso converter este texto em número para multiplicar
por “i” que é inteiro, pois não é possível multiplicar texto por número.
É preciso converter o inteiro em string para inserir dentro de um memo, pois o memo somente
aceita String. Por isso o exemplo:
Primeiro ele vai pegar o edit1.text e transformar em inteiro, após vai multiplicar por “i” e o
valor que der ele vai converter novamente para String para por fim ser exibido dentro do
memo.
Por fim, pode-se tirar o Begin e o End do For, já que somente tem 1 instrução:
O “i” é igual a 1.
Em seguida ele vai repetir toda a linha de comando até “i” for igual a 11.
- No exercício de Cadastro de Notas, foi inserido na linha de código o comando “with aluno
do”, isso faz com que você não precise cada vez especificar a palavra aluno.cod, e assim por
diante nas suas linhas de programação, tudo isso server pra “enxugar” o código fonte.
- Também foi utilizado o comando val(), ele transforma um valor string em inteiro e retorna
um código, se esse código for igual a 0 é porque deu tudo certo. Senão, significa que algum
erro ocorreu durante a conversão. Neste exemplo: val(edit2.text, nota01,cod) ele vai pegar o
valor digitado dentro de Edit2 convertê-lo em inteiro e cadastrar dentro da variável Nota01 e
retorna o Cod.
- No exercício 2, ao invés de utilizar nota1, nota2, nota3, nota4 do tipo real, foi criada uma
array Bimestre do tipo real com valores de 1 à 4. Ex: bimestre array [1..4] of real.
- No exercício anterior foi criado abaixo de Public um comando chamado published, isso faz
com que aquele procedimento passe a ser visualizado no object inspector, no evento OnClick
por exemplo:
- A diferença entre procedimento e função é que no procedimento você não retorna nenhum
valor, ele pode modificar propriedades, modificar valores mas de forma alguma retorna um
valor, já na função ela também pode modificar propriedades de componentes, valores, mas ela
obrigatoriamente tem que retornar um valor.
- Toda vez que você declarar uma função você tem que informar o result.
Procedimento Exit
Procedimento STR
Exemplo:
Neste exemplo podemos ver o erro que ocorreu pelo fato de eu criar uma variável x do tipo
inteira, dizer que x é igual a 10 e tentei colocar este valor dentro do edit1, não consigo porque
o X é inteiro e o Edit1 é String(texto). Por isso temos que converter com o str.
Str(x,a) significa que o x é o primeiro parâmetro que eu quero converter e o “a” é a variável
que vai receber o valor convertido.
Função POS
A Função POS percorre uma string e retorna para nós a posição da primeira ocorrência do
conjunto de caracteres que passamos como parâmetro. Se ele encontrar ele retorna para nós
a posição, se ele não encontrar ele retorna “0”.
Exemplo:
Informei uma variável a do tipo inteira e disse que ela recebe o POS, procurando o que eu
digitar no Edit2 dentro do edit1. Se o que ele encontrar for maior que “0”então ele exibe a
localização de “a” convertido pra string pois vai ser exibido dentro do edit, senão, ele diz que
não foi encontrado.
Função DELETE
Deleta uma quantidade de caracteres a partir de uma posição que foi determinada e de um
tamanho que foi passado como parâmetro.
Onde, delete é o comando, “texto” é de onde ele vai excluir, “1” é a partir de que posição ele
vai começar a excluir e “3” é a quantidade de caracteres a ser excluído. Não pode ser delegado
dentro do delete o componente como edit1.text, é preciso criar uma variável do tipo string,
como no exemplo chamada “texto” e dizer que “texto:= edit1.text”.
Vai ficar assim:
Neste próximo exemplo foram utilizadas variáveis para o número “1” de posição inicial e “5”
ou “3” de qtdade de caracteres a serem excluídos. São as variáveis Inicio e Tam. Assim
informamos os números que quisermos e ele deletará.
E fica assim:
Função Insert
O Procedimento Insert insere uma substring dentro de um texto ou um novo texto a partir de
uma posição inicial determinada pelo usuário. Neste exemplo foi utilizada a variável “i” para
ficar mais dinâmico.
A sintaxe do comando é: insert é o comando edit2.text é o texto que vai ser introduzido,
“texto” é onde ele vai ser armazenado e “i” é a partir de que posição ele vai ser dicionado.
Ficando assim:
Função TRIM
Como neste exemplo temos uma função dentro de outra, e o Delphi executa de dentro para
fora: showmessage(inttostr(lenght(trim(edit1.text)))):
Primeiro ele elimina os espaços em branco, depois ele conta e finalmente ele converte.
Utilizando 2 botões, no primeiro ele conta inclusive os espaços em branco, já o segundo
elimina todos os espaços em branco com o TRIM. Ficando assim:
Existe o derivado Left e Right que corta somente espaços a esquerda ou direita.
Função LowerCase
Converte todos os caracteres em Minúsculo.
Exemplo:
Função Uppercase
Converte todos os caracteres e Maiúsculo.
Função StrToIntDef
Esta função também converte um texto em inteiro, a diferença é que se ela encontrar um
caracter fora do conjunto ASCII válidos, então ela retorna o caracter que foi passado como
parâmetro.
Neste Exemplo estamos definindo que se ele não conseguir converter o edit1.text em inteiro
retornará “0” e se for igual a “0” então exibe a mensagem que não pode ser convertido:
Desta forma não foi convertido pois não é possível converter string para string:
Função Format
Com a função format podemos converter valores e coloca-los em um formato padrão.
O Format começa sempre entre aspas com o %, o [“-”] significa o ajuste a esquerda, [largura]
especifica a largura opcional, o tipo é obrigatório.
Exemplo: edit1.Text:= format(‘%6.6d’,[1234]): vou pegar o valor 1234 e formatar este valor
para o Edit1. o “d” significa decimal. O segundo 6 significa a precisão. Se o formato de string
contém uma precisão especificada indica que o texto resultante deve conter no mínimo o
número especificador de dígitos. Se o valor tiver menos dígitos, o texto especificado é
complementado com “0”. Então neste exemplo você pode utilizar zeros para complementar à
esquerda.
Ficando assim:
edit1.Text:= format(‘%6.6d’,[strtoint(edit1.text)])
Ficando assim:
Digitei 15000, mas como coloquei o valor de precisão de 6, fica 015000. Se eu colocar no edit1
o valor 2, o edit2 exibirá 000002.
Aula 17