Baixe o app para aproveitar ainda mais
Prévia do material em texto
Noções Básicas de Programação Júlia Krüger Vieira jkvieira@inf.ufpel.edu.br Sumário 1) Palavras Reservadas. 2) Variáveis, Constantes e Formularização da dinâmica de tipos. 1.1 O que são variáveis? 1.2 O que são constantes? 1.3 Nomenclatura de variáveis e constantes. 1.4 Formularização da dinâmica de tipos. 3) Estrutura dos nossos algoritmos. 4) Declaração de variáveis. 5) Atribuição de variáveis. 6) Operações de I/O 7) Operadores O quê estudamos nas aulas teóricas? ● Estudamos a pseudo-linguagem Português Estruturado. ● Esta pseudo-linguagem representa a forma de compor algoritmos que visam solucionar instâncias de um problema. ● O que quer dizer a frase à cima? Quer dizer que, quando modelamos um algoritmo estamos estabelecendo sequências de passos para resolver vários problemas que se encaixem no mesmo padrão. Palavras Reservadas ● São palavras que terão uso específico no nosso pseudo-código e que não deverão ser usadas como identificadores (nomes das variáveis), para não causar confusão na interpretação. ● Exemplo: Algoritmo, Programa, Bloco, Procedimento, Inteiro, Real, Texto, Const, Var, Tipo, Início, Imprima, Se, Então, Senão, Enquanto, Repita, Variando, Faça, Caso, Até, Vetor, Matriz, Registro, Fim, Execute, Procedimento, Função, etc.... Variáveis, Constantes e Formularização da dinâmica de tipos. ● Agora vamos iniciar o nosso estudo referente as variáveis e constantes e os tipos de dados que podemos associar a elas. ● Associamos um tipo a um conjunto de dados para especificar com o que estamos trabalhando, por exemplo, se estamos lidando com caracteres (letras ou palavras), com dados do conjunto dos números reais, com dados do conjunto dos números inteiros ou com dados de valores lógicos. O que são variáveis? ● Variáveis são espaços na memória que armazenam dados. Estes podem ser trabalhados através do mecanismo load/store. ● Variáveis são representações de espaços na memória que armazenam dados, e estes, não são fixos, pois, os valores podem variar no decorrer do desenvolvimento do algoritmo. O que são variáveis? ● O termo variável vem da noção da volatilidade da memória e da variação dos valores quando desenvolvemos os algoritmos. ● Uma variável pode conter diferentes dados em diferentes instantes de tempo. ● Ex.: Podemos utilizar uma variável em diferentes momentos em um programa. ● Porém, uma variável tende a conter dados do tipo de sua declaração. O que são variáveis? ● As variáveis possuem um tipo associado a elas. ● Este tipo modela a classe de dado que as variáveis podem conter. Ex.: se temos que tratar números inteiros, então teremos com certeza variáveis do tipo inteiro. ● No decorrer desta aula, veremos quais são os tipos de dados disponíveis. ● Os nomes das variáveis são chamados de identificadores. O que são constantes? ● Constantes são dados armazenados na memória que não variam no decorrer do programa ou no decorrer do processamento. ● As constantes também possuem um tipo de dados associado. Já que as constantes contém dados em seu interior, necessários para algum fim, e que não variam no decorrer do tempo, ou no decorrer do desenvolvimento do algoritmo. Nomenclatura dos Identificadores ● Sempre damos o nome das variáveis ou constantes de acordo com o tipo de problema a ser modelado algoritmicamente. ● Um nome de variável ou de constante pode conter caracteres, números e caracteres especiais. ● Cada linguagem de programação possui seu limite para a nomenclatura de uma variável ou constante, ou seja, x caracteres. Nomenclatura dos Identificadores Formularização da dinâmica de tipos Bom! Temos linguagens com tipagem dinâmica e linguagens com tipagem estáticas. Formularização da dinâmica de Tipagem Dinâmica ● É quando uma linguagem de programação atribui um tipo automaticamente baseado em uma atribuição ou baseado em uma leitura de um dispositivo (Ex.: Teclado). ● Ou seja, quando a variável recebe um valor, automaticamente ela é tipada pela linguagem. ● Ex.: Python, esta é um exemplo de linguagem que possui tipagem dinâmica. Formularização da dinâmica de Tipagem Estática ● É necessário que o programador faça a tipagem durante a declaração das variáveis para que o compilador entenda, que, aquela variável que está sendo declarada modela dados daquele tipo. ● Ex.: C, é uma linguagem de tipagem estática. Fica a cargo do programador modelar os tipos aos quais as variáveis pertencem. Formularização da dinâmica Tipos existentes ● INTEIRO (“int, short int ou long int”): : qualquer número inteiro, negativo, nulo ou positivo. ● REAL (“float ou double”): qualquer número real, negativo, nulo ou positivo. ● CARACTER (“char”): qualquer conjunto de caracteres alfanuméricos. ● TEXTO OU CADEIA DE CARACTERES (“STRING”): poderá armazenar uma cadeia de caracteres de qualquer tamanho. Formularização da dinâmica Tipos existentes ● LÓGICO (“BOOLEAN”): tipo especial de variável que armazena apenas os valores V e F, onde V (1 bit ligado) representa VERDADEIRO e F (0 bit desligado) representa FALSO Estrutura dos nossos algoritmos Programa <nome_do_Programa> <declaração_de_variáveis_Globais> <declaração_de_Constantes> <declaração_de_sub-algoritmos> Algoritmo Início <declaração_de_variáveis_Locais> <corpo_do_algoritmo> Fim_Algoritmo <Corpo_do_sub-algoritmos> Declaração de variáveis ● Nada mais é que realizar a tipagem estática das nossas variáveis. ● Descreve-se a declaração de variáveis dependendo de seu escopo. ● Variáveis locais: vistas somente dentro de uma função. ● Variáveis Globais: Vistas em todo nosso algoritmo. Declaração de variáveis Forma de Declaração ● Declaramos variáveis através do comando abaixo ● Declare <Lista_de_Variáveis> <Tipo das Variáveis>; ● Onde: ● <Lista_de_Variáveis>: é uma variável ou uma lista de variáveis do mesmo tipo. Sempre separadas por vírgula. ● <Tipo das Variáveis>: é um único tipo que modela a <Lista_de_Variáveis>. Declaração de variáveis Forma de Declaração ● Ex1.: Como declarar uma variável chamada num (indica um número) do tipo inteiro. ● Declare num inteiro; ● Ex2.: Como declarar uma lista variáveis representadas por: Num1, Num2, Num3. Todas do tipo real. ● Declare Num1, Num2, Num3 real; Atribuição de variáveis ● É a operação na qual armazenamos um dado na memória, ou seja, atribuímos um valor à uma variável. ● <Nome_da_Variável>= Valor; ● Ex.: Temos uma variável chamada pi do tipo real e queremos atribuir um valor a ela. O valor é 3.14. pi=3.14 Atribuição de variáveis Atribuição de variáveis ● Uma atribuição pode ser: ● Uma atribuição de um valor. ● Ou uma atribuição de uma expressão que resulta em um valor. Operações de I/O ● As operações de entrada e saída fornecem um mecanismo para que possamos manipular ou processar os dados do usuário e imprimir uma resposta. ● Tais comandos são.: ● leia (<Lista de Variáveis>); ● escreva (<”Texto”>,< Lista de Variáveis>); ● O leia e o escreva devem estar na ordem que melhor represente a entrada e a saída dos dados. Operações de I/O ● Tais comandos são.: ● leia (<Lista de Variáveis>); ● escreva (<”Texto”>,< Lista de Variáveis>); ● Onde: 1) <Lista de Variáveis>: São as variáveis utilizadas no algoritmo. 2) <”Texto”>: texto a ser exibido na tela. Operadores ● Os operadores constituem a forma de manipulação de dados e de expressõesmatemáticas como: as lógicas e as aritméticas. ● Para uma expressão ser bem avaliada, devemos compô-la de acordo com a ordem de precedência, ou seja, qual operação será realizada primeiro. ● É comum usarmos parênteses para definir a precedência das expressões. Operadores ● A precedência dos operadores é importante para o resultado da avaliação de uma expressão. ● Ex.: 3+4*2: se somar primeiro e depois multiplicar, é igual a 14. 3+4*2: se multiplicar primeiro e depois somar, é igual a 11. ● Por isso, usamos a colocação de parênteses e a precedência para eliminar a ambiguidade. Operadores Aritméticos ● Os Operadores Aritméticos: são usados para compor expressões. + Adição menor - Subtração * Multiplicação / Divisão ** Potenciação // Radiciação maior Operadores Relacionais ● Os Operadores Relacionais: são usados para realizar operações de comparação > Maior que < Menor que >= Maior ou Igual <= Menor ou Igual == Igual <> Diferente Operadores Operadores Lógicos ● Os Operadores Lógicos: E Retorna verdadeiro se ambas as partes forem verdadeiras. OU Basta que uma parte seja verdadeira para retornar verdadeiro NÃO Inverte o estado, de verdadeiro passa para falso e vice-versa Operadores Operadores Lógicos ● Tabelas de valores dos operadores lógicos: ● Considere que A e B são expressões verificáveis.Considere que A e B são expressões verificáveis. A B A e B A ou B Não A V V V V F V F F V F F V F V V F F F F V Expressões Lógicas ● Expressões lógicas: são expressões que quando avaliadas resultam em um valor lógico (verdadeiro ou falso). ● Dispõem do conjunto dos operadores relacionais e do conjunto dos operadores lógicos para compor as expressões. ● Os operadores relacionais atuam sobre operandos numéricos mas resultam em valores lógicos. Expressões Lógicas ● Os operadores lógicos atuam sobre valores lógicos e resultam em valores lógicos. ● Ex.: Se A e B são expressões com valores V e V, então a expressão lógica A E B tem valor V. ● Ex.: Se A e B são expressões com valores V e F, então a expressão lógica A Ou B tem valor V. ● Ex.: Se A é uma expressão com valor V então a expressão lógica Não A tem valor F. Operadores: Precedência Geral Operador Precedência Operadores Aritméticos 1 Operadores Relacionais 2 Não 3 E 4 Ou 5 Forma geral dos nossos algoritmos ● Algoritmo Inicio {Declaração de variáveis} {Desenvolvimento do algoritmo} Fim_Algoritmo Forma geral dos nossos algoritmos ● Algoritmo Inicio {Declaração de variáveis} {Desenvolvimento do algoritmo} Fim_Algoritmo Exemplo de como desenvolver um algoritmo Faça um algoritmo que calcule a área do quadrado de lado b; Primeiro: necessitamos da leitura da variável b para poder calcular a área de qualquer quadrado. Então, vamos precisar da variável b. Vamos armazenar ou não essa área? Se sim, então necessitamos de uma variável área. Vamos supor que, podemos ter quadrados com lados contínuos, ou seja, números do tipo real. Assim, temos: as variáveis b e área ambas do tipo real. Exemplo de como desenvolver um algoritmo: composição Algoritmo Inicio Fim_Algoritmo Exemplo de como desenvolver um algoritmo: composição Algoritmo Inicio Declare b, area real; Fim_Algoritmo Exemplo de como desenvolver um algoritmo: composição Algoritmo Inicio Declare b, area real; escreva(“Digite o valor do lado do quadrado”); Fim_Algoritmo Exemplo de como desenvolver um algoritmo: composição Algoritmo Inicio Declare b, area real; escreva(“Digite o valor do lado do quadrado”); leia(b); Fim_Algoritmo Exemplo de como desenvolver um algoritmo: composição Algoritmo Inicio Declare b, area real; escreva(“Digite o valor do lado do quadrado”); leia(b); area= b*b; escreva(“A área do quadrado é:”, area); Fim_Algoritmo Referências ● Buffoni, Salete. Apostila de Algoritmo Estruturado. FIAA-FACULDADES INTEGRADAS ANGLO-AMERICANO CURSO DE SISTEMAS DE INFORMAÇÃO. 4 edição. 2003. ● Campani,Carlos. Algoritmos. 2006 Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 39 Slide 40 Slide 41 Slide 42 Slide 43
Compartilhar