Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Lógica de Programação, Notas de aula de Lógica Matemática

Material sobre Lógica de Programação

Tipologia: Notas de aula

2017

Compartilhado em 08/11/2017

m_douglas1607
m_douglas1607 🇧🇷

4.7

(7)

26 documentos

1 / 21

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Material Didático do Instituto Metrópole Digital - IMD
Versão 2.0 - Todos os Direitos reservados
Lógica de Programação
Aula 03 - Tipos de dados
Apresentação
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15

Pré-visualização parcial do texto

Baixe Lógica de Programação e outras Notas de aula em PDF para Lógica Matemática, somente na Docsity!

Material Didático do Instituto Metrópole Digital - IMD Versão 2.0 - Todos os Direitos reservados

Lógica de Programação

Aula 03 - Tipos de dados

Apresentação

Apresentação

Na aula anterior, você viu os conceitos referentes às três principais formas de representação de algoritmos: descrição narrativa, fluxograma e pseudocódigo. Você conheceu as principais vantagens e desvantagens de cada uma dessas formas de representação e viu exemplos de construção de algoritmos nas três formas. Ficou definido, também, que o pseudocódigo vai ser a forma mais utilizada para construir algoritmos ao longo de nossas aulas. Por fim, foram propostos alguns exercícios que são de extrema importância para a fixação do conteúdo. Dedique um tempo a eles, se ainda não o fez.

Já ao longo desta terceira aula, você aprenderá como ocorre o processo de armazenamento de dados na memória do computador, conhecerá o conceito de variáveis e constantes e a maneira de utilizá-las nos algoritmos. Irá aprender também a reconhecer os tipos de dados que podem ser utilizados, percebendo a importância de sua definição na construção dos algoritmos.

Vídeo 01 - Apresentação

Objetivos

Ao final desta aula, você deverá ser capaz de:

Descrever o processo de armazenamento de dados na memória do computador.

Definir o conceito de variável e constante, identificando as regras básicas para sua criação e utilização nos algoritmos.

Justificar a importância da definição dos tipos de dados na construção dos algoritmos.

  1. O seu amigo informa o resultado obtido.

De forma similar, o computador precisa guardar os dados e instruções em endereços específicos de sua memória, durante a execução de um algoritmo, a fim de não "esquecer‟ as informações, podendo, assim, processá-las de maneira eficaz.

Definição e utilização de variáveis

Agora você já sabe que os dados utilizados nos algoritmos são armazenados na memória do computador para serem posteriormente acessados.

Mas de que forma conseguimos acessar esses dados?

Para acessá-los, precisamos descobrir em que posição na memória do computador eles estão armazenados. O conceito de variável foi criado para facilitar essa busca.

Vamos compreender de que forma isso funciona?

Imagine um grande arquivo com várias gavetas. Para conseguirmos acessar o conteúdo dessas gavetas, é importante que o armazenamento seja feito de maneira organizada, de forma que possamos encontrar facilmente o que procuramos. Para isso, seria interessante identificar as gavetas com nomes e/ou números. Cada gaveta identificada representa, dessa forma, o endereço do conteúdo que ela armazena. Observe a Figura

Na Figura 1, está representado um arquivo com 15 gavetas que podem armazenar os documentos de diferentes pessoas. Veja que as gavetas estão numeradas e cada gaveta só armazena um documento por vez. Cada número corresponde ao "endereço‟ da gaveta. Algumas delas estão, também, marcadas com nomes de pessoas. Essas são as que estão reservadas.

Por exemplo, a gaveta de número 01 está reservada para armazenar um documento de Maria. Ninguém além de Maria poderá colocar seus documentos na gaveta 01. Veja que tem gavetas reservadas também para João, Sílvia, Francisco e José. E há gavetas que não foram reservadas, ou seja, estão livres para serem reservadas quando necessário (essas gavetas, porém, só podem ser utilizadas se forem previamente reservadas). Dessa forma, se perguntarmos a Maria onde ela guarda os seus documentos, ela responderá: "na gaveta 01 do arquivo". É o "endereço‟ dos documentos dela.

O endereço ao qual nos referimos, em algoritmos, corresponde a uma posição na memória do computador. A essa posição na memória do computador damos o nome de variável.

Figura 1 - Arquivo de gavetas representando espaços reservados na memória de um computador

Veja, nos exemplos, que declaramos as variáveis "vazias", isto é, sem informações associadas a elas (para que, então, forneçamos essas informações posteriormente, no corpo do algoritmo). Lembre-se do exemplo das gavetas. Para reservar uma gaveta para uma pessoa, não era necessário armazenar o conteúdo, de imediato, na gaveta. Igualmente, só é possível armazenar conteúdo em uma gaveta que já foi previamente reservada. Ou seja, primeiro deve-se reservar uma gaveta e depois armazenar seu conteúdo.

Veja, também, no exemplo V, que duas ou mais variáveis de um mesmo tipo podem ser declaradas juntas, na mesma linha, separadas por vírgula (lista de variáveis).

Uma variável pode assumir valores diferentes, mas só pode armazenar um valor a cada instante. Além disso, o seu conteúdo pode mudar ao longo do tempo na execução do algoritmo.

Existem algumas regras básicas para a definição dos nomes (identificadores) das variáveis. Vamos conhecê-las.

  1. Podem-se utilizar números e letras maiúsculas ou minúsculas.
  2. Não se deve utilizar caracteres especiais, à exceção do caractere sublinhado, ouunderline ( _ ).
  3. O primeiro caractere deve ser sempre letra ou sublinhado, mas nunca um número.
  4. Não deve utilizar acentos gráficos, til ou cedilha.
  5. Além dos símbolos, não é permitido espaço em branco.
  6. Não se devem utilizar as palavras reservadas da linguagem (observe a Figura 2).

O termo inicio, no VisuAlg (Figura 2), é utilizado para começar o algoritmo. Ao tentar identificar uma variável com o nome inicio, a resposta do programa é o encerramento da execução e a linha em que está o erro é realçada em vermelho.

Vídeo 03 - Variáveis

Vejamos alguns exemplos de acertos e erros na identificação de variáveis:

Identificadores válidos:

a. nome

b. ano_de_nascimento c. salario

d. notaAluno e. qtd_dias

Identificadores inválidos:

  1. 1nome – não deve começar por número.
  2. Ano de nascimento – não deve ter espaço em branco.

Figura 2 - Comportamento do VisuAlg durante a tentativa de nomear uma variável com uma palavra reservada

No VisuAlg, temos constantes numéricas, caracteres e lógicos.

São exemplos de constantes numéricas:

a. 15

b. 250 c. 38.

Exemplos de constantes caracteres ou literais:

a. "F" b. "Maria"

c. "Avenida São José"

Exemplos de constantes lógicos:

a. Verdadeiro b. Falso

Ao atribuir valores às variáveis, podemos utilizar outras variáveis, expressões ou constantes. Veja:

Var

a : inteiro

b : inteiro

c : inteiro

d : lógico

f : literal

Inicio

a <- 2 //atribuição de constante

b <- a + 1 //atribuição de expressão

c <- b //atribuição de variável

d <- falso //atribuição de constante

f <- "Teste" //atribuição de constante

fimalgoritmo

Atividade 01

Esta atividade vai ajudá-lo a fixar o que foi estudado nesta primeira parte da aula. Com base na nossa aula, responda às questões a seguir.

  1. Qual a importância da utilização das variáveis na criação de um algoritmo?
  2. Por que é importante declarar uma variável antes de utilizá-la?
  3. Por que o identificador de uma variável deve ser único?
  4. Explique os problemas nos identificadores a seguir, sugerindo, em seguida, uma alternativa válida para cada um:

a. %unidades b. anos sem aumento

c. ah!

d. Notadoaluno e. Real

f. Numero_de_vezes_que_fui_ao_shopping_hoje

  1. Explique com suas palavras o que é uma constante.

Tipos de dados

Vamos relembrar o exemplo do arquivo (Figura 1). Vimos que cada gaveta tem um determinado conteúdo. Para que possamos acessar esse conteúdo, a gaveta precisa estar identificada com um "endereço‟

Em algoritmos, os números inteiros são utilizados geralmente para expressar valores, como quantidade ou idade.

Observe o exemplo a seguir:

ALGORITMO QUE CALCULA A IDADE DE UMA PESSOA, DADO O ANO ATUAL E O ANO EM QUE ELA NASCEU.

algoritmo "calcula idade"

var

ano_atual : inteiro

ano : inteiro

idade_hoje : inteiro

inicio

ano_atual <- 2015

leia(ano)

idade_hoje <- ano_atual - ano

escreva(idade_hoje)

fimalgoritmo

Os dados de entrada nesse algoritmo são o ano atual e o ano de nascimento digitado pelo usuário ("ano‟). O dado de saída é a idade atual do usuário ("idade_hoje‟). Todos os dados nesse algoritmo são numéricos do tipo inteiro. Vamos analisar o código em detalhes.

Na primeira linha do algoritmo, temos:

algoritmo "calcula idade"

Nessa primeira linha, estamos nomeando o algoritmo. Veja que o nome do algoritmo está entre aspas duplas.

Na segunda linha do algoritmo, o termo var indica o campo onde ficarão as declarações das variáveis. Nas linhas 3, 4 e 5, as variáveis são declaradas. Veja:

Linha 2 - var

Linha 3 - ano_atual : inteiro

Linha 4 - ano : inteiro

Linha 5 - idade_hoje : inteiro

No VisuAlg (Figura 3), a declaração das variáveis é feita fora do bloco de execução dos algoritmos. O bloco de execução tem seu início em seguida, na linha 6, indicado pela palavra reservada inicio, e é finalizado com a palavra reservada fimalgoritmo.

Na primeira linha do bloco de execução, temos a seguinte instrução:

ano_atual <- 2015

Figura 3 - Exemplo de algoritmo no VisuAlg

Atividade 02

Agora que analisamos todo o algoritmo do cálculo da idade, copie o código para o editor de textos do VisuAlg e faça a execução passo a passo, para visualizar, na prática, o que acabou de ser explicado.

Números reais

Os números reais são os números positivos ou negativos que englobam números decimais ou fracionários. Ex.: 15, -487, 1.78, 0.254, 27835, 100, 8.50.

São também chamados de pontos flutuantes, nas linguagens de programação. Valores reais são aplicáveis em algoritmos que manipulam dados que expressam valores fracionários, como salário, média, preço, porcentagem, entre outros.

O algoritmo da média, que vimos nas duas primeiras aulas, utiliza dados numéricos reais. Observe:

ALGORITMO QUE CALCULA A MÉDIA DO ALUNO

algoritmo "calcula média"

var

nota1 : real

nota2 : real

nota3 : real

inicio

leia(nota1)

leia(nota2)

media <- (nota1 + nota2)/

escreva (media)

fimalgoritmo

Note que os dados de entrada (as notas do aluno) e o dado de saída (a média) são do tipo real, pois a nota de um aluno pode assumir valores fracionários, como 8.5 ou 5.2, por exemplo.

Obs.: As casas decimais, nos números reais, devem ser separadas por ponto (.) e não por vírgula (,). Por exemplo: use "8.5" e não "8,5".

Vídeo 05 - Tipos de Dados Lógicos

Atividade 03

  1. Tente fazer, no exemplo do cálculo da média, a análise de código que fizemos no exemplo do cálculo da idade, examinando cada linha do algoritmo e reconhecendo as declarações de variáveis e os comandos. Execute, em seguida, o passo a passo no VisuAlg.

Dados literais

Os dados literais são formados por um único caractere ou uma sequência de caracteres, que podem ser letras (maiúsculas ou minúsculas), números ou símbolos especiais (como #, $, @, ?, &, entre outros). Os números, quando representados como caracteres, não podem ser utilizados para cálculos. Uma sequência de caracteres pode ser chamada também de cadeia de caracteres oustring.

Exemplos de dados literais: "Fone: 3222-2222", "Av. Senador Salgado Filho, Nº 1550", "João Silveira", "M", "152", "CEP: 59052-250", "F".

Nos nossos algoritmos, representaremos todos os dados literais sempre entre aspas duplas, sejam eles caracteres isolados oustrings, pois essa é a convenção utilizada no VisuAlg.

Execute, também, esses dois códigos no VisuAlg (salve em arquivos separados).

Dados lógicos

Os dados lógicos são também chamados debooleanos, por ter sua origem na álgebrabooleana. Os valores que esses tipos de dados podem assumir sãoVerdadeiro ouFalso, podendo representar apenas um desses dois valores.

Um exemplo simples:

algoritmo "logicos"

var

igualdade : logico

inicio

igualdade <- 10 = 12

escreva(igualdade)

fimalgoritmo

Veja que utilizamos a notaçãologico para representar o dado lógico. Sabemos que 10 não é igual a 12. Logo, a saída para esse algoritmo será "FALSO".

Cole o código no editor de textos do VisuAlg e execute. Veja a saída, no simulador de saída. Agora, no lugar do número 12, coloque o número 10 (de forma que fique "10=10") e execute novamente. Observe a nova saída no simulador de saída.

Resumo

Nesta aula, você viu o processo de armazenamento de dados na memória do computador. Você aprendeu o conceito de variáveis e as regras para a sua declaração e utilização. Viu também a importância da

definição de tipos de dados, identificando os tipos existentes para a construção de algoritmos.

Autoavaliação

  1. Explique, com suas palavras, o processo de armazenamento de dados na memória de um computador.
  2. Defina o conceito de variável e explique o procedimento para a declaração de uma variável. Cite pelo menos três exemplos que demonstrem esse procedimento.
  3. Defina o conceito de constante e cite exemplos de atribuição de valores constantes às variáveis.
  4. Responda às questões a seguir.
    1. Quais as palavras reservadas do VisuAlg para os tipos de dados que estudamos nesta aula?
    2. Qual é o único símbolo permitido no identificador de uma variável?
    3. Por que os algoritmos lidam com diferentes tipos de dados?
    4. Quais são os tipos de dados manipulados pelos algoritmos? Cite exemplos de cada um deles.
  5. Declare as variáveis dos problemas listados a seguir.
    1. Faça um algoritmo que, dado o valor da conta de uma refeição realizada em um restaurante, acrescente os 10% do garçom e exiba o valor total da conta.
    2. Escreva um algoritmo que, dados o valor unitário da mercadoria e a quantidade comprada, exiba o valor total a ser pago.
    3. Escreva um algoritmo que, dado um número, exiba o seu antecessor.
    4. Escreva um algoritmo que, dados dois números, retorne se eles são iguais.