Exercicios Portugol

1) Escreva um fluxograma e o algoritmo no Portugol Studio que recebe um número e em seguida informa se ele é ou não divisível por 7.
R:
programa
{
funcao inicio()
{
inteiro num

escreva("Digite um numero: ")
leia(num)

se (num % 7 == 0){
escreva("O ", num," é divisivel por 7")
}
senao{
escreva("O ", num," Não é divisivel por 7")

}

}
}


2) Uma empresa decide dar um aumento de 15% aos funcionários com salário inferior a R$ 862,00. Faça um fluxograma e o algoritmo no Portugol Studio que recebe o salário do funcionário e mostra o valor do salário reajustado ou uma mensagem, caso ele não tenha direito ao aumento. R:

programa
{
funcao inicio()
{
real salario, ajuste

escreva("Digite seu salário: ")
leia(salario)

se (salario <= 862){

ajuste = (salario * 0.15) + salario

escreva("Seu sálario ajustado é: ", ajuste)
}
senao{
escreva("infelizmente você não tem direito ao aumento :/")
}
}
}


3) Desenvolva um fluxograma e o algoritmo no Portugol Studio que recebe um número e informa se ele está dentro do intervalo fechado de 30 a 80 ou não.

programa
{
funcao inicio()
{
inteiro num

escreva("Digite um numero: ")
leia(num)

se(num >= 30 e num <= 80){
escreva(num, " está dentro de 30 e 80 :D")
}
senao{
escreva (num, " Não esta entre 30 e 80 :/")
}

}
}


 4) Faça um fluxograma e o algoritmo no Portugol Studio que recebe três números inteiros quaisquer e os apresenta em ordem decrescente.
programa
{
funcao inicio()
{
inteiro num1,num2,num3

escreva("Digite o primero numero:")
leia(num1)

escreva("Digite o segundo numero:")
leia(num2)

escreva("Digite o terceiro numero:")
leia(num3)

se( num1 > num2 e num2 > num3){
escreva(num1,num2,num3)
}

senao se(num2 > num1 e num1 > num3){
escreva(num2,num1,num3)
}
senao se(num2 > num3 e num3 > num1 ){
escreva(num2,num3,num1)
}
senao se(num1 < num2 e num1 > num3){
escreva(num1,num3,num2)
}
senao se(num3 > num2 e num1 < num2){
escreva(num3,num2,num1)
}
senao se(num3 > num1 e num1 > num2){
escreva(num3,num1,num2)
}





}
}


5) Desenvolva QUESTÕES QUE NECESSITAM DE ESTRUTURAS DE REPETIÇÃO.

programa
{
funcao inicio()
{
inteiro ano

escreva("Digite o ano: ")
leia(ano)

se(ano % 400 == 0 ou ano % 4==0 e ano % 100 != 0){
escreva(ano , " É bissexto")
}
senao{
escreva(ano , " Não é bissexto")
}
}
}
6) Elabore um algoritmo no Portugol Studio que calcula quantas notas de 50, 10 e 1 são necessárias para se pagar uma conta cujo valor inteiro é fornecido.

programa
{
funcao inicio()
{
inteiro conta, conta50, conta10, conta1

escreva("Digite o valor da conta: ")
leia(conta)

conta50 = conta / 50
conta10 = ( conta % 50 )/10
conta1 = ((conta % 50) %10 )/1

escreva("São necessário:\n",conta50," de cinquenta\n", conta10," de dez reais e \n", conta1, " de um real")
}
}

 7) Desenvolva um algoritmo no Portugol Studio que recebe duas notas, calcula e mostra a média ponderada dessas notas, considerando peso 4 para a primeira e peso 6 para a segunda.
programa
{
funcao inicio()
{
real nota1, nota2, result

escreva("Digite a primeira nota: ")
leia(nota1)

escreva("Digite a segunda nota: ")
leia(nota2)

result = ((nota1 * 4) + (nota2 * 6)) / (4 + 6)

escreva(result)
}
}
8) Faça um algoritmo no Portugol Studio que recebe um valor em bytes, calcula e mostra esse valor em gigabytes.
programa
{
funcao inicio()
{
real num, result

escreva("Digite um valor em bytes: ")
leia(num)

result = num / 3072

escreva("Convertido para GB é: ", result)
}
}
9) Escreva um algoritmo no Portugol Studio que recebe um número de três dígitos e o apresenta de forma invertida. Exemplo: 371 → 173. Dica: use o operador % (resto da divisão)

programa
{
funcao inicio()
{
inteiro num, numero = 0,numero2 =0

escreva("Digite um numero para ser invertido: ")
leia(num)

enquanto(num > 0){

numero2 = num % 10
//numero = numero * 10 + numero2
num /= 10
escreva(numero2)
}





}
}
10) Faça um algoritmo no Portugol Studio que recebe o peso e a altura de uma pessoa, calcula e mostra o seu IMC e a Faixa de Risco com base nas informações abaixo: IMC (peso/altura²) Faixa de Risco Abaixo de 20 Abaixo do peso. De 20 a 25 Peso normal. Acima de 25 até 30 Acima do peso. Acima de 30 Obesidade.

programa
{
funcao inicio()
{
real altura, IMC
inteiro peso

escreva("Digite seu peso: ")
    leia(peso)

    escreva("Digite sua altura:" )
    leia(altura)

IMC = (peso / (altura + altura) )

se(IMC < 20){
escreva("Abaixo do peso!")
}
senao se(IMC>=20 e IMC <= 25){
escreva("Peso normal! ")
}
senao se(IMC >= 25 e IMC <= 30){
escreva("Acima do peso!")
}
senao se(IMC >= 30){
escreva("Obesidade!")
}
 
}
}


11) Faça um algoritmo no Portugol Studio que recebe um número inteiro positivo e em seguida apresenta a tabuada de multiplicação desse número até
10 FAÇA O TESTE DE MESA. Exemplo da saída para a entrada 5: 5 x 1 = 5 5 x 2 = 10 5 x 3 = 15 5 x 4 = 20 5 x 5 = 25 5 x 6 = 30 5 x 7 = 35 5 x 8 = 40 5 x 9 = 45 5 x 10 = 50 12) Desenvolva um algoritmo no Portugol Studio que recebe
{
funcao inicio()
{
inteiro num, result

escreva("Digite um numero: ")
leia(num)

para(inteiro i = 1; i <= 10; i++){

result = num * i

escreva(num, " X " , i, " = ", result)
escreva("\n")

}


}
}

12) Desenvolva um algoritmo no Portugol Studio que recebe 12 números inteiros e em seguida mostra a média dos números pares que foram lidos. FAÇA O TESTE DE MESA.
programa
{
funcao inicio()
{
inteiro num
real media = 0.0, soma = 0.0, quant = 0.0

para(inteiro i = 1; i <=12; i++){

escreva("Digite o " ,i," numero: ")
leia(num)

se(num % 2 == 0){


quant++
soma += num
}


}
media = soma  / quant
escreva(media)


}
}


13) Escreva um algoritmo no Portugol Studio que recebe 10 números inteiros e apresenta o menor entre eles. FAÇA O TESTE DE MESA.
programa
{
funcao inicio()
{
inteiro num, menornumero, menor = 0

escreva("Digite o 1º numero: ")
leia(num)
menornumero = num

para(inteiro i = 2; i <= 10; i++){

escreva("Digite o ",i,"º numero: ")
leia(num)

se(num < menornumero){
menor = num

}
senao{
menor = menornumero
}
menornumero = menor
}
escreva("O menor dos numeros digitados eh: ",menor)
}
}

14)Crie um algoritmo no Portugol Studio que realiza o produto (multiplicação) de um número inteiro A positivo por um número inteiro B positivo, ou seja, A x B. Utilize apenas adições, NÃO UTILIZE o operador de multiplicação “*” na resolução do problema. FAÇA O TESTE DE MESA.
programa
{
funcao inicio()
{
inteiro num1, num2, result = 0

escreva("Digite o primeiro numero: ")
leia(num1)

escreva("Digite o segundo numeoro:")
leia(num2)


para(inteiro i = 0; i < num2; i++){
result = result + num1


}



escreva(num1, " x ", num2, " = ", result)
}
}

15) Faça um algoritmo no Portugol Studio que recebe um número inteiro positivo N e mostra na tela a seguinte sequência de números (FAÇA O TESTE DE MESA): 1 2 2 3 3 3 4 4 4 4 . . . N N N N ... N
programa
{
funcao inicio()
{
inteiro num, quant, j = 1

escreva("Digite um numero: ")
leia(num)

para(inteiro i = 1; i <= num; i++){

quant = j
enquanto(quant >= 1){

escreva(i)
quant--

}
j +=1
escreva("\n")
}

}
}
16)Crie um algoritmo no Portugol Studio que recebe vários valores positivos e ao final informa quantos números foram digitados. O programa acaba quando um valor negativo for digitado.
programa
{
funcao inicio()
{
inteiro num, quant = 0


escreva("Digite o numero: ")
leia(num)

enquanto (num >= 0){
quant++
escreva("Digite um numero: ")
leia(num)

}

escreva(quant)

}
}
17) Escreva um algoritmo no Portugol Studio que recebe vários números inteiros e apresenta o maior e o menor entre eles. O algoritmo para de receber números após a leitura do valor 0 (zero).
programa
{
funcao inicio()
{
inteiro num , maior = 0, menor = 0, nume

escreva("Digite o numero: ")
leia(num)

maior = num
menor = num

se(num > 0){
enquanto(num > 0){


escreva("Digite o numero: ")
leia(num)

se(num != 0){
se (num < menor){
menor = num
}
senao se(num > maior){
maior = num
}


}
}
}
escreva("numero maior é:  ",maior,"\nnumero menor é:  ", menor)

  }
}
18) Escreva um algoritmo no Portugol Studio que lê um número inteiro do teclado e, com o auxílio da estrutura enquanto...faça, informa se ele é triangular ou não. Dica: um número é considerado triangular quando é o resultado do produto de três números consecutivos. Exemplo: 24 é triangular, pois é o resultado da multiplicação de 2, 3 e 4, ou seja, 24 = 2 x 3 x 4.
programa
{
funcao inicio()
{
inteiro num, k = 0, j =0, i = 1, result1 = 0, h = 0

escreva("Digite um numero: ")
leia(num)

 
faca{

j = i + 1
k = j + 1
h = k + 1
result1 = k * j * h
i++

}
enquanto(result1 != num e result1 <= num)

se (result1 == num){

escreva("É triangular")
}
senao {
escreva("Não é triangular")
}

}
}
19) Em uma eleição para prefeito existem quatro candidatos. Os votos são informados por meio de um código. Os códigos utilizados são: CÓDIGO DESCRIÇÃO 1, 2, 3, 4 Votos para os respectivos candidatos. 5 Voto nulo. 6 Voto em branco. Escreva um algoritmo no Portugol Studio que calcule e mostre: • O total de votos para cada candidato; • O total de votos nulos; • O total de votos em branco; • A percentagem de votos nulos sobre o total de votos; • A percentagem de votos em branco sobre o total de votos. OBS.: a execução deve parar quando for digitado um valor negativo.

programa
{
funcao inicio()
{
inteiro cod, cod1 = 0, cod2 = 0, cod3 = 0, cod4 = 0, cod5 = 0, cod6 = 0, result = 0, result2
 
    escreva("\t *****ELEIÇÕES PARA PREFEITO*****\n")
escreva("\t Veja quais são os códigos e os informe abaixo:\n\n ")
escreva("1- Candidato 1 \n 2 - Candidato2 \n 3 - Candidato 3 \n 4 - Candidato 4 \n 5 - Votos nulos5 \n 6 - Votos em branco 6\n ")

faca{


escreva("\nInforme o código: ")
leia(cod)

se(cod == 1){
escreva("Informe os votos para o candidato 1: ")
leia(cod)
se(cod >=0){
cod1 = cod
}
}
se(cod == 2){
escreva("Informe os votos para o candidato 2: ")
leia(cod)
se(cod >=0){

cod2 = cod
}
}
senao se(cod == 3){
escreva("Informe os votos para o candidato 3: ")
leia(cod)
se(cod >=0){

cod3 = cod
}

}
senao se(cod == 4){
escreva("Informe os votos para o candidato 4: ")
leia(cod)
se(cod >=0){


cod4 = cod
}
}
senao se( cod == 5){
escreva("informe os votos nulos: ")
leia(cod)
se(cod >=0){

cod5 = cod
}
}
senao se(cod == 6){
escreva("informe os votos brancos: ")
leia(cod)

se(cod >=0){
cod6 = cod
}


}
} enquanto(cod >= 0)

limpa()

escreva("\t *** TOTAL DE VOTOS PARA CADA CANDIDATO, VOTOS NULOS E BRANCOS ***\n")
escreva(" 1 - Candidato 1 = ", cod1 ," \n 2 - Candidato2 = ", cod2,"  \n 3 - Candidato 3 = ", cod3, " \n 4 - Candidato 4 = ",cod4 )

escreva("\n Votos nulos: ", cod5)
escreva("\n Votos brancos: ", cod6)

escreva("\t\n *** PORCENTAGEM DOS VOTOS ***\n")

result = (cod5 * 100) / (cod1 + cod2 + cod3 + cod4 + cod6)
result2 = (cod6* 100) / (cod1 + cod2 + cod3 + cod4 + cod6)

escreva("\n Porcentagem de votos nulos no total de votos é: ", result,"%")
escreva("\n Porcentagem de votos em Branco no tatal de votos é: ", result2,"%")


}
}


 20) Faça um algoritmo no Portugol Studio que recebe duas notas de 10 alunos, calcula e mostra: • a média aritmética das duas notas de cada aluno; • a mensagem que está na tabela a seguir, de acordo com a média: Média Aritmética Mensagem Até 3,0 Reprovado Entre 3,0 e 7,0 Recuperação De 7,0 para cima Aprovado • o total de alunos aprovados; • o total de alunos em recuperação; • o total de alunos reprovados; • a média da classe. OBS.: a execução deve parar quando for digitada uma nota negativa

programa
{
funcao inicio()
{
real nota1, nota2 = 0.0, alu1 = 0.0 ,alu2 = 0.0,alu3= 0.0,alu4 = 0.0,alu5= 0.0,alu6= 0.0,alu7= 0.0,alu8= 0.0,alu9= 0.0,alu10= 0.0 , media =0.0, mediaC = 0.0
cadeia aluno1 = "",aluno2 = "",aluno3 = "",aluno4= "",aluno5= "",aluno6 = "",aluno7= "",aluno8 = "",aluno9 = "",aluno10 = ""
inteiro quantA = 0, quantR = 0, quantRE = 0, quant = 0, i = 1


escreva("Aluno ", i ,"\n")

escreva("Informe a primeira nota: ")
leia(nota1)

se(nota1 > 0){

escreva("Informe a segunda nota: ")
leia(nota2)

se(i == 1){
media = (nota1 + nota2) / 2
alu1 = media
quant++
se(alu1 >= 7){
aluno1 = " APROVADO"
quantA++

} se(alu1 >= 3 e alu1 < 7){
aluno1 = " RECUPERAÇÃO"
quantR++
}

se(alu1 < 3){
aluno1 = " REPROVADO"
quantRE++
}
}

se(nota2 > 0 ){

enquanto(nota1 >= 0 e nota2 >= 0){


i++

escreva("Aluno ", i ,"\n")


escreva("Informe a primeira nota: ")
leia(nota1)

se(nota1 > 0 ){

escreva("Informe a segunda nota: ")
leia(nota2)

se(nota2 > 0 ){
media = (nota1 + nota2) / 2



se(i == 2){
alu2 = media
quant++
se( alu2 >=7 ){
aluno2 = "APROVADO"
quantA++
}
se(alu2 >=3 e alu2 < 7){
aluno2 = "RECUPERAÇÃO"
quantR++
}
se( alu2 < 3){
aluno2 = "REPROVADO"
quantRE++
}
}
senao se(i == 3){
alu3 = media
quant++

se(alu3 >=7){
aluno3 = "APROVADO"
quantA++
}
se(alu3 >=3 e alu3 < 7){
aluno3 = "RECUPERAÇÃO"
quantR++
}
se(alu3 < 3){
aluno3 = "REPROVADO"
quantRE++
}
}
senao se(i == 4){
alu4 = media
quant++
se(alu4 >= 7){
aluno4 = "APROVADO"
quantA++
}
se(alu4 >= 3  e alu4 < 7){
aluno4 = "RECUPERAÇÃO"
quantR++
}
se(alu4 < 3){
aluno4 = "REPROVADO"
quantRE++
}

}
senao se(i==5){
alu5 = media
quant++
se(alu5 >= 7){
aluno5 = "APROVADO"
quantA++
}
se(alu5 >= 3  e alu5 < 7){
aluno5 = "RECUPERAÇÃO"
quantR++
}
se(alu4 < 3){
aluno5 = "REPROVADO"
quantRE++
}
   }
senao se(i==6){
alu6 = media
quant++
se(alu6 >= 7){
aluno6 = "APROVADO"
quantA++
}
se(alu6 >= 3  e alu6< 7){
aluno6 = "RECUPERAÇÃO"
quantR++
}
se(alu6 < 3){
aluno6 = "REPROVADO"
quantRE++
}
}
senao se (i == 7){
alu7 = media
quant++
se(alu7 >= 7){
aluno7 = "APROVADO"
quantA++
}
se(alu7 >= 3  e alu7 < 7){
aluno7 = "RECUPERAÇÃO"
quantR++
}
se(alu7 < 3){
aluno7 = "REPROVADO"
quantRE++
}
}
senao se(i == 8){
alu8 = media
quant++
se(alu8 >= 7){
aluno8 = "APROVADO"
quantA++
}
se(alu8 >= 3  e alu8 < 7){
aluno8 = "RECUPERAÇÃO"
quantR++
}
se(alu7 < 3){
aluno8 = "REPROVADO"
quantRE++
}
}
senao se(i == 9){
alu9 = media
quant++
se(alu9 >= 7){
aluno9 = "APROVADO"
quantA++
}
se(alu9 >= 3  e alu9 < 7){
aluno9 = "RECUPERAÇÃO"
quantR++
}
se(alu9 < 3){
aluno9 = "REPROVADO"
quantRE++
}
}
senao se(i == 10){
alu10 = media
quant++
se(alu10 >= 7){
aluno10 = "APROVADO"
quantA++
}
se(alu10 >= 3  e alu10 < 7){
aluno10 = "RECUPERAÇÃO"
quantR++
}
se(alu10 < 3){
aluno10 = "REPROVADO"
quantRE++
}
}


}

}
}
}
}

limpa()

escreva("Aluno 1, media = ", alu1," e Situação: ", aluno1," \n")
escreva("Aluno 2, media = ", alu2," e Situação: ", aluno2," \n")
escreva("Aluno 3, media = ", alu3," e Situação: ", aluno3," \n")
escreva("Aluno 4, media = ", alu4," e Situação: ", aluno4," \n")
escreva("Aluno 5, media = ", alu5," e Situação: ", aluno5," \n")
escreva("Aluno 6, media = ", alu6," e Situação: ", aluno6," \n")
escreva("Aluno 7, media = ", alu7," e Situação: ", aluno7," \n")
escreva("Aluno 8, media = ", alu8," e Situação: ", aluno8," \n")
escreva("Aluno 9, media = ", alu9," e Situação: ", aluno9," \n")
escreva("Aluno 10, media = ", alu10," e Situação: ", aluno10," \n")

escreva("\nQUANTIDADE DE ALUNOS APROVADOS = ", quantA)
escreva("\nQUANTIDADE DE ALUNOS EM REECUPERAÇÃO = ", quantR)
escreva("\nQUANTIDADE DE ALUNOS REPROVADOS = ", quantRE)

mediaC = (alu1 +alu2+ alu3+ alu4+ alu5+ alu6+ alu7+ alu8+ alu9+ alu10)/10
escreva("\nMÉDIA DA CLASSE = ",mediaC)
}
}














Comentários

Postagens mais visitadas