Tema: Progamação em Visualg: Curso de Engenharia Informática Disciplina de Informática
Tema: Progamação em Visualg: Curso de Engenharia Informática Disciplina de Informática
FACULDADE DE ENGENHARIA
Disciplina de Informática
Discente: Docente:
"Introduza o seu
Var nome"
Leia(morada)
"Introduza sua
Escreva("Introduza o curso ") morada"
Leia(curso)
morada
Escreva(nome,",",morada,",",curso)
Fimalgoritmo
"Introduza seu
curso"
morada
nome, morada,
curso
fim
2. Impressão da Soma de dois números A e B.
Algoritmo "Soma de 2 numeros"
Var Inicio
a,b,s: real
"Insira a"
Inicio
Escreva("Insira a ") a
Leia(a)
Escreva("Insira b ") "Insira b"
Leia(b)
b
s<-a+b
Escreva("A Soma e ", s) s<-a+b
Fimalgoritmo
"A soma e", s
Fim
"Insira a"
Var
a,b,m: real a
Inicio
Escreva("Insira a ") "Insira b"
Leia(a)
b
Escreva("Insira b ")
Leia(b) m<-(a+b)/2
m<-(a+b)/2
Escreva("A Media e ", m) "A Media ", m
Fimalgoritmo
Fim
4. Impressão da solução duma equação linear.
Algoritmo "Solucao de uma equacao linear" Inicio
Var
"Insira a"
a,b,k: real
Inicio
a
Escreva("Insira a ")
Leia(a) "Insira b"
Escreva("Insira b ")
b
Leia(b)
K<--b/a k <- -b/a
Fim
Var
"Insira b"
a,b,k: real
Inicio
b
Escreva("Insira a ")
Leia(a) "Insira h"
Escreva("Insira b ")
Leia(b) h
K<--b/a a<-b*h/2
Fim
6. . O preço de um automóvel é calculado pela soma do preço de fábrica com o preço dos
impostos (45% do preço de fábrica) e a percentagem do revendedor Inicio
(28% do preço de fábrica). Leia o nome do automóvel e o preço de
fábrica e imprima o nome do automóvel e o preço final. "Insira o nome do
automovel"
Algoritmo "Area de um triangulo"
Var nome
Inicio
pf
Escreva("Insira o Nome do automovel ")
Leia(nome) pa<- pf+0.45*pf+0.28*pf
pa<-pf+0.45*pf+0.28*pf
Fim
Escreval("Nome: ", nome)
Escreval("preco: ", pa)
Fimalgoritmo
7. Leia salário do funcionário. Se Salario é inferior ou igual a 1.850MT, dê um aumento
salarial de 50% e imprima a mensagem “Colaborador da classe C, seu Salario é: ”. De
contrário avalie se o Salario está entre 1.850 e 4.500MT (inclusive) para dar um aumento
de 25% e imprima a mensagem “Colaborador da classe B, seu Salario é: ”. De contrário,
dê um aumento de 15% e imprima a mensagem “Colaborador da classe A, seu Salario é:
”
Inicio
Algoritmo "Impressao do salario do colaborador"
"Introduza o
Var salario"
s,k: real
s
Inicio
k<-s+s*0.5 "Colaborador de
k<-s+s*0.25 k<-s+s*0.15
classe C, seu
salario e ", k
Escreva("Colaborador de classe C, seu salario e ", k)
"Colaborador de "Colaborador de
classe B, seu classe B, seu
Senao salario e ", k salario e ", k
Se (s<=4500) entao
k<-s+s*0.25
Fim
Escreva("Colaborador de classe B, seu salario e ", k)
Senao
k<-s+s*0.15
Fimse
Fimse
Fimalgoritmo
Algoritmo "Paridade"
"Introduza o dado"
Var
d: inteiro
d
Inicio
Escreva("Introduza o dado ")
No
d%2=0
Leia(d)
Se (d%2 = 0) Entao
"PAR" "IMPAR"
Escreval(d, " e Par")
Senao
Escreval(d, " e Impar")
Fim
Fimse
Fimalgoritmo
Inicio
a,b: real
"Insira b"
Inicio
Escreva("Introduza a") b
Leia(a)
Yes No
a>b
Escreva("Imtroduza b")
Leia(b)
"Insira b" "Insira b"
Se (a>b) entao
Fim
Escreva("O maior numero sera", a)
Senao
Escreva("O maior numero sera", b)
Fimse
Fimalgoritmo
10. Receba três notas de um aluno, calcule e mostre a média aritmética de Frequência (MF) e
o resultado (Excluido, Admitido, Dispensado), conforme os critérios:
Algoritmo "Media de Frequencia" Inicio
Var
"Introduza a, b, c"
a, b, c, mf: real
Inicio
a, b, c
Escreva("Introduza a")
Leia(a) mf<-(a+b+c)/3
Escreva("Introduza b")
"A media e ", mf
Leia(b)
Yes No
Escreva("Introduza c") mf<10
Leia(c)
Yes No
mf<-(a+b+c)/3 mf<14
"EXCLUIDO"
Escreval("A media e", mf)
"ADMITIDO"
Se (mf<10) entao
"DISPENSADO"
Escreva("EXCLUIDO")
Senao
Se (mf<14) entao
Fim
Escreva("ADMITIDO")
Senao
Escreva("DISPENSADO")
Fimse
Fimse
Fimalgoritmo
11. . Dada a Equação AX2 + BX + C=0, imprimir a solução (Observar todas as condições)
Algoritmo "Equacao quadratica" Inicio
Var
"Introduza a, b, c"
a,b,c,d,x1,x2,x: real
Inicio a, b, c
Escreva("Introduza A")
Yes No
a=0 D<-b^2-4*a*c
Leia(a)
Yes
Escreva("Introduza C") D=0
No "Nao tem solucao"
Leia(c)
x<--b/a x1<-(-b-D^0.5)/(2*a)
x2<-(-b+D^0.5)/(2*a)
Se (a=0) entao
d<-b^2-4*a*c
Se (d>=0) entao
Fim
Se (d=0) entao
x<- -b/(2*a)
Senao
x1<-(-b-d^0.5)/(2*a)
x2<-(-b+d^0.5)/(2*a)
Fimse
Senao
Fimse
Fimse
Fimalgoritmo
12. Leia 3 números inteiros e imprima o menor deles.
Algoritmo "Menor" Inicio
Var
"Insira a"
a, menor: real
i: inteiro a
Inicio
menor<-a
Escreva("Insira a")
i de 2 ate 3
Leia(a)
menor<-a "Insira a" "O menor numero
e ", menor
Para i de 2 ate 3 faca
a Fim
Escreva("Insira a")
Leia(a) Yes No
a>menor
Se (a > menor) entao
menor<-menor menor<-a
menor<-menor
Senao
menor<-a
fimse
Fimpara
Escreva("O menor numero e", menor)
Fimalgoritmo
13. Receba 3 números e imprime-nos em ordem Inicio
crescente
Algoritmo "Ex.13" "Introduza o
primeiro numero"
Var
n1, n2, n3, menor, maior, medio: real
n1
Inicio
menor<-n1
Escreva("Introduza o primeiro número: ") maior<-n1
Leia(n1)
maior<-n1 "Introduza o
segundo numero"
menor<-n1
Escreva("Introduza o segundo número: ") n2
Leia(n2)
Se (n2<=menor) entao Yes
n2<=menor
No
menor<-n2
menor<-n2 maior<-n2
Senao
maior<-n2
Fimse "Introduza o
terceiro numero"
Escreva("Introduza o último número: ")
Leia(n3)
n3
Se (n3<=menor) entao
medio<-menor
Yes No
n3<=menor
menor<-n3
medio<-maior medio<-n3
Senao maior<-n3
Se (n3>=maior) entao
medio<-maior
maior<-n3 menor, ",", medio,
",", maior
Senao
medio<-n3
Fim
Fimse
Fimse
Escreval(menor, medio, maior)
Fimalgoritmo
14. Receba um número inteiro positivo do usuário e mostre a Inicio
Algoritmo "Tabuada"
n
Var
i de 1 ate 10
i,n,p: inteiro
Fim p<-n*i
inicio
leia(n)
p <- n*i
Escreva(n,"*",i,"=", p)
fimpara
fimalgoritmo
var
"Introduza a QTD"
i,qtd: inteiro
inicio qtd
Escreva("i:",i)
fimpara
fimalgoritmo
var s<-0
n,s: inteiro
n de 1 ate 20
inicio
"A soma e:
", s
s <- 0 s<-s+n
Fim
para n de 1 ate 20 faca
s <- s+n
fimpara
fimalgoritmo
var
"Introduza o valor
n"
M, N, i,r: inteiro
n
inicio
leia(M)
i de m ate n
Escreva("insira o valor de N:")
Yes
n%i = 0
i No
leia(N)
r <- i%2
se r=0 entao
Escreva (i)
senao
fimse
fimpara
fimalgoritmo
var
n, i, fact :inteiro n
Inicio fact<-1
leia (n)
fact<-fact*i
fact<-1
fact<- fact*i
fimpara Fim
Fimalgoritmo
19. Leia um número inteiro qualquer e determine se esse número é perfeito ou não. Um
número é perfeito quando a soma de seus divisores, excetuando- se o próprio número, for
igual ao número.
var
"Introduza o n"
s,n,i: inteiro
inicio n
leia(n)
n%i=0
para i de 1 ate n-1 faca Yes
No
fimse
"O numero e "O numero nao e
fimpara perfeito" perfeito"
se s=n entao
senao
fimse
fimalgoritmo
20. Determinar todos os números perfeitos existentes Inicio
entre 2 e 100.
Fim n de 1 ate 200
Algoritmo "Números perfeitos num certo intervalo "
s<-0
var
i de 1 ate n-1
n, i, s : inteiro
inicio Yes
n%i=0
s<-s+i
s<-0
n
s<-s+i
fimse
fimpara
se s=n então
escreva (n)
fimse
fimpara
fimalgoritmo
var
n, i, cont : inteiro
inicio
Escreva (" introduza o valor de n:")
leia(n)
cont<-0 Inicio
se n%i=0 entao
n
cont<- cont+1
cont<-0
fimse
i de 1 ate n
fimpara No
n Mod i = 0
s<-s+1
Yes
fimse
fimalgoritmo Fim
an<-a1+(n-1)*d
a1,d, an ,n :inteiro
inicio an
a1<-3 Fim
d<-2
Escreva (an)
fimpara
fimalgoritmo
24. Imprime os primeiros 100 termos da série de Fibonacci (1,1,2,3,5, … an-1 + an-2).
var t1<-1
t2<-1
inicio "T2", t2
t2<-1 tn<-t1+t2
t1<-t2
Escreva("t2:", t2) t2<-tn
tn<- t1+t2
t1<-t2
t2<-tn
fimpara
fimalgoritmo
Var
N,f1,f2,fn:inteiro
Inicio
leia(N)
"Digite o numero"
f1<-1
f2<-1 N
Fn<- f1+f2
fn<N
F1<-f2 No
Yes
F2<-Fn fn<-f1+f2
f1<-f2
f2<-fn
fimenquanto
Fimalgoritmo
Inicio
26. Leia N valores reais quaisquer e determine
o segundo menor dentre os valores "Introoduz a QTD"
Var qtd
n, menor,smenor: real
"Introduza um numero"
i, qtd: inteiro
Inicio
Escreval("Introduza QTD") n
Leia(qtd)
menor<-n
Escreva("Introduza um numero ")
Leia(n)
Leia(n)
n
Se (n<=menor) entao
smenor<-menor Yes No
n<=nemor
menor<-n
smenor<-menor
smenor<-n
Senao menor<-n
smenor<-n
Fimse
i<-3 i<-3
Yes
Leia(n)
Se (n<=menor) entao
"Introduza outro numero"
smenor<-menor
menor<-n
n
Senao
Se (n<=smenor) entao
smenor<-n
Yes No
n<=nemor
Fimse
i<-i+1 No
smenor<-n
Fimenquanto
Fimalgoritmo
i<-i+1
27. Ler dez grupos de valores para A, B e C (variáveis do tipo REAL). Para cada grupo de
valores o programa deve imprimir a equação no formato Ax2 + Bx + C = 0 e a respectiva
solução
Algoritmo “Ex. 27”
Inicio
Var
a, b, c, disc, x1, x2 : real Fim i de 1 ate 10
qtd, i, j: inteiro
Inicio "Equacao ", i
Escreval ("Equação", i)
a
Escreva("Introduza o valor de a: ")
"O valor de a
deve ser <> 0. Yes
Leia(a) a=0
Reintroduza"
No
Enquanto (a=0) faca
Escreva("O valor de a deve ser diferente de [Link]: ") a
Leia(a)
Fimenquanto
Escreva("Introduza o valor de b: ") "Introduza o valor
de b: "
Leia(b)
Escreva("Introduza o valor de c: ") b
Leia(c)
"Introduza o valor
disc<-b^2-4*a*c de c: "
Se (disc<0) entao
c
Escreval("A equação não admite raízes reais")
Senao disc<-b^2-4*a*c
escreva("(", a, ")x2 + (", b, ")x + (", c, ") = 0", " é: ") "A equacao nao Yes No
disc=0
admite raizes
Escreval("X =", -b/(2*a)) reais"
x2<- (-b+disc^(0.5))/(2*a)
"As solucoes da
Escreva("As soluções da equação ") equacao (", a, ")x^2+(",
b, ")x+(", c, ")=0, sao:
escreva("(", a, ")x2 + (", b, ")x + (", c, ") = 0", " são: ") x1=", x1, " e x2=", x2
Algoritmo "Factorial"
Inicio
Var
"Introduza
o numero"
n, i, fact: real
n
Inicio
No
Fim n>=0
Escreva("Introduza o numero ")
Yes
Leia(n) fact<-1
i<-1
fact<-1 Yes
fact<-fact*i
i<-i+1
i<-1
fact<-fact*i
"Introduza
i<-i+1 o numero"
Fimenquanto n
Leia(n)
Fimenquanto
Fimalgoritmo
29. Ler um número desconhecido de valores reais e imprimir todos os valores lidos, a soma
dos valores lidos e a média aritmética dos valores. O processamento encerra quando um
mesmo valor for lido duas vezes consecutivas, sem considerar uma destas leituras no
processamento.
Algoritmo "Ex.29"
Var
i: inteiro
Inicio Inicio
soma<-n n
media<-n soma<-n
media<-n
Escreva("Introduza outro número: ")
"Introduza outro
Leia(m) numero"
i<-2 m
Leia(m)
Fimenquanto
"A soma vale ", "A soma vale ",
Escreva("A soma vale ", soma, " e a média vale ", media) soma, " e a media soma, " e a media
vale ", media vale ", media
Fimse
Fimalgoritmo
Fim