Beruflich Dokumente
Kultur Dokumente
7. Construa um algoritmo (pseudocódigo) que: a. Leia o nome de três pessoas (dado do tipo
caractere). b.Escreva os nomes na ordem inversa da que foram informados.
algoritmo "Exer_7"
// Função :
// Autor : Majenda
// Data : 21-10-2015
// Seção de Declarações
var
a:vetor[1..5] de caracter
b:vetor[1..5] de caracter
op:caracter
i:inteiro
inicio
leia(a[i])
fimpara
fimpara
leia(op)
escolha (op)
caso "B"
escreval(b[5])
escreval(b[4])
escreval(b[3])
escreval(b[2])
escreval(b[1])
fimescolha
fimalgoritmo
algoritmo "Exer_8"
// Função :
// Autor : Majenda
// Data : 21-10-2015
// Seção de Declarações
var
a:caracter
b,c,d:real
inicio
// Seção de Comandos
leia(a)
leia(b)
senao
fimse
fimalgoritmo
11. Construa um algoritmo (pseudocódigo) que determine e mostre o maior número entre vários
fornecidos pelo usuário. A condição de parada é a entrada de um valor 0 (zero), ou seja, o algoritmo
deve ficar escolhendo o maior até que a entrada seja igual a 0 (zero). Utilize a estrutura ENQUANTO
... REPETIR ... no algoritmo. Assuma que valores negativos nunca serão informados pelo usuário.
algoritmo "Exer_11"
// Função :
// Autor : Majenda
// Data : 21-10-2015
// Seção de Declarações
var
num,Maior,menor:inteiro
inicio
maior <- 0
menor<-9999
num<-1
escreval("digite o numero")
leia(num)
fimse
fimse
fimse
fimenquanto
escreval("Menor é ",menor)
escreval("Maior é ",maior)
fimalgoritmo
12. Construa um algoritmo (pseudocódigo) que leia 500 valores inteiros e positivos e: a. Encontre e
mostre o maior valor. b. Encontre e mostre o menor valor. c. Calcule e mostre a média dos números
lidos. Utilize a estrutura ENQUANTO ... REPETIR ... no algoritmo.
algoritmo "Exer_12"
// Função :
// Autor : Majenda
// Data : 21-10-2015
// Seção de Declarações
var
i,nrs,nma,nme,soma:inteiro
media:real
inicio
// Seção de Comandos
nme<-99999
nma<-0
i<-1
escreval(i)
nma <- i
fimse
nme <- i
fimse
soma<-soma+i
media<-soma/500
i<-i+1
fimenquanto
escreval("")
fimalgoritmo
14. Utilizando a estrutura PARA... ATÉ... REPETIR..., construa um algoritmo (pseudocódigo) que exiba
os números ímpares entre 100 e 200. Dica: a função mod(X,Y) retorna o resto da divisão de X por Y.
algoritmo "Exer_14"
// Função :
// Autor : Majenda
// Data : 21-10-2015
// Seção de Declarações
var
x:inteiro
inicio
// Seção de Comandos
se (x % 2 = 1) entao
escreval(x)
fimse
fimpara
fimalgoritmo
15. Construa um algoritmo (pseudocódigo) que calcule a média de N números reais informados pelo
usuário, onde o valor de N também é informado no início da execução. Utilize a estrutura PARA...
ATÉ... REPETIR... Antes do término da execução do algoritmo, mostre a média calculada
algoritmo "Exer_15_Media_N_Numeros"
// Autor : Majenda
// Data : 21-10-2015
// Seção de Declarações
var
i,quant:inteiro
media,soma,numero:real
r:caracter
inicio
// Seção de Comandos
leia(quant)
para i de 1 ate quant faca
leia(numero)
soma<-soma+numero
media<-soma/quant
fimpara
escreval("")
fimalgoritmo
16. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo
(pseudocódigo ) que calcule seu peso ideal, utilizando as seguintes fórmulas: Para homens: (72,7 *
altura) – 58. Para mulheres: (62,1 * altura) – 44,7
Ao perguntar o sexo, o algoritmo deverá garantir que as únicas entradas aceitas sejam ‘M’ para
homens e ‘F’ para mulheres. Ou seja, caso um valor diferente de ‘M’ ou ‘F’ seja informado, o
programa deverá requisitar ao usuário que informe o sexo novamente até a entrada ser válida. Dica:
utilize a estrutura de repetição mais adequada dentre as três vistas em aula.
algoritmo "Exer_16"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
altura,peso:real
genero,nome:caracter
inicio
// Seção de Comandos
Escreval("Informe teu nome")
leia(nome)
leia(altura)
leia(genero)
escreval("")
escolha (genero)
caso "M"
escreva("Senhor ",nome)
caso "F"
escreva("Senhora ",nome)
fimescolha
leia(genero)
escreval("")
escolha (genero)
caso "M"
escreva("Senhor ",nome)
caso "F"
escreva("Senhora ",nome)
fimescolha
fimenquanto
escreval("")
fimalgoritmo
17. Escreva um algoritmo (pseudocódigo) que leia três valores inteiros e mostre-os em ordem
decrescente. Dica: utilize estruturas de decisão encadeadas.
algoritmo "Exer_17"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
a,b,c:inteiro
inicio
// Seção de Comandos
leia(a,b,c)
escreval(a,b,c)
senao
escreval(a,c,b)
senao
escreval(c,b,a)
senao
se (a>b) e (b<c) e (c<a) entao
escreval(b,c,a)
senao
escreval(b,a,c)
senao
escreval(c,a,b)
fimse
fimse
fimse
fimse
fimse
fimse
fimalgoritmo
18. Construa um algoritmo (pseudocódigo) que escreva uma contagem de 10 (dez) minutos, ou seja,
mostre 0:00, e então 0:01, 0:02, ..., 0:58, 0:59, 1:00, 1:01, 1:02,...,até 10:00. Dica: utilize a estrutura
de repetição mais adequada dentre as três vistas em aula.
algoritmo "CRONOMETRO"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
inicio
// Seção de Comandos
hora <- 0
minuto <- 0
segundo <-0
timer 0
//-------------------------------
minuto <- 0
//-------------------------------
fimse
fimse
fimse
limpatela
escreval(hora,"h:",minuto,"m:",segundo,"s")
fimenquanto
fimalgoritmo
19. Construa três algoritmos (pseudocódigos) que imprimam a tabuada do 5 (cinco). Em cada um
deles utilize uma das estruturas de repetição vistas em aula. Dica: verifique se o resultado está
correcto fazendo um teste de mesa para cada uma das soluções apresentadas.
algoritmo "Exer_19"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
numero,i:inteiro
inicio
// Seção de Comandos //
numero <- 5
i <- 1
i <- i + 1
fimenquanto
fimalgoritmo
20. Escreva um algoritmo que leia 20 valores inteiros e ao final exiba: a) a soma dos números
positivos; b) a quantidade de valores negativos
algoritmo "Exer_20_SomaPosi_QntNegat"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
num,quant,i,soma,positivo:inteiro
inicio
leia(num)
se (num > 0) entao // se o numero digitado for maior que zero entao ele faz parte da soma
fimse
se (num < 0) entao // numero menor que zero faz parte da quantidade
fimse
fimpara
escreval("")
escreval("")
fimalgoritmo
21. Faça um algoritmo que escreva na tela os números de um número inicial a um número final. Os
números inicial e final devem ser informados pelo usuário;
algoritmo "Exer_21"
// Função :
// Autor : Majenda
// Data : 25-10-2015
// Seção de Declarações
var
i,numinicial,numfinal,pass:inteiro
inicio
escreval("Informe o valor inicial da contagem") // informe o usuario para introduzir o valor inicial da
contage
leia(numinicial)
escreval("Informe o valor final da contagem") // informe o usuario para introduzir o valor final da
contagem
leia(numfinal)
leia(pass)
escreval(i)
fimpara
fimalgoritmo
22. Escrever um algoritmo que imprima a tabuada de um número informado pelo usuário
algoritmo "Exer_22_Tabuada"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
i , n : inteiro
inicio
i<-1
escreval("Informe o numero")
leia(n)
repita
i<-i+1
ate i > 12
fimalgoritmo
23. Escrever um algoritmo que gera e escreve os números ímpares entre 100 e 200;
algoritmo "Exer_23_Impar"
// Função :
// Autor :
// Data : 22-10-2015
// Seção de Declarações
var
impar,i:Inteiro
inicio
i<-100
se (i mod 2 = 1) entao
escreval(i)
fimse
fimpara
24. Em uma turma há 10 alunos. Cada aluno tem 2 notas. Um professor precisa calcular a média das
duas notas de cada aluno. Crie um programa que resolve este problema.
algoritmo "Exer_24"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
n1,n2,media:real
nome:caracter
i:inteiro
inicio
i <- 1
leia(nome)
leia(n1)
leia(n2)
limpatela
escreval("")
i<-i+1
fimenquanto
fimalgoritmo
26. Faça o mesmo que antes, porém, ao invés de ler 10 números, o programa deverá ler e somar
números até que o valor digitado seja zero ( 0 ).
algoritmo "Exer_26"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
soma,n1,n2:inteiro
inicio
escreval("Introduza o 1o numero")
leia(n1)
soma<-n1
leia(n2)
soma<-soma+n2
se (n2 = 0) entao
fimse
leia(n2)
soma<-soma+n2
se (n2 = 0) entao
fimse
fimenquanto
fimalgoritmo
27. Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem
pares. Termine a leitura se o usuário digitar zero (0);
algoritmo "Exer_27_Media_Pares"
// Função :
// Autor : Majenda
// Data : 22-10-2015
// Seção de Declarações
var
quant,par,media,soma:real
i,num:inteiro
inicio
num <-1
// a variavel (num) recebe o valor de um (1) para satisfazer a condicao abaixo, porq se nao atribuir
um valor diferente
// de zero a varial (num) entao ele considera (num) como zero e logo (num = 0) termina a execcao.
escreval("Digite o numero")
leia(num)
se (num % 2 = 0) entao
se num = 0 entao
quant <- quant - 1 // subtrai (1) porque o valor zero tambem ele eh lido como um numero par,
e zero nao adiciona nada
fimse
par <- num
fimse
fimenquanto
escreval("")
escreval("")
fimalgoritmo
28. Escreva um algoritmo que leia valores inteiros e encontre o maior e o menor deles. Termine a
leitura se o usuário digitar zero (0);
algoritmo "Exer_28_Maior_d_varios"
// Função :
// Autor : Majenda
// Data : 23-10-2015
// Seção de Declarações
var
i,nrs,nma,nme:inteiro
inicio
// Seção de Comandos
leia(nrs)
fimse
fimse
fimenquanto
escreval("")
escreval("")
fimalgoritmo
30. Escreva um programa que leia dois valores reais. Ambos valores deverão ser lidos até que o
usuário digite um número no intervalo de 1 a 100. Apresentar a soma dos dois valores lidos.
algoritmo "Exer_30"
// Função :
// Autor : Majenda
// Data : 25-10-2015
// Seção de Declarações
var
x,y,soma:Real
i:inteiro
inicio
escreval("Digite um numero no intervalo de 1 a 100")
leia(i)
leia(x,y)
senao
fimse
fimalgoritmo
31. Escreva um programa que lido um número, calcule e informe o seu fatorial. Ex.: 5! = 5 * 4 * 3 * 2
* 1 = 120.
algoritmo "Exer_31_Fatorial"
// Função :
// Autor :
// Data : 23-10-2015
// Seção de Declarações
var
n,resultado:inteiro
inicio
escreval("Informe o numero")
leia(n)
enquanto n > 1 faca // neste bloco o programa repetira anquanto a variavel (n) for maior que 1
resultado <- resultado * n // a variavel (resultado) vai ser multiplicado pela variavel (n) ate qua a (n)
seja igual a 1
fimenquanto
fimalgoritmo
35. Digitados dois números (base e expoente –b), calcule o resultado utilizando apenas
multiplicações;
algoritmo "Expoente"
// Função :
// Autor :
// Data : 26-10-2015
// Seção de Declarações
var
a,res,res2:real
i,b:inteiro
inicio
escreval("Digite a base")
leia(a)
escreval("Digite expoente")
leia(b)
// -----------------------------------------------------------------------//
// Assumindo que os dois numeros ja foram informados, o algoritmo acima usando apenas
multiplicações fica:
res2 <- 1
fimpara
fimalgoritmo