FACULDADE PITÁGORAS
CURSO DE ENGENHARIA DE PRODUÇÃO
ALGORITMOS E LÓGICA DE PROGRAMAÇÃO
TURMA 3
ROMARIO DA SILVA SOUZA
ALGORITMOS E LÓGICA DE PROGRAMAÇÃO
Vitória da Conquista
Novembro 2017
Capitulo 05 – Estrutura de repetição
1 – Faça um programa que leva cinco grupos de quatro valores (A,B,C,D) e mostre-
os na ordem lida. Em seguida, organiza-os em ordem crescente e decrescente.
2 – Faça um programa que mostre as tabuadas dos números de 1 a 10.
Capitulo 06 - Vetor
1 –Faça um programa que preencha um vetor com seis elementos numéricos
inteiros. Calcule e mostre:
Todos os números pares;
A quantidade de números pares;
Todos os números impares;
A quantidade de números ímpares.
2 – Uma escola deseja saber se existem alunos cursando, simultaneamente, as
disciplinas Lógica e Linguagem de Programação. Coloque os números das
matriculas dos alunos que cursam lógica em um Vetor, quinze alunos. Coloque os
números das matriculas dos alunos que cursam Linguagem de Programação em
outro Vetor, dez alunos. Mostre o numero das matriculas que aparecem nos dois
vetores.
Capitulo 07 – Matriz
1 – Faça um programa que preencha uma matriz 3 x 5 com números inteiros,
calcule e mostre a quantidade de elementos entre 15 e 20.
2 –Elabore um programa que preencha uma matriz 12 x 4 com os valores das
vendas de uma loja, em que cada linha representa um mês do ano e cada coluna
representa uma semana do mês. O programa deverá calcular e mostrar:
O total vendido em cada mês do ano, mostrando o nome do mês por
extenso.
O total vendido em cada semana durante todo o ano.
O total vendido pela loja no ano.
Capitulo 08 – Sub-rotina
1 – Faça uma sub-rotina que receba um numero inteiro e positivo N como
parâmetro e retorne a soma dos números inteiros existentes entre o números 1 e N
(inclusive).
2 – Faça uma sub-rotina que receba um valor inteiro e verifique se ele é positivo ou
negativo.
Respostas: Capitulo 05 - Estrutura de repetição
5.1 - algoritmo "Ordem crescente e decrescente"
Algoritmo "Ordem crescente e decrescente"
Var
A,b,c,d: vetor [1..5]de inteiro
i: inteiro
Inicio
Para i de 1 ate 5 passo 1 faca
Escreval("digite 4 numeros para formar o Grupo", I)
Leia (A[i], B[i], C[i], D[i])
Fimpara
Escreval ("ordem crescente")
Para i de 1 ate 5 passo 1 faca
Escreval ("Grupo",I, "=", A[i], B[i], C[i], D[i])
Fimpara
Escreval ("ordem decrescente")
Para i de 1 ate 5 passo 1 faca
Escreval ("Grupo",I, "=", D[i], C[i], B[i], A[i])
Fimpara
Fimalgoritmo
5.2 - algoritmo "tabuada de multiplicação"
Algoritmo "tabuada de multiplicação"
Var x, numero: inteiro
Inicio
escreval (" tabuada ")
escreval (" ")
escreva ("digite um numero: ")
leia (numero)
escreval (" ")
escreval (" tabuada de ",numero," ")
escreval (" ")
para x de 1 ate 10 faca
escreval (numero," x ",x, " = ", (numero * x))
fimpara
Fimalgoritmo
Capitulo 06 – Vetor
6.1 - Algoritmo "Pares e Impares"
Algoritmo "pares e impares"
Var
vet:vetor[1..6] de inteiro
i,qtdpar,qtdimpar:inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
PARA I:=1 ATE 6 FACA
ESCREVAL("DIGITE O ",I,"º NÚMERO..")
LEIA(VET[I])
FIMPARA
ESCREVAL
ESCREVAL("-----------------------------------")
ESCREVAL("NUMEROS PARES--")
PARA I:=1 ATE 6 FACA
SE (VET[I] MOD 2 = 0) ENTAO
QTDPAR:=QTDPAR+1
ESCREVA(VET[I]:4)
FIMSE
FIMPARA
ESCREVAL
ESCREVAL("A QUANTIDADE DE NÚMEROS PARES É: ",QTDPAR)
ESCREVAL
ESCREVAL("-----------------------------------")
ESCREVAL("NUMEROS IMPARES--")
PARA I:=1 ATE 6 FACA
SE (VET[I] MOD 2 <> 0) ENTAO
QTDIMPAR:=QTDIMPAR+1
ESCREVA(VET[I]:4)
FIMSE
FIMPARA
ESCREVAL
ESCREVAL("A QUANTIDADE DE NÚMEROS IMPARES É: ",QTDIMPAR)
Fimalgoritmo
6.2 - Algoritmo "Escola"
Algoritmo "escola"
Var
vetlogica:vetor[1..15]de inteiro
vetprog:vetor[1..10] de inteiro
vetresultante:vetor[1..10]de inteiro
i,j,z:inteiro
EXISTE:LOGICO
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
ESCREVAL("-----ALUNOS DE LÓGICA---")
PARA I:=1 ATE 15 FACA
ESCREVAL("DIGITE A MATRICULA DO ",I,"º ALUNO DE LÓGICA")
LEIA(VETLOGICA[I])
FIMPARA
ESCREVAL
ESCREVAL("------------------------------------------")
ESCREVAL("-----ALUNOS DE LINGUAGEM E PROGRAMAÇÃO---")
PARA J:=1 ATE 10 FACA
ESCREVAL("DIGITE A MATRICULA DO ",J,"º ALUNO DE LINGUAGEM E
PROGRAMAÇÃO")
LEIA(VETPROG[J])
FIMPARA
PARA J:=1 ATE 10 FACA
PARA I:=1 ATE 15 FACA
SE (VETLOGICA[I]=VETPROG[J]) ENTAO
VETRESULTANTE[J]:=VETLOGICA[I]
EXISTE:=VERDADEIRO
FIMSE
FIMPARA
FIMPARA
ESCREVAL
ESCREVAL("----------------------------------------")
ESCREVAL("MATRÍCULA DOS ALUNOS QUE CURSAM AS DUAS
DISCIPLINAS")
ESCREVAL("-----------------------------------------")
SE EXISTE ENTAO
PARA I:=1 ATE 10 FACA
SE (VETRESULTANTE[I]<>0) ENTAO
ESCREVA(VETRESULTANTE[I]:5)
FIMSE
FIMPARA
SENAO
ESCREVAL("NÃO EXISTEM ALUNOS CURSANDO AS DUAS DISCIPLINAS
AO MESMO TEMPO..")
FIMSE
Fimalgoritmo
Capitulo 07 – Matriz
7.1 - algoritmo "quantidades de elementos"
Algoritmo " quantidades de elementos"
var
matriz: vetor[1..3, 1..5] de inteiro
i, j, qtde_15 a 20: inteiro
inicio
para i de 1 ate 3 faca
para j de 1 ate 5 faca
escreva("Informe matriz[", i, ", ", j, "]: ")
leia(matriz[i, j])
fimpara
fimpara
qtde_15a20 <- 0
para i de 1 ate 3 faca
para j de 1 ate 4 faca
se ((matriz[i, j] >= 15) e(matriz[i, j] <= 20)) entao
qtde_15a20 <- qtde_15a20 + 1
fimse
fimpara
fimpara
escreval("Quantidade de elementos entre 15 e 20: ", qtde_15a20)
fimalgoritmo
7.2 - algoritmo "Vendas"
Algoritmo " vendas"
var
vendas: vetor[1..12, 1..4] de real
meses: vetor[1..12] de caractere
i, j:inteiro
soma: real
inicio
meses[1] <- "Janeiro"
meses[2] <- "Fevereiro"
meses[3] <- "Março"
meses[4] <- "Abril"
meses[5] <- "Maio"
meses[6] <- "Junho"
meses[7] <- "Julho"
meses[8] <- "Agosto"
meses[9] <- "Setembro"
meses[10] <- "Outubro"
meses[11] <- "Novembro"
meses[12] <- "Dezembro"
para i de 1 ate 12 faca
para j de 1 ate 4 faca
escreva("Informe as vendas do mês: ", i, " semana: ", j, " : ")
leia (vendas[i, j])
fimpara
fimpara
para i de 1 ate 12 faca
soma <- 0
para j de 1 ate 4 faca
soma <- soma + vendas[i, j]
fimpara
escreval("Vendas de ", meses[i], ": ", soma)
fimpara
soma <- 0
para i de 1 ate 12 faca
para j de 1 ate 4 faca
soma <- soma + vendas[i, j]
fimpara
fimpara
escreval("Total vendido no ano", soma)
fimalgoritmo
Capitulo 08 – Sub-rotina
8.1 inteiro e positivo N, retorne a soma dos números inteiros existentes entre 1 e N.
Algoritmo " inteiro positivo"
var
n,c, soma: inteiro
inicio
escreval("Digite um Número")
leia(n)
soma <- 0
para c de 0 ate n faca
soma <- soma + (c * 2)
fimpara
escreva(" a soma é: ",soma)
Fimalgoritmo
8.2 - um valor inteiro e verifique se ele é positivo ou negativo.
Algoritmo " numero positivo ou negativo"
Var
numero:inteiro
Inicio
escreval("Digite o numero")
leia(numero)
se (numero >= 0) entao
escreval("O número é positivo")
senao
escreval("O número é negativo")
fimse
Fimalgoritmo