22
ALGORITMOS VARIÁVEIS E OPERADORES Prof. Angelo Augusto Frozza, M.Sc. [email protected]

ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

  • Upload
    ngomien

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

ALGORITMOSVARIÁVEIS E OPERADORESProf. Angelo Augusto Frozza, [email protected]

Page 2: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

ESTRUTURA DE UM ALGORITMO VISUALG

Algoritmo Exemplovar

valor_a, valor_b, valor_c : inteirosoma : inteiromedia : real

InícioLeia valor_a, valor_b, valor_csoma ← valor_a + valor_b + valor_cmedia ← Soma / 3Escreva Media

FimAlgoritmo

Page 3: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

ESTRUTURA DE UM PROGRAMA PASCAL

program Exemplo;uses

xxxx;

constxxxx;

varvalor_a, valor_b, valor_c, soma : integer;media: real;

beginreadln (valor_a, valor_b, valor_c);soma := valor_a + valor_b + valor_c;media := soma / 3;writeln (media);

end.

Page 4: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

TIPOS DE DADOSSão os valores que uma determinada variável está apta a receber. Em outras palavras, o tipo determina a natureza do dado.

Real (somente valores reais)12.45

Inteiro (valores pertencentes ao conjunto dos inteiros)12

Cadeia de Caracteres ou String (valores envolvidos por “ “)“este é um exemplo de string”

Caracter (único valor envolvido por “ “)“a”

Lógico (também chamados de booleanos)verdadeirofalso

Page 5: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

TIPOS DE DADOS

VisuAlg Pascal Valor Mínimo Valor Máximo Tamanho

(bytes)inteiro shortint -128 127 1

byte 0 255 1word 0 65535 2smallint -32768 32767 2integer -2147483648 2.147.483.647 4longint -2147483648 2.147.483.647 4cardinal 0 4.294.967.295 4

Page 6: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

TIPOS DE DADOS

VisuAlg Pascal Valor

MínimoValor

MáximoTamanho (bytes)

Dígitossignificativ

osreal real -5.0 x 10324 1.7 x 10308 8 11-12

single -1.5 x 1045 3.4 x 1038 4 7-8double -5.0 x 10324 1.7 x 10308 8 15-16extended -3.6 x 104951 1.1 x 104932 10 19-20

* comp -263 + 1 263 - 1 8 19-20currency -922.337.203.685,477.5808 922.337.203.685,477.5808

Page 7: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

TIPOS DE DADOS

VisuAlg Pascal Exemplo Tamanho (bytes)

caractere char ‘A’, ‘B’ 1* string ‘Técnico em

informática’de 2 até 256

shortstring 255 caracteres de 2 até 256ansistring Aproximadamente 231

caracteresde 4 bytes até

4GBwidestring Aproximadamente 230

caracteresde 4 bytes até 4

GB

*Pode-se limitar o tamanho de um campo usando, por exemplo, string[10].

Page 8: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

TIPOS DE DADOS

VisuAlg Pascal Exemplo Tamanho (bytes)

lógico boolean TRUE (1), FALSE (0) 1

Page 9: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES

Aritméticos

Relacionais

Lógicos

de Caracteres

Page 10: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES ARITMÉTICOS

\

Prioridade:Executa 1º.: * / DIV MODExecuta 2º.: + -Da esquerda para a direitaParênteses do mais interno ao mais externo

TradicionaisOperador

Operação Operandos Resultado Exemplo

+ Adição Inteiro, Real Inteiro, Real 1 + 1 = 2- Subtração Inteiro, Real Inteiro, Real 2 - 1 = 1* Multiplicação Inteiro, Real Inteiro, Real 2 * 2 = 4/ Divisão (real) Inteiro, Real Real 4 / 2 = 2

DIV Divisão inteira Inteiro Inteiro 5 DIV 2 = 2MOD Resto da divisão Inteiro Inteiro 5 MOD 2 = 1

Page 11: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES ARITMÉTICOS

Unários:+ ex. +1- ex. -1

Page 12: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES ARITMÉTICOS

Funções e procedimentos numéricos pré-definidosFunção Finalidade Tipo do argumento Tipo do resultadoABS(x) Valor absoluto Inteiro, Real Igual ao do argumento

FRAC(x) Parte fracionária

Real Real

TRUNC(x) Parte inteira Real InteiroROUND(x) Valor

arredondadoReal Inteiro

SQR(x) Eleva ao quadrado Inteiro, Real Igual ao do argumento

SQRT(x) Raiz quadrada Inteiro, Real RealLN(x) Logaritmo

naturalReal Real

EXP(x) Exponencial Real Real

Page 13: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES ARITMÉTICOS

Funções e procedimentos numéricos pré-definidos

Expressão ResultadoABS(-2.5) 2.5ABS(8) 8FRAC(5.234) 0.234TRUNC(2.78) 2ROUND(2.78) 3

SQR(2) 4SQR(1.5) 2.25SQRT(4) 2.0SQRT(2.25) 1.5

EXP(LN(2) * 3)(Potência 23) 8** ** Uses Math;

...power (2.0,3.0)ouintPower(2,3)

Page 14: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES RELACIONAIS

= (igual) ex. 3 = 3 (verdadeiro)

< (menor) ex. 3 < 3 (falso)> (maior) ex. 2 > 3 (falso)

“A” > “B” (verdadeiro)

>= (maior ou igual) ex. 3 >= 2 (verdadeiro)<= (menor ou igual) ex. 2 <= 3 (verdadeiro)

<> (diferente) ex. 2 <> 3 (verdadeiro)

Page 15: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES RELACIONAIS

Expressão Resultado1 = 2 FALSE

‘A’ = ‘a’ FALSE5 > 2 TRUE

3 <= 3 TRUETRUE < FALSE FALSE‘JOAO’ > ‘JOSE’ FALSE

2 + 3 <> 5 FALSE‘comp’ <> ‘COMP’ TRUE

‘11’ < ‘4’ TRUE

Page 16: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES LÓGICOS

Operador Operaçãonot não (negação)and e (conjunção)or ou (disjunção)

A B A and B A or B not A not BTRUE TRUE TRUE TRUE FALSE FALSETRUE FALSE FALSE TRUE FALSE TRUEFALSE TRUE FALSE TRUE TRUE FALSEFALSE FALSE FALSE FALSE TRUE TRUE

Prioridade Operadores1ª NOT2ª AND3ª OR4ª = > < >= <= <>

Exemplo: ( A > B ) OR ( B = C )

Page 17: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

OPERADORES DE CARACTERESConcatenação:

+ex. “Rio ” + “de ” + “Janeiro” =

“Rio de Janeiro”

“Nome” + “ “ + “Sobrenome”“João” + “ ” + “da Silva” = “João da Silva”

Page 18: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

VARIÁVEIS E CONSTANTES

Definição: Espaço de memória para armazenar um dado. Possui um nome e um tipo (de dado).

Variáveis:Valores podem mudar;

Constantes:Valores nunca mudam;

Page 19: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

DECLARAÇÃO DE VARIÁVEIS

Exemplo:

var

idade : integer;

nome: string;preco : real;salario : currency;

sexo : char;

opcao : boolean;cpf : string;

Page 20: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

DECLARAÇÃO DE CONSTANTESExemplos:

constPI = 3.1415;BRANCO = ‘ ’;OK = TRUE;VALOR_A = 3;EMPRESA = ‘Cia do Computador’;SINALIZADOR = FALSE;

Page 21: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

COMANDOS BÁSICOS

Leituraread (variavel);readln (variavel);read (variavel, variavel);readln (variavel, variavel);

Atribuiçãovariavel_a := expressao;

Escritawrite (variavel);writeln (variavel);

Page 22: ALGORITMOS VARIÁVEIS E OPERADORES - ifc-camboriu.edu.brfrozza/2012.1/IA12/IA12-Algoritmos-Aula002... · ESTRUTURA DE UM ALGORITMO VISUALG Algoritmo Exemplo var valor_a, valor_b,

FERRAMENTA DE DESENVOLVIMENTO

Lazarus

http://wiki.lazarus.freepascal.org/Main_Page/pt

http://lazarus.codigolivre.org.br/

Opcionalmente pode-se também usar o ambiente Delphi ou outra ferramenta que suporte Pascalou Object Pascal.