1.Um número é, por definição, primo se ele não tem divisores, exceto 1 e ele próprio. Prepare
um algoritmo para ler um número inteiro positivo e determinar se ele é ou não um número
primo.
algoritmo "primo"
var
num, cont, x, i:inteiro
inicio
enquanto i <> 1 faca
escreva("Escreva um número inteiro Positivo :")
leia (num)
se (num>0) entao
i <- 1
para cont de 2 ate num-1 faca
se (num mod cont)=0 entao
x <- x + 1
fimse
fimpara
se (x<>0)entao
escreval("O ",num," não é um número primo")
senao
escreval("O ",num," é um número primo")
fimse
senao
i <- 0
fimse
fimenquanto
fimalgoritmo
2.Escreva um algoritmo que leia 10 números informados pelo usuário e, depois, informe o
menor, número, o maior número, a soma dos números informados e a média aritmética dos
números informados.
algoritmo "maior, menor, soma, media"
var
numero: vetor [1..10] de inteiro
i, maior, menor, soma,cont: inteiro
media: real
inicio
cont <- 1
soma<- 0
Para i de 1 ate 10 faca
escreval
Escreva ("Digite o", i, " numero: ")
Leia (numero[i])
limpatela
maior <- numero[1]
se numero[i]>maior entao
maior <- numero [i]
fimse
menor <- numero[1]
se numero[i]<menor entao
menor <- numero [i]
fimse
soma <- soma + numero[i]
media <- soma/cont
cont <- cont + 1
escreval
Escreval
Escreval
Escreval
Escreval
("o
("o
("a
("a
maior valor e: ", maior)
menor valor e: ", menor)
soma dos valores e: ", soma)
media dos valores e: ", media)
fimpara
fimalgoritmo
3.Desenvolva um algoritmo que leia um número inteiro positivo N e imprima a tabuada de
multiplicar correspondente. Por exemplo, para n = 6, devemos obter: 1 X 6 = 6, 2 X 6 = 12,..., 10
X 6 = 60).
algoritmo "semnome"
var
i,n: inteiro
inicio
Escreval ("digite o numero para obter a tabuada")
Leia (n)
Para i de 1 ate 10 faca
Escreval (i, " X", n, " =", i*n)
fimpara
fimalgoritmo
4.Escreva um algoritmo que solicita um número inteiro positivo ao usuário e imprima a soma
dos N primeiros números pares maiores do que zero (Por exemplo, se for informado N = 4, o
algoritmo deve imprimir o valor 20, pois 2 + 4 + 6 + 8 = 20).
algoritmo "soma dos primeiros n"
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
5.Escreva um algoritmo que solicita ao usuário para digitar um número inteiro positivo, e mostre-o
por extenso. Este número deverá variar entre 1 e 10. Se o usuário introduzir um número que não
pertença a este intervalo, mostre a frase "número inválido". (Dica: Utilizar a estrutura de seleção
escolha)
algoritmo "valor por estenso"
var num: vetor [1..10] de caractere
a:caracter
i: inteiro
inicio
repita
escreval("digite um numero inteiro entre 1 e 10: ")
leia(i)
num[1] <num[2] <num[3] <num[4] <num[5] <num[6] <num[7] <num[8] <num[9] <num[10]<-
"um"
"dois"
"três"
"quatro"
"cinco"
"seis"
"sete"
"oito"
"nove"
"dez"
se (i >0) e (i < 11) entao
escreval (" o numero ",i," por estenso é: ",num[i])
senao
escreval (" o numero ",i," não corresponde ao valor entre 1 e 10")
fimse
escreval
escreval( "para uma no pesquisa digite s ou n")
leia(a)
limpatela
ate a="n"
fimalgoritmo
6.Considere um caixa automático com apenas um repositório com capacidade para
armazenar 1000 notas de 10 reais. Elabore um algoritmo para ler um valor e fornecer a
quantidade de notas correspondente a esse valor. O seu algoritmo deve manter a quantidade
de notas no repositório atualizada. Caso o valor lido não possa ser fornecido por falta de notas,
o algoritmo deve imprimir uma mensagem indicando o fato. O algoritmo também deve imprimir
uma mensagem se o valor não for múltiplo de 10. Após o tratamento do valor lido, com a
impressão da mensagem ou o fornecimento das notas correspondentes, o procedimento deve
ser repetido. O algoritmo deve parar quando um valor lido for negativo.
algoritmo "caixa eletronico"
var nt,ret,i: inteiro
tn:real
j:logico
cont:caracter
inicio
tn<-0
nt<- 10000
i<-10
repita
repita
escreval("ATENÇÃ!!! este terminal possui apenas notas de $10")
escreval
escreval("para cancelar aperte o zero ")
escreval
escreval("quanto deseja retirar : ")
leia (ret)
se ret mod i <> 0 entao
j<- falso
limpatela
escreval("ATENÇÃO VALOR INCORRETO")
timer 3000
timer 0
fimse
limpatela
se ret mod i = 0 entao
j<- verdadeiro
fimse
se ret > nt entao
j<- falso
limpatela
escreval("terminal com dinheiro insuficiênte")
timer 3000
timer 0
fimse
limpatela
ate j = (verdadeiro) ou (ret = 0)
escreval("$",ret," corresponde à",ret/i," ceduala(s) de $10")
escreval
escreva("deseja realizar outra operação? s ou ")
escreval("n")
leia (cont)
limpatela
nt<- nt - ret
se ret > nt entao
cont<-"n"
limpatela
escreval("terminal com dinheiro insuficiênte")
timer 3000
timer 0
fimse
limpatela
ate (cont = "n")
escreval("operação encerrada")
escreval
escreval("OBRIGADO TENHA UM BOM DIA")
fimalgoritmo
7- Desenvolva um algoritmo que leia um número inteiro positivo N e imprima os N primeiros números
da Série de Fibonacci, assim como a soma desses N primeiros números. A Série de Fibonacci é dada
pela seguinte sequência de números inteiros: 1, 3, 7, 15, 31, 63, 127...
(Dica: Utilizar a estrutura de repetição enquanto e o operador de potenciação)
algoritmo "Fibonacci"
var num,i,j:inteiro
a:caracter
inicio
repita
limpatela
escreval("ate qua valor gostaria de ver a seguenci de Fibonacci?")
leia(num)
j<- 0
i<- 1
enquanto (i = num)ou (i<num) faca
i<- i+ j
se i <= num entao
escreva(i," ")
j<- i + 1
fimse
fimenquanto
escreval
escreval
escreval("para uma nova consulta digite s ou n")
leia(a)
ate a= "n"
fimalgoritmo
Download

Sem Título - Engenharia Civil UFPel 2011