Introdução Dicas Visualg Atalhos Aula 2 - VisuAlg Exercício 1 Exercício 2 Exercício 3 Exercício 4 Aula 3 - VisuAlg Exercício 1 Exercício 2 Exercício 3 Exercício 4 Exercício 5 Aula 4 - VisuAlg Exercício 1 Exercício 2 Exercício 3 Exercício 4 Aula 5 - VisuAlg Exercício 1 Exercício 2 Exercício 3 Aula 6 - VisuAlg Exercício 1 Exercício 2 Exercício 3 Exercício 4 Exercício 5 Exercício 6 Exercício 7 Aula 7 - Python Exercício 1 Exercício 2 Exercício 3 Exercício 4 Aula 8 - Python Exercício 1 Exercício 2 Exercício 3 Exercício 4 Aula 9 - Python Exercício 1 Exercício 2 Exercício 3 Exercício 4 Exercício 5 Aula 10 - Python Exercício 1 Exercício 2 Exercício 3 Exercício 4 Exercício 5 Aula 11 - Python Exercício 1 Exercício 2 Exercício 3 Exercício 4 Aula 12 - Python Aula 13 - Python Exercício 1 Exercício 2 Exercício 3 Esta é a lista de exercícios da matéria de Programação Estruturada , do curso de Gestão de TI , feito na FAPAM - Faculdade de Pará de Minas .
De início estamos usando o Portugol Visualg, você pode baixar a versão 3.06 aqui , apenas para Windows.
Já existe a versão mais nova, a 3.07, porém ela é um pouco bugada e não permite a troca de temas da IDE (cores e visual)
Todos os códigos também vão estar em um repositório espelho no Github: https://github.com/mateusfg7/atividades-programacao-estruturada-fapam
Pra quem usa VSCode, pode instalar a extensão Design Líquido - Linguagens em Português para ter syntax hightlight em linguagens em português e outros dialetos de Portugol (Portugol Studio, Postugol VisuAlg, BRIL, êtc.).
Descrição Atalho Formatar automaticamente CTRL + G Rodar programa F9
Data : 15/02/2024
Escreva um algoritmo que leia as três notas do aluno, calcule e imprima no console a média que ele obteve na disciplina.
algoritmo "MediaNotas"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano Queiroz
// Descrição : Algoritmo que lê as três notas do aluno,
// calcula e imprima no console a média que
// ele obteve na disciplina.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 16/02/2024
var
primeira_nota : inteiro
segunda_nota : inteiro
terceira_nota : inteiro
media : real
loop : caractere
inicio
loop <- "sim"
enquanto ( loop = "sim" ) faca
limpatela ()
escreval ( "-----| NOTAS |-----" )
escreval ( "" )
escreva ( "Primeira Nota --- " )
leia ( primeira_nota )
escreva ( "Segunda Nota ---- " )
leia ( segunda_nota )
escreva ( "Terceira Nota --- " )
leia ( terceira_nota )
escreval ( "" )
media <- ( primeira_nota + segunda_nota + terceira_nota )/ 3
escreval ( "MÉDIA:" , media )
escreval ( "" )
escreval ( "-------------------" )
escreval ( "" )
escreval ( "Nova consulta? [sim|nao]" )
escreva ( "-> " )
leia ( loop )
fimenquanto
fimalgoritmo
Sabe-se que o m² de construção custa R$850. Escreva um algoritmo que leia as medidas de um terreno retangular e calcule e imprima quanto custa para construir uma casa que ocupe todo esse terreno.
Algoritmo "ValorM²"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano Queiroz
// Descrição : Algoritmo que lê as medidas de um
// terreno retangular e calcule e imprime quanto
// custa para construir uma casa que ocupe todo
// esse terreno.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 16/02/2024
Var
VALOR_METRO_QUADRADO : real
escolher_valor : caractere
altura_terreno : real
largura_terreno : real
Inicio
VALOR_METRO_QUADRADO <- 850
escreval ( "-| FORMULARIO |-------------------------" )
escreval ( "" )
escreval ( "Largura do terreno (m)" )
escreva ( "-> " )
leia ( largura_terreno )
escreval ( "" )
escreval ( "Altura do terreno (m)" )
escreva ( "-> " )
leia ( altura_terreno )
escreval ( "" )
escreval ( "Escolher valor do m²? (Padrão: R$850.00)" )
escreva ( "[sim|nao] -> " )
leia ( escolher_valor )
escreval ( "" )
se escolher_valor = "sim" entao
escreval ( "Valor do m² (Ex.: 900.00)" )
escreva ( "-> " )
leia ( VALOR_METRO_QUADRADO )
escreval ( "" )
fimse
escreval ( "-| RESULTADOS |-------------------------" )
escreval ( "" )
escreval ( "Tamanho do terreno =" , altura_terreno * largura_terreno , "m²" )
escreval ( "Custo de construção = R$" , ( altura_terreno * largura_terreno )* VALOR_METRO_QUADRADO )
escreval ( "" )
escreval ( "----------------------------------------" )
Fimalgoritmo
Escreva um algoritmo que leia o salário total de uma pessoa e quantas horas ela trabalha por dia, em seguida, calcule e imprima quanto essa pessoa recebe por hora. Considere o mês com 30 dias.
Algoritmo "CalcularSalario"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano Queiroz
// Descrição : Algoritmo que lê o salário total de
// uma pessoa e quantas horas ela trabalha por dia,
// e calcula e imprime quanto essa pessoa
// recebe por hora.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 16/02/2024
Var
DIAS_NO_MES : inteiro
dias_uteis : inteiro
salario : real
horas_por_dia : inteiro
horas_por_mes : inteiro
salario_por_hora : real
Inicio
DIAS_NO_MES <- 30
escreval ( "-| CALCULAR SALÁRIO |------" )
escreval ( "" )
escreval ( "Seu salário (Ex.: 1400.00)" )
escreva ( "-> " )
leia ( salario )
escreval ( "" )
escreval ( "Horas de trabalho (Ex.: 8)" )
escreva ( "-> " )
leia ( horas_por_dia )
escreval ( "" )
// 4 semanas no mês, sábado e domingo não conta, ou seja:
// 4*2 = 8 dias não úteis
dias_uteis <- DIAS_NO_MES - 8
horas_por_mes <- dias_uteis * horas_por_dia
salario_por_hora <- salario / horas_por_mes
escreva ( "Seu valor /hora = R$" , salario_por_hora )
escreval ( "" )
Fimalgoritmo
O exercício pede pra considerar 30 dias, e o cálculo de salário de uma pessoa considera fim de semanas e feriados, portando o código que calcula dias úteis é errado e desnecessário!
Escreva um algoritmo que peça ao usuário para informar o peso e a altura com o comando leia, depois calcule e imprima na tela o IMC dessa pessoa sabendo que a fórmula do IMC é (peso/altura²).
Algoritmo "CalculaIMC"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano Queiroz
// Descrição : Calcula IMC de uma pessoa
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 16/02/2024
Var
preso_em_km : real
altura_em_cm : inteiro
IMC : inteiro
Inicio
escreval ( "# CALCULADORA IMC ########" )
escreval ( "" )
escreval ( "Seu peso /Kg (Ex.: 59.9)" )
escreva ( "-> " )
leia ( preso_em_km )
escreval ( "" )
escreval ( "Altura /cm (Ex.: 170)" )
escreva ( "-> " )
leia ( altura_em_cm )
escreval ( "" )
escreval ( "# RESULTADOS #############" )
escreval ( "" )
escreval ( "Seu IMC =" , preso_em_km /(( altura_em_cm / 100 )^ 2 ))
escreval ( "" )
escreval ( "##########################" )
Fimalgoritmo
Data : 22/02/2024
Desenvolva um software que receba uma idade do usuário e imprima na tela se ele é maior de idade ou menor de idade.
Algoritmo "Idade"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano
// Descrição : Determina se o usuário é maior de idade ou não
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 23/02/2024
Var
idade : inteiro
Inicio
escreval ( "Sua idade" )
escreva ( "-> " )
leia ( idade )
escreval ( "" )
se ( idade >= 18 ) entao
escreva ( "Maior de idade" )
senao
escreva ( "Menor de idade" )
fimse
escreval ( "" )
Fimalgoritmo
Desenvolva um software que receba um nome e o sexo do usuário, após imprima na tela uma saudação conforme o sexo do usuário, EX: “Bem Vindo José” ou “Bem Vinda Maria”.
Algoritmo "Saudação"
// Disciplina: Programação Estruturada
// Professor: Adjenor Cristiano
// Descrição: Saudações
// Autor(a): Mateus Felipe Gonçalves <[email protected] >
// Data atual: 23/02/2024
Var
nome : caractere
sexo : caractere
Inicio
escreval ( "Seu nome" )
escreva ( "-> " )
leia ( nome )
escreval ( "" )
escreval ( "Seu sexo (apenas letra) | Ex.: M" )
escreval ( "[M] Masculino" )
escreval ( "[F] Feminino" )
escreva ( "-> " )
leia ( sexo )
escreval ( "" )
se ( sexo = "M" ) entao
escreva ( "Bem Vindo " , nome , "!" )
senao
escreva ( "Bem Vinda " , nome , "!" )
fimse
escreval ( "" )
Fimalgoritmo
Doar sangue é uma atitude muito importante, entretanto é preciso atender alguns requisitos para poder doar sangue.
Ter entre 19 e 69 anos de idade
Pesar ao menos 50 kg
Não ter feito nenhuma tatuagem no último ano
Não ter ingerido álcool nas últimas 12 horas.
Desenvolva um software que pergunte ao usuário se ele atende os requisitos necessários para doar sangue. Faça as perguntas uma por vez, caso a resposta dele o impeça de doar, avise-o e encerre o sistema. Se ele atender todos os requisitos, aviseo que ele pode ser doador.
Algoritmo "Doacao"
// Disciplina: Programação Estruturada
// Professor: Adjenor Cristiano
// Descrição: Verifica disponibilidade de doação
// Autor(a): Mateus Felipe Gonçalves <[email protected] >
// Data atual: 23/02/2024
Var
idade : inteiro
peso : real
fez_tatuagem : caractere
ingeriu_alcool : caractere
Inicio
escreval ( "Sua idade" )
escreva ( "-> " )
leia ( idade )
escreval ( "" )
se (( idade < 19 ) OU ( idade > 69 )) entao
escreval ( "Você deve ter entre 19 e 69 anos para doar sangue!" )
Fimalgoritmo
fimse
escreval ( "Seu peso (Kg)" )
escreva ( "-> " )
leia ( peso )
escreval ( "" )
se ( peso < 50 . 0 ) entao
escreval ( "Você deve ter pelomenos 50Kg para doar sangue!" )
Fimalgoritmo
fimse
escreval ( "Fez tatuagem no último ano" )
escreva ( "[sim|nao]-> " )
leia ( fez_tatuagem )
escreval ( "" )
se ( NAO ( fez_tatuagem = "nao" )) entao
escreval ( "Você não pode doar sangue se tiver feito tatuagem no último ano!" )
Fimalgoritmo
fimse
escreval ( "Ingeriu alcool nas últimas 12 horas" )
escreva ( "[sim|nao]-> " )
leia ( ingeriu_alcool )
escreval ( "" )
se ( NAO ( ingeriu_alcool = "nao" )) entao
escreval ( "Você não pode doar sangue se tiver bebido nas últimas 12 horas!" )
Fimalgoritmo
fimse
escreval ( "" )
escreval ( "Você pode ser um doador!" )
escreval ( "" )
Fimalgoritmo
Crie um software que ajude a polícia rodoviária federal calcular o valor das multas dos motoristas. O software deve perguntar ao usuário qual a velocidade permitida e qual a velocidade do motorista.
Se o motorista estiver acima da velocidade permitida, o software deve informar qual o tipo de infração e qual o valor da multa. Se o motorista estiver dentro do limite permitido, o programa encerra dizendo que ele não precisa pagar multa. Veja abaixo os valores de multas reajustados de infração por excesso de velocidade:
Exceder velocidade em até 20% (infração média) = R$85,00 + 4 pontos
Exceder velocidade de 20 até 50% (infração grave) = R$127,00 + 5 pontos;
Exceder velocidade acima de 50% (infração gravíssima) = R$574,00 + 7 pontos + apreensão da carteira + suspensão do direito de dirigir.
Algoritmo "CalcularMulta"
// Disciplina: Programação Estruturada
// Professor: Adjenor Cristiano
// Descrição: Calcular Multa
// Autor(a): Mateus Felipe Gonçalves <[email protected] >
// Data atual: 23/02/2024
Var
velocidade_permitida : inteiro
velocidade_motorista : inteiro
excedente : real
Inicio
escreval ( "Velocidade máxima permitida (Km/h)" )
escreva ( "-> " )
leia ( velocidade_permitida )
escreval ( "" )
escreval ( "Velocidade do motorista (Km/h)" )
escreva ( "-> " )
leia ( velocidade_motorista )
escreval ( "" )
escreval ( "---------------------------------" )
escreval ( "" )
se ( velocidade_motorista <= velocidade_permitida ) entao
escreva ( "Você não precisará pagar multa! ;)" )
senao
excedente <- (( velocidade_motorista - velocidade_permitida )/ velocidade_permitida )* 100
escreval ( "Você excedeu a velocidade máxima permitida em " , excedente : 2 : 0 , "%" )
escreval ( "" )
se ( excedente <= 20 . 0 ) entao
escreval ( "INFRAÇAO MÉDIA" )
escreval ( "" )
escreval ( "Sua multa é de R$85,00" )
escreval ( "+ 4 pontos" )
senao
se ( excedente <= 50 . 0 ) entao
escreval ( "INFRAÇAO GRAVE" )
escreval ( "" )
escreval ( "Sua multa é de R$127,00" )
escreval ( "+ 5 pontos" )
senao
escreval ( "INFRAÇAO GRAVÍSSIMA" )
escreval ( "" )
escreval ( "Sua multa é de R$574,00" )
escreval ( "+ 7 pontos" )
escreval ( "Suspensão do direito de dirigir" )
fimse
fimse
fimse
Fimalgoritmo
Uma loja de salgadinhos precisa de ajuda para calcular o valor da conta dos clientes. Crie um programa que leia o código do produto que o cliente comprou e a quantidade e informe a ele quanto ele deverá pagar. Faça uso da estrutura ESCOLHA-CASO. A Tabela abaixo apresenta o código, a descrição e o preço de cada salgadinho.
Código Descrição Preço unitário 1 Coxinha 0,50 2 Pastel 0,75 3 Pão de queijo 0,40 4 Enroladinho 0,80
Algoritmo "CalcularConta"
// Disciplina: Programação Estruturada
// Professor: Adjenor Cristiano
// Descrição: Calcula Conta do Cliente
// Autor(a): Mateus Felipe Gonçalves <[email protected] >
// Data atual: 23/02/2024
Var
id_do_produto : inteiro
quantidade : real
total : real
loop : caractere
Inicio
loop <- "sim"
enquanto ( loop = "sim" ) faca
loop <- "nao"
limpatela ()
escreval ( "+---------------------------------------+" )
escreval ( "| SALGADOS |" )
escreval ( "|---------------------------------------|" )
escreval ( "| Cód. | Salgado | Valor unitário |" )
escreval ( "|---------------------------------------|" )
escreval ( "| [1] | Coxinha | R$0,50 |" )
escreval ( "| [2] | Pastel | R$0,75 |" )
escreval ( "| [3] | Pão de Queijo | R$0,40 |" )
escreval ( "| [4] | Enroladinho | R$0,80 |" )
escreval ( "+---------------------------------------+" )
escreval ( "" )
escreva ( "Cód. -> " )
leia ( id_do_produto )
escreva ( "Qtd. -> " )
leia ( quantidade )
escolha id_do_produto
caso 1
total <- quantidade * 0 . 50
caso 2
total <- quantidade * 0 . 75
caso 3
total <- quantidade * 0 . 40
caso 4
total <- quantidade * 0 . 80
fimescolha
escreval ( "" )
escreval ( "TOTAL: R$" , total : 4 : 2 )
escreval ( "" )
escreval ( "Nova compra?" )
escreva ( "[sim|nao]-> " )
leia ( loop )
fimenquanto
Fimalgoritmo
Data : 29/02/2024
Crie um software que receba do usuário um valor inteiro e imprima na tela o mês do ano correspondente ao valor recebido (ex. recebendo o valor 1, o programa imprime “Janeiro”; recebendo o valor 2, o programa imprime “Fevereiro”...).
Algoritmo "Meses"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano
// Descrição : Imprime o mês referente à um ID
// Autor(a) : Mateus Felipe Gonçalves
// Data atual : 03/03/2024
Var
// Seção de declaração de variáveis
id : inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreval ( "Digite o número do mês" )
escreva ( "-> " )
leia ( id )
escreval ( "" )
escolha ( id )
caso 1
escreval ( "Janeiro" )
caso 2
escreval ( "Fevereiro" )
caso 3
escreval ( "Março" )
caso 4
escreval ( "Abril" )
caso 5
escreval ( "Maio" )
caso 6
escreval ( "Junho" )
caso 7
escreval ( "Julho" )
caso 8
escreval ( "Agosto" )
caso 9
escreval ( "Setembro" )
caso 10
escreval ( "Outubro" )
caso 11
escreval ( "Novembro" )
caso 12
escreval ( "Dezembro" )
outrocaso
escreval ( "ID Inválido!" )
fimescolha
Fimalgoritmo
Crie um software que receba do usuário um valor inteiro de 1 a 10 e imprima na tela o número por extenso. Se o usuário digitar um número maior que 10 ele deve imprimir “Valor Inválido”.
Algoritmo "Numero"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano Queiroz
// Descrição : Número por extenso
// Autor(a) : Mateus Felipe Gonçalves
// Data atual : 03/03/2024
Var
// Seção de declaração de variáveis
id : inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreval ( "Digite o número" )
escreva ( "-> " )
leia ( id )
escreval ( "" )
escolha ( id )
caso 1
escreval ( "Um" )
caso 2
escreval ( "Dois" )
caso 3
escreval ( "Três" )
caso 4
escreval ( "Quatro" )
caso 5
escreval ( "Cinco" )
caso 6
escreval ( "Seis" )
caso 7
escreval ( "Sete" )
caso 8
escreval ( "Oito" )
caso 9
escreval ( "Nove" )
caso 10
escreval ( "Dez" )
outrocaso
escreval ( "Valor inválido!" )
fimescolha
Fimalgoritmo
Desenvolva um software que receba o nome do usuário, o sexo, a cidade e o ano que ele nasceu e depois imprima na tela sua ficha cadastral utilizando “Sr” para homens e “Srª” para mulheres.
Considere apenas o ano para cálculo da idade (quem nasceu em 2002 considere que ele tem 22 anos, quem nasceu em 2001 considere 23...)
Ex: Ficha Cadastral
Sr: Adjenor Cristiano Queiroz
Idade: 22 anos
Cidade: Pará de Minas
Algoritmo "Ficha"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano
// Descrição : Imprime o mês referente à um ID
// Autor(a) : Mateus Felipe Gonçalves
// Data atual : 03/03/2024
Var
// Seção de declaração de variáveis
nome : caractere
sexo : caractere
cidade : caractere
ano_nasc : inteiro
comprimento : caractere
Inicio
escreval ( "Nome" )
escreva ( "-> " )
leia ( nome )
escreval ( "" )
escreval ( "Sexo [M|F]" )
escreva ( "-> " )
leia ( sexo )
escreval ( "" )
escreval ( "Cidade" )
escreva ( "-> " )
leia ( cidade )
escreval ( "" )
escreval ( "Ano de nascimento" )
escreva ( "-> " )
leia ( ano_nasc )
escreval ( "" )
se ano_nasc > 2024 entao
escreval ( "ERRO | O ano de nascimento não pode ser no futuro" )
interrompa ()
fimse
se maiusc ( sexo ) = "M" entao
comprimento <- "Sr."
senao
comprimento <- "Srª."
fimse
escreval ( "FICHA CADASTRAL" )
escreval ( comprimento , " -- " , nome )
escreval ( "Idade --" , 2024 - ano_nasc )
escreval ( "Cidade - " , cidade )
Fimalgoritmo
(DESAFIO) Desenvolva um Software para um restaurante que irá mostrar para o usuário um cardápio de refeições (com no mínimo 4 opções) para escolha:
Ex:
1 – Risotto ----- R$ 25,00
2 – Espaguete --- R$ 22,00
Depois pergunte a ele se ele deseja alguma bebida. Se ele desejar, mostre a ele um menu com as opções de bebida (ao menos 4).
Ex:
1 – Coca Cola -------- R$ 5,00
2 – Água Mineral ----- R$ 3,00
Ao final mostre a ele qual o seu pedido e o valor da conta.
Ex: PEDIDO:
Espaguete R$ 22,00
Coca Cola R$ 5,00
TOTAL: R$ 27,00.
Dica: Use uma variável do tipo caractere para armazenar os itens do pedido e uma variável real para armazenar os valores
Algoritmo "Cardápio"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano
// Descrição : Imprime o mês referente à um ID
// Autor(a) : Mateus Felipe Gonçalves
// Data atual : 03/03/2024
Var
prato : inteiro
bebida : inteiro
quer_bebida : caractere
total : real
Inicio
escreval ( "------------ PRATOS ------------" )
escreval ( "[1] Risoto ------------- R$25,00" )
escreval ( "[2] Espaguete ---------- R$22,00" )
escreval ( "[3] Strogonoff --------- R$30,00" )
escreval ( "[4] Macarrão na Chapa -- R$20,00" )
escreval ( "" )
escreva ( "-> " )
leia ( prato )
escreval ( "" )
escreval ( "Aceita uma bebida? [S|N]" )
escreva ( "-> " )
leia ( quer_bebida )
escreval ( "" )
se maiusc ( quer_bebida ) = "S" entao
escreval ( "--------- BEBIDAS ---------" )
escreval ( "[1] Água Mineral -- R$ 3,00" )
escreval ( "[2] Coca Cola ----- R$ 5,00" )
escreval ( "[3] Limonada ------ R$ 5,00" )
escreval ( "[4] Jack&Coffee --- R$25,00" )
escreval ( "" )
escreva ( "-> " )
leia ( bebida )
escreval ( "" )
fimse
escreval ( "---------- PEDIDO ----------" )
escolha ( prato )
caso 1
total <- 25 . 00
escreval ( "Risoto ------------- R$25,00" )
caso 2
total <- 22 . 00
escreval ( "Espaguete ---------- R$22,00" )
caso 3
total <- 30 . 00
escreval ( "Strogonoff --------- R$30,00" )
caso 4
total <- 20 . 00
escreval ( "Macarrão na Chapa -- R$20,00" )
fimescolha
se maiusc ( quer_bebida ) = "S" entao
escolha ( bebida )
caso 1
total <- total + 3 . 00
escreval ( "Água Mineral ------- R$ 3,00" )
caso 2
total <- total + 5 . 00
escreval ( "Coca Cola ---------- R$ 5,00" )
caso 3
total <- total + 5 . 00
escreval ( "Limonada ----------- R$ 5,00" )
caso 4
total <- total + 25 . 00
escreval ( "Jack&Coffee -------- R$25,00" )
fimescolha
fimse
escreval ( "" )
escreval ( "TOTAL: R$" , total : 2 : 2 )
Fimalgoritmo
Data : 05/03/2024
Desenvolva um software em que receberá alguns números fornecidos pelo usuário, enquanto ele quiser continuar digitando números (a cada interação pergunte ao usuário se ele deseja continuar a soma), e ao final, exiba o resultado da soma dos números digitados na tela.
Algoritmo "SomaNumeros"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristino
// Descrição : Soma vários números fornecidos pelo usuário
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 08/03/2024
Var
soma : inteiro
numero : inteiro
continuar : caractere
primeira_interacao : logico
Inicio
continuar <- "SIM"
primeira_interacao <- verdadeiro
numero <- 0
soma <- 0
enquanto ( maiusc ( continuar ) = "SIM" ) faca
limpatela ()
se ( primeira_interacao ) entao
primeira_interacao <- falso
escreval ( "Digite um número" )
escreva ( "-> " )
leia ( numero )
senao
escreval ( "Digite mais um número" )
escreva ( "-> " )
leia ( numero )
fimse
soma <- soma + numero
escreval ()
escreval ( "Deseja somar mais um número?" )
escreva ( "-> " )
leia ( continuar )
fimenquanto
limpatela ()
escreval ( "Resultado da soma:" )
escreval ()
escreval ( " [" , soma , " ] " )
Fimalgoritmo
Desenvolva um software em que receba uma quantidade do usuário e imprima na tela essa quantidade de vezes “Programação é nossa melhor matéria!”.
Algoritmo "ProgramacaoMelhorMateria"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristino
// Descrição : Imprime uma mensagem N vezes
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 08/03/2024
Var
quantidade : inteiro
contador : inteiro
certeza : caractere
Inicio
certeza <- "NÃO"
quantidade <- 0
contador <- 0
enquanto (( maiusc ( certeza ) = "NÃO" ) OU ( maiusc ( certeza ) = "NAO" )) faca
limpatela ()
escreval ( "Digite o número de vezes" )
escreva ( "-> " )
leia ( quantidade )
se ( quantidade > 100 ) entao
escreval ()
escreval ( "A mensagem será repedita" , quantidade , " vezes!" )
escreval ( "Você tem certeza que quer continuar?" )
escreva ( "-> " )
leia ( certeza )
senao
certeza <- "SIM"
fimse
fimenquanto
limpatela ()
enquanto ( contador <= quantidade ) faca
contador <- contador + 1
escreval ( "Programação é a melhor matéria!" )
fimenquanto
Fimalgoritmo
Atualize o software do exercício da Lanchonete de modo que o usuário possa fazer um pedido de vários itens no mesmo pedido. Quando ele desejar finalizar o pedido o sistema irá imprimir na tela a lista de produtos comprados e o valor da conta.
Dicas:
Trabalhe dentro de um laço de repetição enquanto.
Utilize uma variável do tipo caractere para armazenar os dados do pedido e a cada novo item adicionado, concatene a variável com ela mesma.
Ex: produtos <- produtos + " 1 - COXINHA: R$ 6,00 | "
Algoritmo "Cardápio"
// Disciplina : Programação Estruturada
// Professor : Adjenor Cristiano
// Descrição : Cardápio de lanchonete
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 08/03/2024
Var
prato : inteiro
pedido : caractere
total : real
encerrar : logico
primeira_iteracao : logico
Inicio
encerrar <- falso
primeira_iteracao <- verdadeiro
enquanto ( nao ( encerrar )) faca
limpatela ()
se ( primeira_iteracao ) entao
primeira_iteracao <- falso
senao
escreval ( "Quer pedir mais alguma coisa?" )
escreval ( "Valor total: R$ " , total : 2 : 2 )
escreval ()
fimse
escreval ( "------------ PRATOS ------------" )
escreval ( "[1] Risoto ------------- R$25,00" )
escreval ( "[2] Espaguete ---------- R$22,00" )
escreval ( "[3] Strogonoff --------- R$30,00" )
escreval ( "[4] Macarrão na Chapa -- R$20,00" )
escreval ( "--------------------------------" )
escreval ( "[5] ENCERRAR PEDIDO" )
escreval ( "--------------------------------" )
escreval ()
escreva ( "-> " )
leia ( prato )
escolha ( prato )
caso 1
total <- total + 25 . 00
pedido <- pedido + "Risoto - R$25,00 | "
caso 2
total <- total + 22 . 00
pedido <- pedido + "Espaguete - R$22,00 | "
caso 3
total <- total + 30 . 00
pedido <- pedido + "Strogonoff - R$30,00 | "
caso 4
total <- total + 20 . 00
pedido <- pedido + "Macarrão na Chapa - R$20,00 | "
caso 5
encerrar <- verdadeiro
fimescolha
fimenquanto
limpatela ()
escreval ( "-- PEDIDO ------------" )
escreval ()
escreval ( "| " , pedido )
escreval ()
escreval ( "TOTAL: [ R$" , total : 2 : 2 , " ]" )
escreval ()
Fimalgoritmo
Data : 12/03/2024
Escreva um algoritmo para imprimir os 10 primeiros números inteiros maiores que 100.
Algoritmo "DezNumerosMaioresQue100"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Imprime os 10 primeiros números inteiros maiores que 100.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
numero : Inteiro
Inicio
para numero de 100 ate 110 faca
escreval ( numero )
fimpara
Fimalgoritmo
Escreva um algoritmo que imprima os números pares de 1 a 100. Utilize o sinal de % para verificar o resto da divisão.
Algoritmo "NumerosParesAte100"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Imprime os números pares de 1 a 100.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
numero : Inteiro
Inicio
para numero de 1 ate 100 faca
se numero % 2 = 0 entao
escreval ( numero )
fimse
fimpara
Fimalgoritmo
Escreva um algoritmo que pergunte ao usuário quantos números ele quer imprimir na tela. Se o usuário digitar um número maior que 30, interrompa o laço de repetição e imprima na tela uma mensagem para o usuário.
Algoritmo "NumerosPersonalizados"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Pergunta ao usuário quantos números ele
// quer imprimir e interrompe se for mais que 30.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
contador , quantidade : Inteiro
Inicio
escreval ( "Quantos números você deseja imprimir?" )
escreva ( "-> " )
leia ( quantidade )
para contador de 1 ate quantidade faca
se quantidade > 30 entao
escreval ( "Número muito grande! O máximo permitido é 30." )
interrompa
senao
escreval ( contador )
fimse
fimpara
Fimalgoritmo
Escreva um algoritmo receba um número do usuário e imprima na tela os próximos 10 números múltiplos de 5. Utilize o comando INTERROMPA para sair do loop.
Algoritmo "ProximosMultiplosDe5"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Imprime os próximos 10 números múltiplos de 5 a partir de um Número fornecido pelo usuário.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
numero , contador : Inteiro
Inicio
escreva ( "Digite um Número: " )
leia ( numero )
para contador de 1 ate 10 faca
se numero % 5 = 0 entao
escreval ( numero )
numero <- numero + 5
senao
numero <- numero + 1
fimse
fimpara
Fimalgoritmo
Escreva um algoritmo receba do usuário um número, depois receba do usuário uma opção (P para Par ou I para Ímpar) e imprima na tela todos os números de 0 até o número escolhido respeitando a opção escolhida (par ou ímpar). Ex: se o usuário digitar 6 e escolher ímpar, o sistema deve imprimir: 1 - 3 - 5
Algoritmo "ProximosMultiplosDe5"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Imprime os próximos 10 números múltiplos de 5 a partir de um Número fornecido pelo usuário.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
numero , contador : Inteiro
Inicio
escreva ( "Digite um Número: " )
leia ( numero )
para contador de 1 ate 10 faca
se numero % 5 = 0 entao
escreval ( numero )
numero <- numero + 5
senao
numero <- numero + 1
fimse
fimpara
Fimalgoritmo
Reescreva o código do exercício anterior de modo que a impressão dos números seja escrita em ordem decrescente. Ex: se o usuário digitar 6 e escolher ímpar, o sistema deve imprimir: 5 - 3 - 1
.
Algoritmo "NumerosParImparDecrescente"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Imprime números pares ou ímpares em ordem decrescente até o Número escolhido pelo usuário.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
numero , contador : inteiro
opcao : caractere
Inicio
escreva ( "Digite um Número: " )
leia ( numero )
escreva ( "Escolha uma opção (P para Par ou I para ímpar): " )
leia ( opcao )
para contador de numero ate 0 passo - 1 faca
se ( maiusc ( opcao ) = "P" ) entao
se ( contador % 2 = 0 ) entao
escreval ( contador )
fimse
senao se ( maiusc ( opcao ) = "I" ) entao
se ( contador % 2 <> 0 ) entao
escreval ( contador )
fimse
fimse
fimpara
Fimalgoritmo
Escreva um algoritmo para pedidos de uma loja de calçados. O algoritmo deve mostrar um menu com ao menos 4 produtos predefinidos e oferecer ao usuário a opção de selecionar mais de um produto ou encerrar o pedido (similar ao exercício do restaurante). Ao final o algoritmo deve mostrar o resumo da compra e o valor total (formatado em reais).
Algoritmo "PedidoLojaCalcados"
// Disciplina : Programação Estruturada
// Professor : Adjenor
// Descrição : Sistema de pedidos de uma loja de calçados.
// Autor(a) : Mateus Felipe Gonçalves <[email protected] >
// Data atual : 19/03/2024
Var
opcao : caractere
valor_total : real
Inicio
valor_total <- 0
repita
limpatela ()
escreval ( "MENU DE PRODUTOS:" )
escreval ( "1 - Tênis Adidas: R$ 199.99" )
escreval ( "2 - Chinelo Nike: R$ 49.99" )
escreval ( "3 - Bota Timberland: R$ 299.99" )
escreval ( "4 - Sandália Havaianas: R$ 29.99" )
escreval ( "0 - Encerrar pedido" )
escreva ( "Escolha um produto ou 0 para encerrar: " )
leia ( opcao )
escolha opcao
caso "1"
valor_total <- valor_total + 199 . 99
caso "2"
valor_total <- valor_total + 49 . 99
caso "3"
valor_total <- valor_total + 299 . 99
caso "4"
valor_total <- valor_total + 29 . 99
fimEscolha
ate opcao = "0"
limpatela ()
se valor_total > 0 entao
escreval ( "RESUMO DA COMPRA:" )
escreval ( "Valor total: R$" , valor_total : 0 : 2 )
senao
escreval ( "Nenhum produto foi selecionado. Pedido cancelado." )
fimse
Fimalgoritmo
Data : 26/03/2024
Escreva um programa que leia as três notas do aluno e calcule e imprima no console a média que ele obteve na disciplina.
"""
Lê três notas do aluno, calcula e imprime a média no console.
Aluno: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Curso: Gestão da Tecnologia da Informação
Matéria: Programação Estruturada
Turma: 1º Período - B
Data: 27/03/2024
"""
# Lê as notas do aluno
nota1 = float ( input ( "Digite a primeira nota: " ))
nota2 = float ( input ( "Digite a segunda nota: " ))
nota3 = float ( input ( "Digite a terceira nota: " ))
# Calcula a média
media = (nota1 + nota2 + nota3) / 3
# Imprime a média
print ( f "A média do aluno é { media :.2f } " )
Sabe-se que o m² de construção custa R$850. Escreva um programa que leia as medidas de um terreno retangular e calcula e imprime quanto custa para construir uma casa que ocupe esse terreno.
"""
Programa que lê as medidas de um terreno retangular e calcula e imprime quanto custa
para construir uma casa que ocupe esse terreno. O m² de construção custa R$ 850,00.
Aluno: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Curso: Gestão da Tecnologia da Informação
Matéria: Programação Estruturada
Turma: 1º Período - B
Data: 27/03/2024
"""
# Lê as medidas do terreno
largura = float ( input ( "Digite a largura do terreno: " ))
comprimento = float ( input ( "Digite o comprimento do terreno: " ))
# Calcula a área do terreno
area = largura * comprimento
# Calcula o custo da construção
custo = area * 850
# Imprime o custo da construção
print ( f "O custo para construir uma casa nesse terreno é R$ { custo :.2f } " )
Escreva um programa que leia o salário total de uma pessoa e quantas horas ela trabalha por dia. Em seguida, calcule e imprima quanto essa pessoa recebe por hora. Considere o mês com 30 dias.
"""
Programa que lê o salário total de uma pessoa e quantas horas ela trabalha por dia.
Em seguida, calcula e imprime quanto essa pessoa recebe por hora.
Aluno: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Curso: Gestão da Tecnologia da Informação
Matéria: Programação Estruturada
Turma: 1º Período - B
Data: 27/03/2024
"""
# Lê o salário total
salario = float ( input ( "Digite o salário total \n -> " ))
# Lê a quantidade de horas trabalhadas por dia
horas_por_dia = float ( input ( "Digite a quantidade de horas trabalhadas por dia \n -> " ))
# Calcula horas trabalhadas no mês
horas_por_mes = horas_por_dia * 30
# Calcula o valor da hora
valor_hora = salario / horas_por_mes
# Imprime o valor da hora
print ( f " \n O valor da hora é R$ { valor_hora :.2f } " )
Escreva um programa que peça ao usuário para informar o peso e a altura com o comando leia, depois calcule e imprima na tela o IMC dessa pessoa sabendo que a fórmula do IMC é (peso/altura²).
"""
Programa que pede ao usuário para informar o peso e a altura com o comando leia, depois
calcula e imprime na tela o IMC dessa pessoa sabendo que a fórmula do IMC é (peso/altura²).
Aluno: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Curso: Gestão da Tecnologia da Informação
Matéria: Programação Estruturada
Turma: 1º Período - B
Data: 27/03/2024
"""
# Lê o peso
peso = float ( input ( "Digite o peso (kg) \n -> " ))
# Lê a altura
altura_cm = float ( input ( "Digite a altura (cm) \n -> " ))
# Calcula o IMC
imc = peso / (altura_cm / 100 ) ** 2
# Imprime o IMC
print ( f " \n O IMC é { imc :.2f } " )
Data : 02/04/2024
Desenvolva um software que receba uma string do usuário e depois solicite a ele quantas letras da string ele quer que sejam separadas, depois imprima na tela as duas partes da string.
EX: se o usuário digitar “Faculdade” e o número 5, o software deve retornar:
Primeira Parte: “Facul”
Segunda Parta: “dade”
class bcolors :
HEADER = ' \033 [95m'
OKBLUE = ' \033 [94m'
OKCYAN = ' \033 [96m'
OKGREEN = ' \033 [92m'
WARNING = ' \033 [93m'
FAIL = ' \033 [91m'
ENDC = ' \033 [0m'
BOLD = ' \033 [1m'
UNDERLINE = ' \033 [4m'
text = input ( "Texto a ser dividido: " )
position = input ( "Posição de divisão da string: " )
if not text or not position:
print ( f " \n{ bcolors. FAIL} Quantidade de parâmetros insuficientes ou inválidos! { bcolors. ENDC} " )
quit ()
position = int (position)
if position > len (text):
print ( f " \n{ bcolors. FAIL} Posição de divisão maior que o tamanho do texto! { bcolors. ENDC} " )
print ( f "Tamanho do texto: { bcolors. BOLD}{len (text) }{ bcolors. ENDC} " )
print ( f "Posição de divisão: { bcolors. BOLD}{ position }{ bcolors. ENDC} " )
quit ()
first_part, second_part = text[:position], text[position:]
print ( f " \n{ bcolors. OKGREEN} Primeira parte: { bcolors. ENDC} { bcolors. BOLD}{ first_part }{ bcolors. ENDC} " )
print ( f " { bcolors. OKGREEN} Segunda parte: { bcolors. ENDC} { bcolors. BOLD}{ second_part }{ bcolors. ENDC} " )
Desenvolva um software que receba do usuário seu nome, seu sobrenome e uma quantidade. Depois solicite a ele quantas vezes ele deseja imprimir o conjunto (nome e sobrenome) e imprima na tela essa quantidade de vezes. Utilize \n
para quebra de linha.
from os import system, name
nome = input ( "Digite seu nome: " )
sobrenome = input ( "Digite seu sobrenome: " )
n = int ( input ( "Número de repetições: " ))
# limpa terminal
if name == 'nt' :
# windows
system( 'cls' )
else :
# outros unix (linux, mac...)
system( 'clear' )
for i in range (n):
print ( f " { nome } { sobrenome } " )
Desenvolva um software que receba do usuário um valor e imprima na tela este valor formatado para reais (R$) utilizando composição.
valor = float ( input ( 'Digite o valor: ' ))
print ( "R$ %.2f " % valor)
Desenvolva um software que receba do usuário um valor de compra, depois receba um valor em dinheiro e calcule o troco e imprima na tela este valor formatado para reais (R$) utilizando composição.
valor_compra = float ( input ( 'Digite o valor da compra: ' ))
valor_pago = float ( input ( 'Digite o valor pago: ' ))
troco = valor_pago - valor_compra
if troco < 0 :
print ( ' \n Valor pago insuficiente, falta R$ %.2f .' % abs (troco))
else :
print ( ' \n Troco: R$ %.2f ' % troco)
Data : 09/04/2024
Desenvolva um software que leia dois números e que pergunte qual operação você deseja realizar. Você deve poder calcular a soma (+
), subtração (-
), multiplicação (*
) e divisão (/
). Exiba o resultado da operação solicitada.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 10/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
# lê dois números e uma operação
num1 = float ( input ( "Digite o primeiro número: " ))
num2 = float ( input ( "Digite o segundo número: " ))
operacao = input ( "Digite a operação [+|-|*|/]: " )
# exiba o resultado da operação solicidada
if operacao == "+" :
print ( f "O resultado da soma é: { num1 + num2 } " )
elif operacao == "-" :
print ( f "O resultado da subtração é: { num1 - num2 } " )
elif operacao == "*" :
print ( f "O resultado da multiplicação é: { num1 * num2 } " )
elif operacao == "/" :
# 0 não pode ser dividido
if num2 == 0 :
print ( "Não é possível dividir por zero." )
else :
print ( f "O resultado da divisão é: { num1 / num2 } " )
else :
print ( "Operação inválida." )
Desenvolva um software para aprovar o empréstimo bancário para compra de uma casa. O programa deve perguntar o valor da casa a comprar, o salário e a quantidade de anos a pagar. O valor da prestação mensal não pode ser superior a 30% do salário. Calcule o valor da prestação como sendo o valor da casa a comprar dividido pelo número de meses a pagar.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 10/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
valor_casa = float ( input ( "Digite o valor da casa: R$ " ).strip().replace( "," , "." ))
salario = float ( input ( "Digite o salário: R$ " ).strip().replace( "," , "." ))
anos = int ( input ( "Digite a quantidade de anos a pagar: " ))
meses = anos * 12
prestacao = valor_casa / meses
if prestacao > (salario * 0.3 ):
print ( "Empréstimo negado." )
else :
print ( f "Empréstimo aprovado. A prestação será de R$ { prestacao :.2f } ." )
Desenvolva um software de lanchonete que apresente para o cliente um menu com ao menos 4 opções de salgado para que ele escolha, depois apresente ao menos 4 opções de bebidas. Ao final, o software deve mostrar na tela o valor total da compra e os itens comprados.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 10/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
# menu com 4 opções de salgados
print ( "+------ MENU SALGADOS -------+" )
print ( "| [1] Coxinha ------ R$ 3,50 |" )
print ( "| [2] Pastel ------- R$ 4,00 |" )
print ( "| [3] Empada ------- R$ 3,00 |" )
print ( "| [4] Enroladinho -- R$ 2,50 |" )
print ( "+----------------------------+" )
salgado = int ( input ( "-> " ))
if salgado < 1 or salgado > 4 :
print ( "Opção inválida." )
exit ()
# menu com 4 opções de bebidas
print ( " \n +------ MENU BEBIDAS --------+" )
print ( "| [1] Refrigerante - R$ 3,00 |" )
print ( "| [2] Suco --------- R$ 2,50 |" )
print ( "| [3] Água --------- R$ 2,00 |" )
print ( "| [4] Chá ---------- R$ 2,50 |" )
print ( "+----------------------------+" )
bebida = int ( input ( "-> " ))
if bebida < 1 or bebida > 4 :
print ( "Opção inválida." )
exit ()
# cálculo do valor total
total = 0
if salgado == 1 :
total += 3.50
elif salgado == 2 :
total += 4.00
elif salgado == 3 :
total += 3.00
elif salgado == 4 :
total += 2.50
if bebida == 1 :
total += 3.00
elif bebida == 2 :
total += 2.50
elif bebida == 3 :
total += 2.00
elif bebida == 4 :
total += 2.50
print ( " \n Total a pagar: R$ %.2f " % total)
Desenvolva um software para analisar se um aluno foi aprovado. O software deve receber 4 notas (entre 0 e 25) e ao final atestar as seguintes possibilidades:
Se o total for maior ou igual 80 - ALUNO APROVADO - EXCELENTE
Se o total for entre 60 e 79 - ALUNO APROVADO
Se o total for entre 40 e 59 - ALUNO EM RECUPERAÇÃO
Se o total for menor que 40 - ALUNO REPROVADO
Se alguma das notas estiver fora do intervalo (entre 0 e 25) o software deve exibir a mensagem de “Valor inválido” e encerrar.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 11/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
nota1 = float ( input ( "Nota 1: " ))
nota2 = float ( input ( "Nota 2: " ))
nota3 = float ( input ( "Nota 3: " ))
nota4 = float ( input ( "Nota 4: " ))
if nota1 < 0 or nota1 > 25 :
print ( "Valor inválido." )
exit ()
elif nota2 < 0 or nota2 > 25 :
print ( "Valor inválido." )
exit ()
elif nota3 < 0 or nota3 > 25 :
print ( "Valor inválido." )
exit ()
elif nota4 < 0 or nota4 > 25 :
print ( "Valor inválido." )
exit ()
total = nota1 + nota2 + nota3 + nota4
if total >= 80 :
print ( "ALUNO APROVADO - EXCELENTE" )
elif total >= 60 :
print ( "ALUNO APROVADO" )
elif total >= 40 :
print ( "ALUNO EM RECUPERAÇÃO" )
else :
print ( "ALUNO REPROVADO" )
Escreva um programa que calcule o preço pelo fornecimento de energia elétrica. Pergunte a quantidade de kWh consumidos e o tipo de instalação: R para residências, I para indústrias e C para comércios. Calcule o preço a pagar de acordo com a tabela a seguir:
Residências:
Até 500 kWh: R$ 0,40
Acima de 500 kWh: R$ 0,65
Comércios:
Até 1000 kWh: R$ 0,55
Acima de 1000 kWh: R$ 0,60
Indústrias:
Até 5000 kWh: R$ 0,55
Acima de 5000 kWh: R$ 0,60
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 11/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
kwh = int ( input ( "Quantidade de kWh consumido: " ))
print ( " \n +- TIPO DE INSTALAÇÃO -+" )
print ( "| [R] Residencial |" )
print ( "| [C] Comercial |" )
print ( "| [I] Industrial |" )
print ( "+----------------------+" )
instalacao = input ( "-> " ).upper()
total = 0
if instalacao == "R" :
if kwh <= 500 :
total = kwh * 0.40
else :
total = kwh * 0.65
elif instalacao == "C" :
if kwh <= 1000 :
total = kwh * 0.55
else :
total = kwh * 0.60
elif instalacao == "I" :
if kwh <= 5000 :
total = kwh * 0.55
else :
total = kwh * 0.60
else :
print ( "Tipo de instalação inválido." )
exit ()
print ( " \n Total a pagar: R$ %.2f " % total)
Data : 16/04/2024
Desenvolva um software que receba do usuário uma quantidade e imprima na tela todos os números pares de 0 até o número digitado.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 21/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
limite = int ( input ( "Digite um número \n -> " ))
for n in range ( 0 , limite + 1 , 2 ):
print (n)
Altere o software do exercício anterior para que o sistema receba também um tipo (P para Pares e I para Impares) e imprima apenas os números de acordo com a escolha.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 21/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
limite = int ( input ( "Digite um número \n -> " ))
opcao = input ( " \n Opção | [P]ar ou [I]mpar \n -> " ).upper()
print ()
if opcao == "P" :
for i in range ( 0 , limite + 1 , 2 ):
print (i)
elif opcao == "I" :
for i in range ( 1 , limite + 1 , 2 ):
print (i)
Valide a opção digitada, caso o usuário digite um valor diferente se P ou I, solicite a ele que digite novamente. DICA: Utilize repetições aninhadas.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 21/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
limite = int ( input ( "Digite um número \n -> " ))
opcoes_validas = [ "P" , "I" ]
opcao = ""
while opcao not in opcoes_validas:
opcao = input ( " \n Opção | [P]ar ou [I]mpar \n -> " ).upper()
if opcao not in opcoes_validas:
print ( "Opção inválida. Tente novamente." )
print ()
if opcao == "P" :
for i in range ( 0 , limite + 1 , 2 ):
print (i)
elif opcao == "I" :
for i in range ( 1 , limite + 1 , 2 ):
print (i)
Escreva um programa que leia um número e verifique se é ou não um número primo. Para fazer essa verificação, calcule o resto da divisão do número por 2 e depois por todos os números ímpares até o número lido. Se o resto de uma dessas divisões for igual a zero, o número não é primo. Observe que 0 e 1 não são primos e que 2 é o único número primo que é par.
import sys
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 21/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
def e_primo (primo: bool = True ):
if primo:
print ( f " { numero } é primo." )
else :
print ( f " { numero } não é primo." )
sys.exit()
numero = int ( input ( "Digite um número \n -> " ))
if numero < 2 :
e_primo( primo = False )
primo = True
for i in range ( 2 , numero):
if numero % i == 0 :
primo = False
break
e_primo(primo)
Desenvolva um software de restaurante que apresente ao menos 4 tipos de produtos e a opção de finalizar o pedido. O software deve perguntar ao usuário se ele deseja adicionar outro produto Ao final ele deve mostrar na tela todos os produtos que o cliente comprou e o total do pedido.
DICA : Utilize uma variável String para armazenar os produtos escolhidos e uma variável float para armazenar o total do pedido. Apresente o total formatado para Real.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 21/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
total = 0.0
pedidos = []
while True :
print ( " \n +" + " Cardápio " .center( 31 , "-" ) + "+" )
print ( "| [1] Hambúrguer ----- R$ 10.00 |" )
print ( "| [2] Pizza ---------- R$ 20.00 |" )
print ( "| [3] Refrigerante --- R$ 5.00 |" )
print ( "| [4] Batata Frita --- R$ 8.00 |" )
print ( "| [5] FINALIZAR PEDIDO |" )
print ( "+" + "" .center( 31 , "-" ) + "+" )
escolha = int ( input ( "Escolha uma opção \n -> " ))
if escolha == 1 :
total += 10.00
pedidos.append( "Hambúrguer" )
elif escolha == 2 :
total += 20.00
pedidos.append( "Pizza" )
elif escolha == 3 :
total += 5.00
pedidos.append( "Refrigerante" )
elif escolha == 4 :
total += 8.00
pedidos.append( "Batata Frita" )
elif escolha == 5 :
break
print ( " \n " + "+" + " Pedido " .center( 31 , "-" ) + "+" )
for pedido in pedidos:
print ( f "| { pedido } " .ljust( 32 , " " ) + "|" )
print ( "+" + "" .center( 31 , "-" ) + "+" )
print ( f "| Total: R$ { total :.2f } " .ljust( 32 , " " ) + "|" )
print ( "+" + "" .center( 31 , "-" ) + "+" )
Data : 23/04/2024
Altere o software do Exemplo I de modo que ele agora receba as notas do usuário e calcule a média e mostre na tela um resumo das notas.
DICA : inicie a lista de notas zerada: notas = [ 0 , 0 , 0 , 0 , 0 ]
Utilize duas estruturas while
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 29/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
notas = [ 0 , 0 , 0 , 0 , 0 ]
indice = 0
while indice < 5 :
notas[indice] = int ( input ( 'Nota %d : ' % (indice + 1 )))
indice += 1
soma = 0
x = 0
while x < 5 :
soma += notas[x]
x += 1
print ()
print ( "*" * 22 )
print ( "*" , "RESUMO DAS NOTAS" .center( 18 ), "*" )
print ( "*" * 22 )
print ()
indice = 0
while indice < 5 :
print ( 'Nota %d : %d ' % (indice + 1 , notas[indice]))
indice += 1
print ( 'Média: %5.2f ' % (soma / x))
Altere o software do restaurante desenvolvido na semana passada de modo que a cada interação o software mostrará para o cliente todos os produtos comprados e o total da compra. O software deve permitir a ele que ele remova produtos ou adicione mais produtos.
DICA : Utilize ao menos duas listas, uma para os produtos e outra para os valores.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 29/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
pratos = [
"Hambúrguer" ,
"Pizza" ,
"Refrigerante" ,
"Batata Frita"
]
valores = [
10.00 ,
20.00 ,
5.00 ,
8.00
]
total = 0.0
pedido = []
while True :
print ( " \n +" + " Menu " .center( 22 , "-" ) + "+" )
print ( "| [1] Adicionar prato |" )
print ( "| [2] Remover prato |" )
print ( "| [3] FINALIZAR PEDIDO |" )
print ( "+" + "-" * 22 + "+" )
escolha = int ( input ( "Escolha uma opção \n -> " ))
if escolha == 1 :
# ADICIONAR PEDIDO
print ( " \n +" + " Cardápio " .center( 28 , "-" ) + "+" )
indice = 0
while indice < len (pratos):
opcao = f "[ { indice + 1} ] { pratos[indice] } - R$ { valores[indice] :.2f } "
print ( "|" , opcao.ljust( 26 , " " ), "|" )
indice += 1
print ( "+" + "" .center( 28 , "-" ) + "+" )
prato = int ( input ( "Escolha um prato \n -> " )) - 1
total += valores[prato]
pedido.append(pratos[prato]) # adiciona um elemeto à lista
elif escolha == 2 :
# REMOVER PEDIDO
print ( " \n +" + " Pedidos " .center( 28 , "-" ) + "+" )
indice = 0
while indice < len (pedido):
opcao = f "[ { indice + 1} ] { pedido[indice] } "
print ( "|" , opcao.ljust( 26 , " " ), "|" )
indice += 1
print ( "+" + "" .center( 28 , "-" ) + "+" )
prato = int ( input ( "Escolha um prato para remover \n -> " )) - 1
total -= valores[prato]
del pedido[prato] # OU pedido.pop(prato) # remove um elemento da lista
elif escolha == 3 :
break
else :
print ( "Opção inválida" )
# resulmo do pedido e valor total
print ( " \n +" + " Pedido " .center( 25 , "-" ) + "+" )
indice = 0
while indice < len (pedido):
print ( f "| { pedido[indice] } " .ljust( 26 , " " ) + "|" )
indice += 1
# exibe o valor total antes de encerrar o quadro
print ( "+" + "" .center( 25 , "-" ) + "+" )
print ( f "| Total: R$ { total :.2f } " .ljust( 26 , " " ) + "|" )
print ( "+" + "" .center( 25 , "-" ) + "+" )
Faça um programa que leia duas listas e que gere uma terceira com os elementos das duas primeiras.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 29/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
L1 = [ 7 , 5 , 3 ]
L2 = [ 4 , 6 , 8 ]
resultado = L1[:] + L2[:]
print (L1) # [7, 5, 3]
print (L2) # [4, 6, 8]
print (resultado) # [7, 5, 3, 4, 6, 8]
Faça um programa que percorra duas listas e gere uma terceira sem elementos repetidos.
"""
Nome: Mateus Felipe Gonçalves <[email protected] >
Professor: Adjenor Cristiano
Data: 29/04/2024
Matéria: Programação Estruturada
Turma: 1º Perí. B
"""
L1 = [ 7 , 5 , 3 , 1 , 2 , 9 ]
L2 = [ 1 , 4 , 9 , 8 , 3 , 6 ]
resultado = list ( set (L1 + L2))
print (L1) # [7, 5, 3, 1, 2, 9]
print (L2) # [1, 4, 9, 8, 3, 6]
print (resultado) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
Data : 14/05/2024
Altere o programa anterior de modo que ele receba os valores para preencher a lista, a cada valor digitado o sistema ofereça ao usuário a opção de imprimir a lista com seus índices ([0] - 4). O programa também deve oferecer ao usuário a opção de adicionar mais um valor ou excluir um valor. Ao finalizar o sistema deve apresentar na tela todos os números digitados, o maior, menor e a média.
# verificação do maior valor
lista = []
while True :
novo_valor = int ( input ( "Digite um valor: " ))
lista.append(novo_valor)
print ( "" )
exibir = input ( "Deseja exibir a lista? (s/n)" )
if exibir == "s" :
print ( f "(I) N" )
for cont, item in enumerate (lista):
print ( f "( { cont } ) { item } " )
print ( "Escolha uma opção:" )
print ( "[1]> Adicionar novo valor" )
print ( "[2]> Excluir valor" )
print ( "[3]> Finalizar" )
escolha = int ( input ( "-> " ))
print ( "" )
if escolha == 1 :
continue
elif escolha == 2 :
print ( f "(I) N" )
for cont, item in enumerate (lista):
print ( f "( { cont } ) { item } " )
excluir = int ( input ( "Digite o índice do valor que deseja excluir: " ))
del lista[excluir]
elif escolha == 3 :
break
maior = 0
menor = 0
soma = 0
for cont, item in enumerate (lista):
if (item > maior) or cont == 0 :
maior = item
for cont, item in enumerate (lista):
if (item < menor) or cont == 0 :
menor = item
for item in lista:
soma += item
for cont, item in enumerate (lista):
print ( f "( { cont } ) { item } " )
print ( f "O maior valor é: { maior } " )
print ( f "O menor valor é: { menor } " )
print ( f "A média dos valores é: { soma / len (lista) } " )
Desenvolva um programa para separar os valores da lista [9,8,7,12,0,13,21,35,6,11,1] em duas listas, uma com os pares e outra com os ímpares.
lista = [ 9 , 8 , 7 , 12 , 0 , 13 , 21 , 35 , 6 , 11 , 1 ]
pares = []
impares = []
for item in lista:
if item % 2 == 0 :
pares.append(item)
else :
impares.append(item)
print ( f "Pares: { pares } " )
print ( f "Ímpares: { impares } " )
Altere o software do exercício anterior de forma que ele receba os dados do usuário para criar na lista de compras. O sistema deve oferecer ao usuário a possibilidade de exibir a lista de compras, adicionar e remover itens, além de mostrar os totais (valor total da compra e quantidade total de ítens).
import os
from time import sleep
limpar = lambda : os.system( "clear" )
itens = []
while True :
limpar()
print ( "+-- MENU PRINCIPAL --+" )
print ( "| [1] Adicionar item |" )
print ( "| [2] Remover item |" )
print ( "| [3] Listar itens |" )
print ( "| [4] Sair |" )
print ( "+--------------------+" )
opcao = input ( "-> " )
if not opcao.isdigit():
print ( " \n Opção inválida!" )
sleep( 2 )
continue
opcao = int (opcao)
if opcao == 1 :
limpar()
print ( "[ ADICIONAR ITEM ] \n " )
nome = input ( "Nome do item: " )
quantidade = int ( input ( "Quantidade: " ))
valor_unitario = float ( input ( "Valor unitário: " ).replace( "," , "." ))
itens.append([nome, quantidade, valor_unitario])
print ( " \n Item adicionado com sucesso!" )
sleep( 2 )
elif opcao == 2 :
limpar()
if len (itens) == 0 :
print ( "Nenhum item para remover!" )
sleep( 2 )
continue
print ( "[ REMOVER ITEM ] \n " )
print ( "[ID] Nome \n " )
for indice, item in enumerate (itens):
print ( "[ %d ] %s " % (indice, item[ 0 ]))
print ( " \n ID do ítem que deseja remover" )
id_item = int ( input ( "-> " ))
if id_item < 0 or id_item >= len (itens):
print ( " \n ID inválido!" )
sleep( 2 )
continue
else :
del itens[id_item]
print ( " \n Item removido com sucesso!" )
sleep( 2 )
elif opcao == 3 :
limpar()
print ( "[ ITENS ] \n " )
quantidade_total = 0
valor_total = 0
print ( "ID | Nome - Quantidade - Valor unitário (Valor total)" )
print ( "---|-----------------------------------------------" )
for indice, item in enumerate (itens):
print ( " %d | %s - %d unidade(s) - R$ %.2f (R$ %.2f )" % (indice, item[ 0 ], item[ 1 ], item[ 2 ], item[ 1 ] * item[ 2 ]))
quantidade_total += item[ 1 ]
valor_total += item[ 1 ] * item[ 2 ]
print ( " \n Quantidade unitária de itens -- %d " % len (itens))
print ( "Quantidade total de itens ----- %d " % quantidade_total)
print ( "Valor total da compra --------- R$ %.2f " % valor_total)
input ( " \n Pressione enter para continuar..." )
elif opcao == 4 :
limpar()
break
else :
print ( " \n Opção inválida!" )
sleep( 2 )