Aula 02 - Introdução a Lógica de Programação
Conteúdo
- Programação / Lógica de Programação / Algoritmo
- Método para a construção de algoritmos
- Tipo de Algoritmos
- Exemplo Narrativa
- Exemplo Fluxograma
- Exemplo PseudoCódigo (Portugol)
- Estrutura do Algoritmo
- O Software Visualg
- Tipo básico de dados - Primitivos]
- Inteiro
- Real
- Caracter
- Lógico
- Constantes
- Variáveis
- Formação de Identificadores
- Declaração e Atribuição
- Operadores Aritméticos e Relacionais
- Operadores Lógicos
- Tabela Verdade
- Comandos de Entrada e Saída
- Blocos de Comandos
- Prática
1 - Conceitos iniciais
O que é programação?
Podemos definir programação como o ato de escrever instruções para que máquinas executem uma determinada função ou várias funções encadeadas. Ou seja, a partir de um conjunto de códigos, as pessoas se comunicam com os computadores e os configuram para a execução de alguma tarefa específica.
Lógica de programação
A lógica de programação se trata de uma metodologia utilizada para resolver problemas. A partir dela, podemos identificar e criar uma sequência organizada de passos, que vão resultar em uma ação. A essas instruções damos o nome de algoritmo.
Algoritmo
A ideia de algoritmo é estrutural para o que entendemos o que é programação e como se programa. Trata-se de uma sequência de passos para atingir um objetivo, como se fosse uma receita estipulando todas as etapas para cozinhar algo por exemplo.
2 - Método para a construção de algoritmos
- Compreender completamente o problema a ser resolvido, destacando os pontos mais importantes e os objetos que o compõem;
- Definir os dados de entrada, ou seja, quais dados serão fornecidos e quais objetos fazem parte desse cenário-problemas;
- Definir o processamento, ou seja, quais cálculos serão efetuados e quais as restrições para esses cálculos. O processamento é responsável pela transformação dos dados de entrada em dados de saída;
- Definir os dados de saída, ou seja, quais dados serão gerados depois do processamento;
- Construir o algoritmo utilizando um dos tipos descritos na próxima seção;
- Testar o algoritmo realizando simulações.
3 - Tipos de Algoritmos
Existem três tipos de algoritmos mais utilizados:
1- Descrição narrativa: Consiste em escrever, utilizando uma linguagem natural (por exemplo, a língua portuguesa), os passos a serem seguidos para sua resolução;
2 - Fluxograma: Consiste em utilizar símbolos gráficos pré-definidos, aos quais os passos sejam seguidos para resolução do problema;
3 -Pseudocódigo ou Portugol: Consiste em escrever por meio de regras predefinidas, os passos a serem seguidos para sua resolução.
Exemplos – Algoritmo tipo narrativa
Faça um algoritmo para mostrar o resultado da multiplicação de dois números.
Algoritmo_mulplicacao
Passo 1 – receber os dois números que serão multiplicados.
Passo 2 – Multiplicar os números.
Passo 3 – Mostrar o resultado obtido na multiplicação.
Fim_algortimo
Exemplos – Pseudocódigo (Portugol)
Algoritmo "semnome"
// Disciplina : [Linguagem e Lógica de Programação]
// Professor : Antonio Carlos Nicolodi
// Descrição : Aqui você descreve o que o programa faz! (função)
// Autor(a) : Nome do(a) aluno(a)
// Data atual : 18/02/2025
Var
// Seção de Declarações das variáveis
n1, n2, m: inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreva("Digite dois números")
leia(n1)
leia(n2)
m:= n1 * n2
escreva("O resultado é =",m)
Fimalgoritmo
4 - Estrutura do Algoritmo
INICIO → DECLARAÇÃO DE VARIÁVEIS → SEÇÃO DE COMANDOS → FIM
Recapitulando algoritmo é uma sequência finita e ordenada de passos (regras), com esquema de processamento que permite a realização de uma tarefa (resolução de problemas, cálculos e etc.)
Algoritmo "semnome" (Seção 1 - Identificação do algoritmo, título,
descrição de suas funções, autor e ata de criação)
// Disciplina : [Lógica de Programação]
// Professor : Mauro Borges França
// Descrição : Aqui você descreve o que o programa faz! (função)
// Autor(a) : Nome do(a) aluno(a)
// Data atual : 19/02/2025
Var (Seção 2 - Declaração de todas as variáveis)
// Seção de Declarações das variáveis
Inicio (Seção 3 - Comandos de entrada, processamento e saída de dados)
// Seção de Comandos, procedimento, funções, operadores, etc...
Fimalgoritmo
5 - O Software Visualg
O VisuAlg é um aplicativo para Windows que permite editar, interpretar e executar algoritmos em uma linguagem semelhante ao português estruturado, facilitando o aprendizado da lógica de programação.
Essa ferramenta é ideal para quem deseja desenvolver habilidades na elaboração de algoritmos, pois utiliza uma linguagem simples e intuitiva, inspirada no Portugol, amplamente adotado no meio acadêmico e presente nos principais livros didáticos. Além disso, o VisuAlg oferece uma experiência semelhante à de editores de código utilizados em linguagens de programação tradicionais, tornando-se um excelente recurso para quem está iniciando na programação estruturada.
Site oficial do VisuAlg → http://visualg3.com.br/
6 - Tipos básico de dados - Primitivos
Inteiro: toda e qualquer informação numérica que pertença ao conjunto dos números inteiros relativos (negativa, nula ou positiva).
Exemplos:
- a. Ele tem 3 irmãos.
- b. A escada possui 8 degraus.
- c. Meu vizinho adotou 2 cães.
Real: toda e qualquer informação numérica que pertença ao conjunto dos números reais (negativa, nula ou positiva).
Exemplos:
- a. Ela tem 1,73 metro de altura.
- b. Meu saldo bancário é de R$ 215,20.
- c. No momento estou pesando 82,5 kg.
Caracter: toda e qualquer informação composta de um conjunto de caracteres alfanuméricos: numéricos (0...9), alfabéticos (A...Z, a...z) e especiais (por exemplo, #, ?, !, @).
Exemplos:
- a. Constava na prova: "Use somente caneta!".
- b. O parque municipal estava repleto de placas: "Não pise na grama".
- c. O nome do vencedor é “Felisberto Laranjeira”.
Lógico: toda e qualquer informação que pode assumir apenas duas situações (biestável).
Exemplos:
- a. A porta pode estar aberta ou fechada.
- b. A lâmpada pode estar ligada ou desligada.
7 - Constantes
Entendemos que um dado é constante quando não sofre nenhuma variação no decorrer do tempo, ou seja, seu valor é constante desde o início até o fim da execução do algoritmo, assim como é constante para execuções diferentes no tempo.
Exemplos: 5, "Não fume", 2527, –0,58, V, F
8 - Variável
Um dado é classificado como variável quando tem a possibilidade de ser alterado em algum instante no decorrer do tempo, ou seja, durante a execução do algoritmo em que é utilizado, o valor do dado sofre alteração ou o dado é dependente da execução em um certo momento ou circunstância.
Exemplos: A cotação do dólar, o peso de uma pessoa, o índice mensal da inflação.
9 - Formação de Identificadores
Os identificadores são os nomes das variáveis, dos programas, das constantes, das rotinas, das unidades etc. Existem algumas regras a cumprir:
- Devem começar por um caractere alfabético.
- Podem ser seguidos por mais caracteres alfabéticos ou numéricos.
- Não devem ser usados caracteres especiais💡
Exemplos:
a. Identificadores válidos:
Alpha, X, BJ153, K7, Notas, Média, ABC, INSS, FGTS, IGPM.
b. Identificadores inválidos:
5X, E(13), A:B, X-Y, Nota/2, AWQ*, P&AA, IGP-M.
10 - Declaração e atribuição
Declarando variáveis – Se escreve o nome da variável, seguindo por dois pontos e o tipo, exemplo:
nome: caracter
Idade: inteiro
nota: real
peso: real
Atribuindo valores a variáveis – escreve o nome da variável declarada com o símbolo “<-” seguindo do conteúdo a ser atribuído. Exemplo:
nome <- “Vagner”
idade <- 18
nota <- 93,5
peso <- 71,63
11 - Operadores Aritméticos e Relacionais
Aritméticos – O resultado da avaliação é do tipo numérico: inteiro ou real.
Operação | Operador |
---|---|
Soma | + |
Subtração | - |
Multiplicação | * |
Divisão | / |
Divisão Inteira | div |
Resto | % |
Exponenciação real | ** |
Exponenciação inteiro | ^ |
Relacionais – Comparação realizada entre dois valores do mesmo tipo básico.
Operação | Operador |
---|---|
Igual a | == |
Diferente de | <> |
Maior que | > |
Menor que | < |
Maior ou igual a | >= |
Menor ou igual a | <= |
12 - Operadores Lógicos
Utilizaremos três operadores básicos para a formação de novas proposições lógicas compostas a partir de outras proposições lógicas simples.
Operador | Função |
---|---|
não | Negação |
e | Conjunção |
ou | Disjunção |
13 - Tabela Verdade
Tabela-verdade é o conjunto de todas as possibilidades combinatórias entre os valores de diversas variáveis lógicas, as quais se encontram em apenas duas situações (V ou F), e um conjunto de operadores lógicos.
Exemplos:
Se chover e relampejar, eu fico em casa. Quando eu fico em casa?
Obs.: Observamos na tabela-verdade do conectivo usado anteriormente (e) que a proposição só será verificada (ou seja, “eu fico em casa”) quando os termos chover e relampejar forem simultaneamente verdade.
Outro exemplo:
Se chover ou relampejar, eu fico em casa. Quando eu fico em casa?
Obs.: Percebemos que, com o operando lógico ou, as possibilidades de “eu fico em casa” se tornam maiores, pois, pela tabela-verdade, a proposição será verdadeira em três situações: somente chovendo, somente relampejando, chovendo e relampejando ao mesmo tempo.
Tabela-Verdade - Operação de negação
A | Não (A) |
---|---|
F | V |
V | F |
Tabela-Verdade - Operação de Conjunção
A | B | A e B |
---|---|---|
F | F | F |
F | V | F |
V | F | F |
V | V | V |
Tabela-Verdade - Operação de disjunção ou exclusiva
A | B | A ou B |
---|---|---|
F | F | F |
F | V | V |
V | F | V |
V | V | V |
14 - Comandos de Entrada e Saída
Os algoritmos precisam ser ‘alimentados’ com dados provenientes do meio externo para efetuarem as operações e cálculos que são necessários a fim de alcançar o resultado desejado. Com essa finalidade, utilizaremos os comandos de entrada e saída. Para receber dados utilizaremos o comando de entrada abaixo:
leia(a)
leia(nome)
Para apresentar dados na saída utilizaremos o comando abaixo:
escreva(“Mauro Borges França”)
a <- “Mauro Borges França”
escreva(a)
15 - Blocos de comandos
Para melhor entendimento, considere que os códigos são divididos em blocos e que cada bloco desses tem um inicio e um fim. Portanto para demonstrar isso utilizamos recuos de texto denominado identação. A identação é uma forma visual de organizar os seu código para demonstrar quando um bloco de código pertence algum outro “comando pai”.
Código identado
Algoritmo "calcula_idade"
// Disciplina : [Linguagem e Lógica de Programação]
// Professor : Mauro Borges França
// Descrição : Calcular a idade dos clientes do cinema
// Autor(a) : Mauro Borges França
// Data atual : 19/02/2025
Var
// Seção de Declarações das variáveis
nome: caracter
ano_nascimento: inteiro
ano_atual: inteiro
idade: inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreval("Favor forneça o nome do cliente:")
leia(nome)
escreval("Entre com seu ano de nascimento:")
leia(ano_nascimento)
ano_atual <- 2025
idade <- ano_atual - ano_nascimento
escreval("A idade do cliente é:",idade)
Fimalgoritmo
Código não identado
Algoritmo "calcula_idade"
// Disciplina : [Linguagem e Lógica de Programação]
// Professor : Mauro Borges França
// Descrição : Calcular a idade dos clientes do cinema
// Autor(a) : Mauro Borges França
// Data atual : 19/02/2025
Var
//Seção de Declarações das variáveis
nome:caracter
ano_nascimento:inteiro
ano_atual:inteiro
idade:inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreval("Favor forneça o nome do cliente:")
leia(nome)
escreval("Entre com seu ano de nascimento:")
leia(ano_nascimento)
ano_atual<- 2025
idade<-ano_atual - ano_nascimento
escreval("A idade do cliente é:",idade)
Fimalgoritmo
16 - Prática
Já conhecemos os principais comandos, tais como de entrada, saída, a forma de declarar variáveis, constantes, os operadores, agora é hora de praticar.
ATENÇÃO – ALGUMAS DICAR BÁSICA!!!
- COLOQUE O NOME DO ALGORITMO;
- PREENCHA OS DADOS INICIAIS: AUTOR, DESCRIÇÃO, DATA, ETC.
- DECLARE AS VARIÁVEIS;
- PENSE LÓGICAMENTE NO DESENVOLVIMENTO DO PROBLEMA E FAÇA AS OPERAÇÕES;
- CALCULE E MOSTRE O QUE SE PEDE;
- SALVE O ALGORITMO NO PENDRIVE;
Utilize o VisuAlg e elabore o algoritmo a seguir
Exercício 1 - Acesso ao cinema
O dono de uma rede de cinemas deseja fazer a indicação de filmes de acordo com a faixa etária de seus clientes. Para automatizar o processo, deve se criar um algoritmo que receba o nome e ano de nascimento do cliente e mostre quantos anos ele fez (ou fará) neste ano.
Exercício 2 - As Quatro Operações
Uma professora de matemática deseja fazer um experimento com seus alunos. Ela precisa de um programa em que seja possível informar dois números inteiros e visualizar o resultado das 04 operações (adição, subtração, multiplicação e divisão) realizadas entre eles.