Aula 02 - Introdução a Lógica de Programação


Conteúdo

  1. Programação / Lógica de Programação / Algoritmo
  1. Método para a construção de algoritmos
  1. Tipo de Algoritmos
    1. Exemplo Narrativa
    1. Exemplo Fluxograma
    1. Exemplo PseudoCódigo (Portugol)
  1. Estrutura do Algoritmo
  1. O Software Visualg
  1. Tipo básico de dados - Primitivos]
    1. Inteiro
    1. Real
    1. Caracter
    1. Lógico
  1. Constantes
  1. Variáveis
  1. Formação de Identificadores
  1. Declaração e Atribuição
  1. Operadores Aritméticos e Relacionais
  1. Operadores Lógicos
  1. Tabela Verdade
  1. Comandos de Entrada e Saída
  1. Blocos de Comandos
  1. 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


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 – Fluxograma

💡

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:


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çãoOperador
Soma+
Subtração-
Multiplicação*
Divisão/
Divisão Inteiradiv
Resto%
Exponenciação real**
Exponenciação inteiro^

Relacionais – Comparação realizada entre dois valores do mesmo tipo básico.

OperaçãoOperador
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.

OperadorFunção
nãoNegação
eConjunção
ouDisjunçã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

ANão (A)
FV
VF

Tabela-Verdade - Operação de Conjunção

ABA e B
FFF
FVF
VFF
VVV

Tabela-Verdade - Operação de disjunção ou exclusiva

ABA ou B
FFF
FVV
VFV
VVV

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.