0% acharam este documento útil (0 voto)
63 visualizações28 páginas

Lógica Conteúdo

Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
63 visualizações28 páginas

Lógica Conteúdo

Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 28

ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

LÓGICA – CONTEÚDOS 2024_1


Professor: Geraldo
1) Algoritmos
1.1 – Definição
1.2 – Formas de representação: Descrição narrativa, fluxograma, pseudo código – portugol)
1.3 Tipos de dados – numérico, literal, lógico (V, F; S, N)

2) Variáveis, Constantes e Operadores


2.1 - Constantes e variáveis
2.2 – Entrada e saída de dados (LEIA; ESCREVA – READ; WRITE)
2.3 – Operadores – aritméticos, atribuição, lógicos, relacionais

3) Estruturas de seleção
3.1 – Definição
3.2 – SE/ENTÃO (IF/ELSE)
3.3 – ESCOLHA/CASO (SWITCH/CASE)

4) Estruturas de repetição
4.1 – Definição
4.2 – Estrutura de repetição PARA (FOR)
4.3 – Estrutura de repetição ENQUANTO (WHILE)
4.4 – Estrutura de repetição DO/WHILE (FAÇA/ENQUANTO)

Desenvolvimento das atividades: exercícios práticos contextualizados.


Avaliações: NP1 – 10/04; NP2 – 29/05

O que é LÓGICA?
Dicionário: maneira coerente através da qual os fatos ou situações se encadeiam.
Para Aristóteles (384 – 322 a.C) a lógica não é ciência e sim um instrumento para o correto pensar.
Os seres humanos desenvolveram a lógica como meio de sobrevivência há milênios e modernamente
aplicamos a lógica no dia a dia de modo instintivo. Aprendemos desde os primeiros anos e passos a lidar com
a lógica, principalmente ao lidar com a natureza elementar à nossa volta.
Desenvolvemos várias habilidades no dia a dia com base em princípios lógicos, tais como: levantar cedo e ir
para o trabalho; ir para a aula na faculdade; etc.
E os computadores?
Os computadores também executam processos lógicos para realizar as tarefas que nós necessitamos, no
entanto, essa lógica obedece a critérios muito particulares.
Linguagem computacional => lógica=>código-fonte
A Lógica é parte da ciência matemática.
Ao longo do desenvolvimento da ciência da computação várias linguagens foram criadas: Assembly, Fortran,
C#, Java, PHP, SQL, Pascal, Python, etc. Essas linguagens têm códigos-fontes próprios, porém a estrutura lógica
tem muita semelhança. Os códigos próprios de cada linguagem são escritos em língua inglesa.
1) Algoritmos
1.4 – Definição
É a descrição de uma sequência ordenada de instruções precisas, sem ambiguidades, finitas e que permitam a
repetibilidade devendo ser seguidas para a resolução de um determinado problema. De maneira geral existem
várias maneiras de resolvermos um problema, portanto é possível a elaboração de algoritmos diferentes para a
solução do mesmo problema.
Exemplos de algoritmos do dia a dia:
▪ Receitas culinárias
▪ Manual de instrução
▪ Outras tarefas

Exemplos:
a. Trocar o pneu de um carro

1. Encoste o carro em um local plano e sinalize;


2. Puxe o freio de mão e engate a 1ª marcha;
3. Afrouxe os parafusos com a chave de roda;
4. Posicione o macaco nos pontos indicados no manual do carro e erga o carro;
5. Substitua o pneu furado pelo estepe;
6. Aperte os parafusos de maneira cruzada;
7. Desça o carro do macaco;
8. Aperte novamente os parafusos até aperto final;
9. Guarde o pneu furado, o macaco e a chave de rodas;
10.Continue o percurso interrompido.

b. Como fazer chamada internacional no seu celular:


1. Abra o aplicativo Telefone e toque em Teclado;
2. Mantenha pressionado o dígito 0 até o sinal de + aparecer;
3. Insira o código do país, código de área e número de telefone e toque em “telefone”.

c. Como formatar data no Excel:


1. Pressionar CTRL+1 e abra a caixa de diálogo: Formatar células;
2. Na caixa Categoria, clique em Data;
3. Escolha o formato de Data que você deseja criar.

d. Solução de operações aritméticas em uma calculadora HP:

1.5 – Algoritmo computacional

Definição: computadores necessitam que as instruções para desempenhar uma tarefa sejam detalhadas,
passo a passo, e que podem ser convertidos ou compilados em uma linguagem compreensível pela máquina,
resultando em um PROGRAMA.
A lógica permite que os passos tenham uma sequência correta que deve ser seguida para alcançar o objetivo,
ou seja a tarefa ou problema a ser solucionado.
Propriedades essenciais:
Um algoritmo deve ser:
▪ Completo: todas as ações precisam ser descritas e devem ser únicas;
▪ Sem redundâncias: as instruções só têm uma forma de ser interpretada;
▪ Determinístico: a execução das instruções sempre atingirá o resultado esperado;
▪ Finito: as instruções devem terminar após a execução de todos os passos e a tarefa concluída.

1.6 Formas de representação de um algoritmo


Descrição narrativa: os algoritmos são expressos em língua natural.
Aspecto positivo: não há conceitos novos ao usar a língua nativa;
Aspecto negativo: possibilidade de várias interpretações e ambiguidades.

Exemplo:
Cálculo da média aritmética de um aluno:
• Obter as suas duas notas de avaliações;
• Calcular a média aritmética;
• Se a média for maior ou igual a 7, o aluno foi aprovado;
• Senão o aluno foi reprovado.

Fluxograma: é uma representação gráfica em que usamos formas geométricas para indicar ações ou comandos
distintos. É mais precisa que a Descrição narrativa e permite visualizar o fluxo das instruções.
Aspecto positivo: os elementos gráficos permitem melhor entendimento que instruções de textos e facilita
verificar erros de lógica.
Aspecto negativo: o algoritmo não é detalhado, dificultando a transcrição para um programa.

ELEMENTOS GRÁFICOS DOS FLUXOGRAMAS

Início e final do fluxograma

Operação de entrada de dados

Operação de saída de dados

Operação de atribuição

Decisão

Os elementos gráficos podem sofrer variações conforme o autor ou ferramenta em uso.


Exemplo: Cálculo da média de um aluno:

Pseudo código – portugol


É uma combinação da Descrição narrativa e elementos que se parecem com linguagem de programação.
Aspecto positivo: representação simplificada e fácil compreensão;
Aspecto negativo: é necessário aprender as regras do pseudocódigo

Estrutura básica do pseudocódigo:

Algoritmo <nome_do_algoritmo>

<declaração de variáveis>

Início

<corpo do algoritmo>

Fim

Algoritmo: palavra que indica o início da definição de um algoritmo em forma de pseudocódigo;

<nome do algoritmo> nome a ser dado ao algoritmo de modo a se distinguir de outros;

<declaração_de_variáveis> onde são declaradas as variáveis a serem usadas no algoritmo, normalmente números
inteiros ou reais.

Início e Fim: palavras que delimitam o início e término do conjunto de instruções do corpo do algoritmo

Exemplo:
- Cálculo da média de um aluno:
Algoritmo Calculo_Media
Var Nota1, Nota2, MEDIA: real;
Início
Leia Nota1, Nota2;
MEDIA ← (Nota1 + Nota2) / 2;
Se MEDIA >= 7 então
Escreva “Aprovado”;
Senão
Escreva “Reprovado”;
Fim_Se
Fim

1.7 Tipos de dados – numérico, literal, lógico (V, F; S, N)


Nos algoritmos as instruções são a maneira como os dados são tratados pelo computador, ou seja, coordenam o
funcionamento do computador; os dados são as informações a serem processadas pelo computador e podem
ser do tipo:
▪ Numérico: divididos em duas classes:
-Inteiros: não possuem partes decimais ou fracionários e podem ser positivos ou negativos;
Exemplos: 20 – nº inteiro positivo;
0 – nº inteiro;
-20 – nº inteiro negativo.
-Reais: podem possuir partes decimais ou fracionárias e podem ser positivos ou negativos.
Exemplos: 20.05 – nº real positivo com 2 casas decimais;
120. – nº real positivo com 0 casa decimal;
-15,2 – nº real negativo com 1 casa decimal;
0. – nº real com 0 casa decimal

▪ Literal: são uma sequência de caracteres que podem ser letras, dígitos e símbolos especiais. Em um algoritmo
a apresentação é delimitada por aspas (“ “) no início e término.
Exemplos: “JklmNopQ” – literal de comprimento 8;
“3.2” – literal de comprimento 3;
“0” – literal de comprimento 1;
“@$*^” – literal de comprimento 4;
Nota: “3.2” é diferente de 3.2, sendo o 1º literal devido às aspas e o 2º numérico real, sem aspas.

▪ Lógico: são usados para representar os dois únicos valores lógicos possíveis: Verdadeiro e Falso; outros tipos:
Sim/Não; 0 e 1.

1.8. Constantes e variáveis


▪ Constante: em uma programação uma constante armazena um valor fixo que NÃO mudará durante a execução
do processamento.

Exemplos: 𝜋(pi): 3,1415926;

Velocidade da luz: 299.792.458m/s

▪ Variável: é um ente de memória que armazena valores que alteram seu conteúdo conforme a necessidade do
programa. O conteúdo da variável pode ser alterado, consultado ou apagado quantas vezes forem necessárias
no algoritmo. Quando o conteúdo da variável é alterado a informação anterior é apagada, ou seja, a variável
sempre armazena a última informação recebida.
▪ As variáveis possuem 3 atributos:
o Nome: começa com uma letra, sem espaço e sem caracter especial, exceto o underline (_).
o Tipo de dados: numérico, literal ou lógico;
o Informação: de acordo com o tipo de dado definido.

Exemplos:

VAR NOME: literal[50]

IDADE: inteiro

SALÁRIO: real
TEM_FILHOS: lógico

Quando armazenamos um determinado conteúdo em uma variável denomina-se ATRIBUIÇÃO DE VALORES e é


representada por uma seta apontada para a esquerda (←).

Exemplos:

variável←constante; Ex.: idade←12

//variável recebe constante

variável←variável; Ex.: preço←valor

//variável recebe valor de outra variável

variável←expressão; Ex.: A←B+C

//variável recebe valor de uma expressão

ATIVIDADES DE ALGORITMOS

1) Elaborar um algoritmo de atividade qualquer do dia a dia;


2) Elaborar um algoritmo com descrição narrativa para calcular a área do quadrado;
3) Elaborar um algoritmo com descrição narrativa para verificar se uma pessoa pode obter Título de Eleitor;
4) Elaborar um fluxograma para cálculo da área do quadrado;
5) Elaborar um fluxograma para verificar se uma pessoa pode obter o Título de Eleitor;
6) Elaborar um algoritmo em pseudocódigo para cálculo da área do quadrado.

RESOLUÇÃO
1) Pessoal
2) 1. Obter o lado do quadrado;
2. Calcular a área do quadrado;
3. Escreva a área do quadrado.
3) 1. Obter a idade completa da pessoa;
2. Se a idade for maior ou igual a 16 anos, a pessoa pode obter o Título de Eleitor;
3. Senão a pessoa não pode obter o TE.
4)
Início

Lado

Area←Lado*Lado

“Area=”Area”

Fim
5)
Início

Idade

V Idade>=16 F

“Pode” “Não pode”

Fim

6) Cálculo da área do quadrado


Algoritmo Cálculo da área do quadrado
Var Lado, Area: real;
Início
Leia Lado;
Area←Lado*Lado
Escreva “Area”
Fim
7) Dada a expressão matemática, escrever um algoritmo em Descrição Narrativa para o cálculo de seus valores.

4 × 𝑥 + 3𝑦 = 𝑧
8) Elaborar um algoritmo e um fluxograma para calcular a área de dois retângulos e verificar qual deles tem
área maior.

9) Elaborar um algoritmo e um fluxograma para calcular a área de dois círculos e verificar qual deles tem área
maior.
10) Dada a expressão
𝑎 = 𝑥2 + 4 × 𝑥 − 5

Escreva a variável RESULTADO que contenha a operação

11) Determinar o valor final da variável X ao final da sequência de passos:


a)

X←5

X ← 2*X

X ← 10
b)

Y←6

Z←8

X ← 2*Z+Y

X ← 22

c)

X ←6

X←1

X ← 3*X

X←3

d)

Y←6

Y ← 5*Y

X ← 2*Y

X ← 3*Y + 2*X +5

X ← 215

1.8 – Operadores Aritméticos


Adição → +
Subtração → -
Multiplicação → *
Divisão → /
Resto ou Módulo → %
Positivo → +
Negativo → -
Incremento → ++ (Adiciona 1 ao valor da variável)
Decremento → -- (Diminui 1 do valor da variável)

Os operadores matemáticos poderão ser utilizados entre variáveis com os tipos de dados numéricos inteiros
e/ou números reais. Devem ser obedecidas as regras matemáticas comuns.
Os parênteses devem ser resolvidos em prioridade às outras expressões; quando existirem parênteses dentro de
outro parêntese, o interno deve ser resolvido primeiro.
Exemplo:
a)
480 : { 20 . [ 86 - 12 . (5 + 2 ) ] 2 } =
480 : { 20 . [ 86 - 12 . 7 ] 2 } =
480 : { 20 . [ 86 - 84 ] 2 } =
480 : { 20 . [ 2 ] 2 } =
480 : { 20 . 4 } =
480 : 80 = 6
b)
- ( - 12 - ( - 5 + 3 )) =
- ( - 12 - ( - 2 )) =
- ( - 12 + 2) =
-( - 10) = + 10

c) Escreva a expressão matemática em código de algoritmo:

3×𝑎+2×𝑏
𝑎−2
𝑐−
𝑑

Regra de prioridade de operações


Operador Operação Prioridade
^, ** Exponenciação 1
/ Divisão 2
* Multiplicação 2
+ Adição 3
- Subtração 3

Exemplo:
Algoritmo Calculo_Area_Quadrado
Var lado, area: real;
Inicio
Leia lado;
Área ← (lado*lado);
Escreva “Area do quadrado é”+área;
Fim.
Operadores de Atribuição
Atribuição simples → =
Atribuição com subtração → -=
Atribuição com divisão → /=
Atribuição com adição → +=
Atribuição com multiplicação → *=
Atribuição com módulo → %=

1.9 – Operadores relacionais


Aplicados para comparar (relacionar) valores entre variáveis e expressões do mesmo tipo sendo o retorno da
comparação um valor do tipo booleano (V ou F).
Igual → ==
Diferente → != ou <>
Maior → >
Menor → <
Maior ou igual → >=
Menor ou igual → <=

Algoritmo Pode_Tirar_Carteira_de_Motorista
Var idade: inteiro;
Inicio
Leia idade;
Se idade >= 18 Então
Escreva “Pode tirar carteira de motorista”;
Então
Escreva “Não pode tirar Carteira de Motorista”;
Fim.

1.10– Operadores Lógicos


São comparações com o objetivo de avaliar expressões com resultados VERDADEIRO ou FALSO → Lógica
booleana.
Operadores Lógicos
Conjunção Disjunção Negação
e/and/&& ou/or não/not
As duas condições devem ser Pelo menos uma condição deve Inverte o valor do resultado da
verdadeiras para que o resultado ser verdadeira para que o condição
seja verdadeiro resultado seja verdadeiro
Xxxx

Retorno de cada expressão E OU


Expressão A Expressão B AeB A ou B
F F F F
F V F V
V F F V
V V V V
Exemplo
Algoritmo Verifica_Aluno_Aprovado
Var nota, frequencia: real;
Inicio
Leia nota, frequencia;
Se nota >=7 e frequencia >=70% Então
Escreva “Aprovado”;
Senão
Escreva “Reprovado”;
Fim

Em uma avaliação de empréstimo imobiliário a instituição financeira exige que a renda familiar deve ser maior ou
igual a R$30.000,00 ou que a renda de um dos membros seja maior que 80% da renda total exigida.

Algoritmo Avaliação_credito_imobiliario

Var RendaA, RendaB, RendaTotal, RendaPerc: real

Inicio

Leia RendaA, RendaB

RendaTotal←RendaA+RendaB

RendaPerc← 0.8*RendaA;

Se RendaTotal >=30000 ou RendaPerc >=24000 Então

Escreva “O credito pode ser aprovado”;

Senão

Escreva “O credito pode ser aprovado”;

FimSe

Fim
2 – Estruturas de seleção SE/ENTÃO ou IF/ELSE podem ser:
1 – simples
2 – compostas
3 – aninhadas

1 – Simples:
Exemplo
Sintaxe do algoritmo:
Se <comando>
Então <instruções>;
Fim Se
A verificação é feita a cada passagem pela estrutura SE/ENTÃO. Se verdadeira (V) as instruções são
executadas; se a condição for FALSA (F) será executado o código na sequência.
Algoritmo verifica_numero
Inicio
Var x, y: inteiro;
X ← 20;
Y ← 30
Se (X<Y) Então
Escreva “X é menor que Y”;
FimSe
Fim

X ← 20

Y ← 30

Escreva ”X é
menor que Y” V Se (X<Y) F

2 – Compostas
Se a condição for verdadeira (V) são executadas as instruções entre chaves do SE/ENTÃO; se a condição não
for verdadeira, ou seja, falsa (F), são executadas as instruções dentro das chaves do SENÃO.

Algoritmo verifica_numero

Inicio

Var X, Y: inteiro

X ← 30
Y ← 25

Se (X<Y) Então

Escreva “X é menor que Y”;

Senão

Escreva “X é maior que Y”;

FimSe

Fim

X ← 30

Y ← 25

Escreva ”X é Escreva ”X é
menor que Y” V Se (X<Y) F menor que Y”

Exemplo 1: Um professor aplica provas com pesos, sendo a 1ª prova com peso 4 e 2ª prova com peso 6. Se a
aprovação for com nota maior ou igual a 7, elaborar o algoritmo e o fluxograma.

Algoritmo Verifica_notas_com _pesos

Var Nota1, Nota2, Media: real

Inicio

Escreva “Entre com a Nota1”

Leia Nota1

Escreva “Entre com a Nota2”

Leia Nota2

Media←(Nota1*4+Nota*6)/10

Se Media >= 7 Então

Escreva “Aprovado”

Senão

Escreva “Exame final ou Reprovado”


Fim Se

Fim.

Exemplo 2: Para o cadastro de 2 pessoas e suas alturas, verificar qual delas é maior?

Algoritmo “Pessoa mais alta”

Var Nome1, Nome2: caractere

Alt1, Alt2: real

Inicio

Escreva “Entre com o nome da 1a. pessoa”

Leia Nome1

Escreva “Entre com a altura da 1a. pessoa”

Leia Alt1

Escreva “Entre com o nome da 2a. pessoa”

Leia Nome2

Escreva “Entre com a altura da 2a. pessoa”

Leia Alt2

Se Alt1>Alt2 Então

Escreva Nome1, “e mais alto(a) do que”, Nome2

Senão

Escreva Nome2, “é mais alto(a) do que”, Nome1

Fim se Fim

Exemplo 3: Elaborar um algoritmo e um fluxograma para calcular o volume de dois cubos e verificar qual deles tem
volume maior.

Exemplo 4: Elaborar um algoritmo e um fluxograma para calcular o volume de dois prismas e verificar qual deles tem
volume maior.

Exemplo 5: Elaborar um algoritmo e um fluxograma para calcular o volume de duas pirâmides e verificar qual delas
tem volume maior.

Exemplo 6: Elaborar um algoritmo e um fluxograma para calcular o volume de dois cones e verificar qual delas tem
volume maior.

Exemplo 7: Elaborar um algoritmo e um fluxograma para calcular o volume de dois troncos de cones e verificar qual
delas tem volume maior.
3 – Aninhadas
É uma estrutura usada quando é necessário realizar várias comparações com a mesma variável. Tem esse
nome porque é uma seleção dentro de outra seleção. Também pode ser chamada de encadeada.

Se <condição> Então
Se <condição> Então
<instruções>;
FimSe
Senão
<instruções>;
FimSe

Exemplos
a) Algoritmo que verifica se um aluno poderá ser aprovado

Início

Nota1, Nota2,
Frequencia

Media←(Nota1+Nota2)/2

V F
Se Media>=5,0

V F
Se Frequencia>=75%

“O aluno “O aluno
está está
aprovado” reprovado”

Fim
Algoritmo Verificação_da_aprovação_de_um_aluno
Var Nota1, Nota2, Media, Frequencia: Real;
Inicio
Leia Nota1;
Leia Nota2;
Leia Frequencia;
Media←(Nota1+Nota2)/2
Se (Media>=5,0)
Então
Se Frequencia>=75
Então
Escreva “O aluno está aprovado”
Senão
Escreva “O aluno está reprovado”
FimSe
FimSe
Fim
b) Algoritmo que calcula um novo salário conforme tabela de um sindicato

Faixa de salário Correção


Menor que R$3.000,00 15%
Maior ou igual a R$3.000 e menor ou igual a R$5.000,00 10%
Maior que R$5.000,00 5%

Início

Salario

Novosalario←salario*1,15 V Salario<3000
F

Novosalario←salario*1,10 V Salario<=50000 F Novosalario←salario*1,05


“O novo
salario é:”
Novosalari
o

Fim

Algoritmo Correção_salarial
Var Salario, Novosalario: Real
Se Salario < 3000
Novosalario←Salario*1,15
Escreva
“O salario corrigido é:” Novosalario
Senão
Se Salario <=5000
Escreva
“O salario corrigido é:” Novosalario
Senão
Novosalario←salario*1,05
FimSe
FimSe
Fim

c) Algoritmo que escolhe a pessoa mais alta

Algoritmo "Pessoa mais alta"


var
nome1, nome2 : caractere
alt1 , alt2 : real
inicio
escreva( "Entre com o nome da primeira pessoa: " )
leia( nome1 )
escreva( "Entre com a altura da primeira pessoa: " )
leia( alt1 )
escreva( "Entre com o nome da segunda pessoa: " )
leia( nome2 )
escreva( "Entre com a altura da segunda pessoa: " )
leia( alt2 )
se alt1 > alt2 entao
escreva( nome1 , " é mais alto(a) do que " , nome2 )
senao
se alt1 < alt2 entao
escreva( nome2 , " é mais alto(a) do que " , nome1 )
senao
escreva( nome1 , " possui a mesma altura de " , nome2 )
fimse
fimse
fim
Início

Nome1, Nome2,
Alt1, Alt2

V F
Alt1 > Alt2

“Nome1 é V Alt1 < Alt2 F


o mais
alto do
que “Nome2 é
Nome2” “Nome1 e
o mais
Nome 2
alto do
tem a
que
mesma
Nome1”
altura”

Fim

d) Dados 3 números inteiros diferentes, elaborar um fluxograma e um algoritmo que verifique qual deles é o
maior. Nota: os números não precisam estar em ordem crescente ou decrescente.

Início

N1, N2, N3

V N1 > N2 F

V N1 > N3 F V N2 > N3 F

“N3 é o “N3 é o
“N1 é o “N2 é o
maior dos maior dos
maior dos maior dos
números” números”
números” números”
Fim

Algoritmo Maior_de_3_números_inteiros_dados
Var N1, N2, N3
Inicio
Leia N1, N2, N3
Se N1 > N2
Então
Se N2 > N3
Escreva “N1 é maior dos 3 números”
Senão
Escreva “N3 é maior dos 3 números”

FimSe
Senão
Se N2 > N3
Escreva “N2 é maior dos 3 números”
Senão
Escreva “N3 é maior dos 3 números”
FimSe
Fim
TABELA DE VERIFICAÇÃO DE RESULTADOS POSSÍVEIS
1) (3, 5, 4)
3>5 Não
5>4 Sim N2 é o maior dos 3 números
2) (3, 4, 5)
3>4 Não
4>5 Não N3 é o maior dos 3 números
3) (4, 3, 5)
4>3 Sim
4>5 Não N3 é o maior dos 3 números
4) (4, 5, 3)
4>5 Não
5>3 Sim N2 é o maior dos 3 números
5) (5, 4, 3)
5>4 Sim
5>3 Sim N1 é o maior dos 3 números
6) (5, 4, 3)
5>4 Sim
5>3 Sim N1 é o maior dos 3 números

e) Elaborar um algoritmo que avalia a situação de um aluno para aprovação sendo que a instituição exige a
aplicação de 3 provas semestrais com média superior ou igual a 7,0 para aprovação e se a nota for igual ou
inferior a 3,0 o aluno deve fazer um exame final.

algoritmo "Situacao escolar de aluno"


var
n1, n2, n3, media : real
inicio
escreva( "Entre com a primeira nota: " )
leia( n1 )
escreva( "Entre com a segunda nota: " )
leia( n2 )
escreva( "Entre com a terceira nota: " )
leia( n3 )
media <- ( n1 + n2 + n3 ) / 3
se media >= 7 entao
escreva( "aprovado" )
senao
se media > 3 entao
escreva( "em exame" )
senao
escreva( "reprovado" )
fimse
fimse
fim
Estruturas de repetição
São estruturas que permitem que uma sequência de instruções seja executada várias vezes até que uma
condição seja satisfeita. Ao repetir as instruções não é necessário escrevê-las várias vezes. As repetições
podem ser em um número determinado ou indeterminado de vezes e envolvem a avaliação de uma condição
(teste) que resulta em valores Verdadeiros ou Falsos.
Se o resultado do teste for Falso, não é iniciada a repetição ou se em execução ela é encerrada; se o resultado
for Verdadeira a repetição é iniciada ou caso esteja em execução ela é reiniciada dentro da estrutura de
repetição. As estruturas de repetição são chamadas de Laços ou Loops.

a) Estrutura – Enquanto/Faça
Estrutura de repetição mais simples, ideal para situações em que não se sabe o número exato de vezes
em que o bloco de instruções deve ser repetido. Substitui Para/Até/Faça. A condição é validade antes de
cada repetição/laço. Enquanto Verdadeiro o bloco dentro do laço é executado, quando Falso é finalizado.

Enquanto <condição> Faça


{
<instruções>
}
FimEnquanto

Exemplo:
Algoritmo Imprimir_numeros_de_1_a_10
Início
var contador :inteiro;
contador← 1
Enquanto (contador < 10) Faça
Escreva contador;
contador ← contador +1
FimEnquanto
Fim

b) Estrutura - Escolha/caso
Utilizada quando é necessário testar a mesma variável com uma série de valores várias vezes, sendo a
principal vantagem evitar uma série de testes com o comando Se/Então. A variável a ser testada deve
ser sempre do tipo inteiro ou literal.

Escolha <condição>
Caso1: <expressão>
<instruções>;
Pare;
Caso2: <expressão>
<instruções>;
Pare;
Senão:
<instruções>;
Pare;
FimEscolha
Exemplo

Algoritmo informa_sexo
Início
var sexo :literal
Escolha (sexo)
Caso ("F"):
Escreva "Sexo feminino";
Pare;
Caso ("M"):
Escreva "Sexo masculino";
Pare
FimEscolha
Fim
c) Estrutura – Para/Até/Faça
Usada quando o número de repetições é conhecido. É necessário usar uma variável de controle Inteiro
ou Literal.

Exemplo
Algoritmo Imprimir_numeros_de_1_a_100
Início
var contador :inteiro;
contador←1
Para contador ← 1 Até 100 Faça
Escreva (contador);
FimPara
Fim
Exemplo 1 – Algoritmo que determina o maior número de uma sequência

Início

n, x

i←2

F
i <=n
Leia x "O maior
número da
Se x > Maior Então sequência e:
Maior←x ", maior

FimSe
i←i+1

Fim
Algoritmo "Maior numero de uma sequencia"
Var
i, n : inteiro
Maior, x : real
Inicio
Escreva( "Entre com a quantidade de numeros da sequencia: " )
Leia( n )
Escreva( "Entre com o primeiro numero da sequencia: " )
Leia(Maior )
i←2
Enquanto i <= n faca
Escreva( "Entre com o proximo numero da sequencia: " )
Leia (x)
Se x > Maior entao
Maior←x
Fimse
i←i+1
Fimenquanto
Escreva( "O maior numero da sequencia e: ", maior )
Fimalgoritmo

Exemplo 2 - Algoritmo que soma números inteiros de um intervalo

Início

a, b

Soma←0

i←1

F
i <=n
" A soma dos
Leia x
números do
Soma←Soma + a intervalo é:
", Soma
i←i+1

Fim

Algoritmo “Somar inteiros de um intervalo”


Var a, b, i, soma: inteiro
Inicio
Escreva “Entre com o primeiro número do intervalo”
Leia a
Escreva “Entre com o número de elementos do intervalo”
Leia b
Soma←0
i←1
Enquanto i <= n Faça
Soma←Soma + a
i←i+1
FimEnquanto
Escreva( "A soma dos números do intervalo é: ", Soma)
Fimalgoritmo

Exemplo 3 – Algoritmo para cálculo da média aritmética

Início

Soma←0

i←1

F
i <=n media←soma/n
Leia (x)

i←i+1

Soma←Soma + x ("A media


aritmetica dos
i←i+1 ", n , " numeros
e ", media)

Fim

Algoritmo "Media aritmetica de n numeros reais"


Var
i, n : inteiro
soma, x, media : real
Inicio
Escreva( "Entre com a quantidade de numeros: " )
Leia( n )
soma ← 0
i←1
Enquanto i <= n faca
Escreva( "Entre com o ", i , "-esimo numero: " )
Leia (x)
soma ← soma + x
i←i+1
Fimenquanto
media ← soma / n
Escreva( "A media aritmetica dos ", n , " numeros e ", media )
Fimalgoritmo

Exemplo 4 – Algoritmo para cálculo da média e quantidades acima e abaixo da média

Início

Soma←0

i←1

F
i <=n
media←soma/n
Leia (x)

i←i+1
media←soma/n
Soma←Soma + x
Acima←0

i←1
i←i+1

F
i <=n
Leia (x)

Se x>=media

Então

Acima←Acima+1

i←i+1

("A media
aritmetica dos ", n
, " numeros e ",
media)

("O número de
notas acima da
media é:”, Acima)

Fim
Algoritmo "Media aritmetica das notas e quantidades acima da media"
Var
i, n : inteiro
soma, x, media, Acima, Abaixo : real
Inicio
Escreva( "Entre com a quantidade de notas: " )
Leia( n )
soma ← 0
i←1
Enquanto i <= n faca
Escreva( "Entre com o ", i , "-esimo numero: " )
Leia (x)
soma ← soma + x
i←i+1
Fimenquanto
media ← soma / n
Acima←0
I←1
Enquanto i <= n faca
Escreva( "Entre com o ", i , "-esimo numero: " )
Leia (x)
Se x>=media
Então
Acima←Acima+1
i←i+1
Fimenquanto
Escreva( "A media aritmetica dos ", n , " numeros e ", media )
Escreva(“O número de notas acima da media é:”, Acima)
Fimalgoritmo

Exemplo 5 – Determinação do n-ésimo termo de uma PA

Início

a, r, n

i←2

NT←a

F
i <=n
" O n-ésimo
NT←NT + r
Termo é: ",
i←i+1 NTermo

Fim
Algoritmo “Determinar n-ésimo termo de uma PA”
Var a, r, i, n, NT: inteiro
Inicio
Escreva “Entre com o primeiro termo da PA”
Leia a
Escreva “Entre com a razão da PA”
Leia r
Escreva “Entre com a posição do Termo da PA”
Leia n
i←2
NT←a
Enquanto i <= n Faça
NT←NT+r
i←i+1
FimEnquanto
Escreva( "O n-ésimo termo é: ", NTermo)
Fimalgoritmo

Exemplo 6 – Determinação do n-ésimo termo de uma PA e soma de dois termos

Início

a, r, n, p

i←2

NT←a

Soma←0

F
i <=n
(" O n-ésimo
NT←NT + r
Termo é: ",
Se p=i Então NTermo)
Soma←Soma+a+NT ("A Soma de
FimSe dois termos
é:” Soma)
i←i+1

Fim

Algoritmo “Determinar n-ésimo termo de uma PA e soma de dois termos”


Var a, r, i, n, p, NT: inteiro
Inicio
Escreva “Entre com o primeiro termo da PA”
Leia a
Escreva “Entre com a razão da PA”
Leia r
Escreva “Entre com a posição do Termo da PA”
Leia n
i←2
NT←a
Soma←0
p←(n-2)
Enquanto i <= n Faça
NT←NT+r
Se p=i
Então
Soma←Soma+a+NT
i←i+1
FimSe
FimEnquanto
Escreva( "O N-Termo é: ", NTermo)
Escreva(“A Soma de dois termos é:” Soma)
Fimalgoritmo

Exemplo 7 – Algoritmo que calcula o produto de números inteiros de um intervalo

Início

a, b

Produto←1

i←1

Soma←0

F
i <=b
("O produto
Produto←Produto*a
dos números
Se Produto=0 Maior do intervalo”0
Então i=b+1 é: ", Produto)
Senão

i←i+1

FimSe

Fim
i←i+1

Algoritmo “Cálculo do produto de números inteiros de um intervalo”


Var a, b, i, produto: inteiro
Inicio
Escreva “Entre com o primeiro número do intervalo”
Leia a
Escreva “Entre com o número de elementos do intervalo”
Leia b
Produto←1
i←1
Enquanto i <= b Faça
Produto←Produto * a
Se Produto = 0
Então i=b+1
Senão
i←i+1
FimSe
FimEnquanto
Escreva( "O produto dos números do intervalo é: ", Produto)
Fimalgoritmo

Exemplo 7 – Algoritmo que determina o n-ésimo termo da Sequência de Fibonacci

Algoritmo "N-esimo termo da sequencia de Fibonacci"


var
a, b, i, t, n : inteiro
Inicio
Escreva ("Informe um valor inteiro não-negativo: " )
Leia (n)
a←0
b←1
i←1
Enquanto i <= n faca
t←a+b
a←b
b←t
i←i+1
Fimenquanto
Escreva( "O ", n , "-ésimo termo da sequência de Fibonacci é: ", a)
Fimalgoritmo

d) Estrutura – Faça/Enquanto
Testa a condição de validação do laço apenas no final do comando. As instruções dentro do laço serão
executadas pelo menos uma vez.

Exemplo
Algoritmo Imprimir_numeros_de_1_a_10
Início
var contador :inteiro;
contador ← 1
Faz
Escreva contador;
contador ← contador +1
Enquanto (contador < 10);
Fim

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy