Home › Fóruns › Programação Básica › Exercício 010 – Módulo 001 – Não Fume.
Marcado: Exercicios 010
- Este tópico contém 47 respostas, 22 vozes e foi atualizado pela última vez 9 meses, 3 semanas atrás por Tutora Jessica.
-
AutorPosts
-
-
28 de fevereiro de 2021 às 17:35 #61938Lucas Rodrigues FreitasParticipante
Boa tarde! estou com dúvida nesse exercícios. Eu consigo a quantidades de cigarros por dia. Mas quando chega a hora de calcular os dias perdidos eu fico confuso.
programa
{funcao inicio()
{
inteiro anos_fumo, cigarros_dia, quantidadeescreva(“{ EXERCÍCIO 010 – Não Fume } \n”)
escreva(“Cada cigarro reduz 10 minutos de vida\n”)
escreva(“————————————-\n”)
escreva(“Há quantos anos você fuma: “)
leia(anos_fumo)
escreva(“Quantos cigarros você fuma por dia: “)
leia(cigarros_dia)
escreva(“————————————–\n”)anos_fumo = (anos_fumo * 365)
quantidade = (anos_fumo * cigarros_dia)escreva(“Ao todo até agora você fumou “, quantidade, ” cigarros!\n”)
}
} -
28 de fevereiro de 2021 às 23:28 #61950IcaroFilhoModerador
Boa noite Lucas.
Vou tentar te mostrar o caminho sem te dar a resposta de cara… se continuar travado só falar que eu posto algo mais explicito aqui , ou então alguém postará…
Seu código esta correto, mas vc pode otimizar…
ao invés de escreveranos_fumo = (anos_fumo * 365) // aqui vc esta dando um novo valor para a variável para usa-la em sequencia quantidade = (anos_fumo * cigarros_dia)
Pode simplesmente escrever
quantidade = anos * 365 * cigarros_dia //vc pode inserir tudo em uma unica linha
Então, no caso desse exercício ele te passa a informação que cada cigarro reduz 10 min de vida. É ai que esta o pulo do gato.
vc precisa achar a razão entre minutos e dias. (se pergunte quantos minutos tem no dia)
vc estruturou bem o começo. Acredito que se esteja te faltando esse numero para fechar seu raciocínio.Abraço e bons estudos…
-
11 de janeiro de 2024 às 20:15 #130174Alexandre RochaParticipante
eu fiz igual o lucas porem to trvado na parte do 10 minutos de vida sei quantos dias é porem nao sei em que parte eu to errando vai tudo dando certo chega na parte dos 10 minutos eu travo
-
12 de janeiro de 2024 às 12:03 #130198Tutora JessicaModerador
Ola Alexandre, compartilhe conosco seu código
-
15 de janeiro de 2024 às 21:41 #130380Alexandre RochaParticipante
inclua biblioteca Tipos –> tp
funcao inicio()
{
escreva(“Olá Mundo”)escreva(“Cada cigarro reduz 10 minutos de vida \n”)
escreva(“———————————————-\n”)
const inteiro Anos=365, dias = 1440,cig = 10
real anos,cdias,cigatotalescreva(“Digite a quantos anos você fuma: “)
leia(anos)
escreva(“Digite quantos cigarros você fuma por dia: “)
leia(cdias)
escreva(“———————————————-\n”)
cigatotal = cdias*anos*Anos
inteiro vidadias
vidadias = tp.inteiro_para_real (cigatotal*cig)/dias
leia(vidadias)o codigo fala que ta certo mais ele nao executa o que eu errei no codigo?
-
16 de janeiro de 2024 às 09:32 #130402Tutora JessicaModerador
Ola Alexandre, analise a explicação do aluno Ícaro do dia
31 de março de 2021 às 18:53, a explicação dele para essa questão esta completa , em relação ai seu código não apresentar erro e não executar é por conta dele não estar completo, você precisa informar no código o que você quer que ele execute a você ao final.
Espero que a partir da leitura da explicação você consiga concluir seu código, mas se caso continue com dúvidas, só retornar ao fórum que iremos lhe ajudar. 🖖🏼 -
16 de janeiro de 2024 às 20:26 #130457Alexandre RochaParticipante
inclua biblioteca Matematica
funcao inicio()
{
escreva(” {Exercicio 010 – não fume }”)
escreva(” cada cigarro reduz 10 minutos de vida\n “)
escreva(“————————————–\n”)
inteiro anos, dias, cigarro
escreva(” há quanto tempo voce fuma ? “)
leia(anos)
escreva(” quantos cigarros voce fuma por dia ? “)
leia(dias)anos = (anos*365)
cigarro = ( dias*anos)
leia(cigarro)entao refiz ele aqui porem eu to seguindo a msm linha que eu fiz em outro exercicio porem o programa fala que ocorreu erro e que espera um valor do tipo inteiro e ta nesse tipo, da primeira vez fiz esse ex, ele nao deu erro e foi assim que eu fiz o começo
-
17 de janeiro de 2024 às 10:09 #130475Tutora JessicaModerador
Ola Alexandre, você observou a explicação do Icaro do dia 31 de março de 2021?
A explicação dele esta completa.
O seu código esta faltando diversas informações, no final ele tem um leia (cigarro) sem sentido, refaça seu código com mais atenção e detalhamento no passo a passo.
A nossa intenção não é dar a resposta ao aluno, te sugiro ate mesmo rever essa aula, prestar bem a atenção no enunciado.. e nos envie seu código por completo, lembrando que o portugol lê o código linha por linha, então alem de sentido o código precisa estar em ordem do que você quer que ele faça.
-
-
1 de março de 2021 às 08:29 #61952Lucas Rodrigues FreitasParticipante
Muito obrigado meu amigo! me ajudou bastante, consegui concluir. E obrigado pela dica de otimização também. Abraço!
-
1 de março de 2021 às 12:32 #61970Tutora TaináMestre
Icaro, parabéns pela resposta contempla tudo o que poderia ter sido dito sobre a questão do Lucas. Continue contribuindo com a comunidade!🖖
Quaisquer outra dúvida estamos a disposição.
-
31 de março de 2021 às 17:02 #64129Carlos FerrerParticipante
Pessoal, estou com dificuldades nos cálculos desse exercício. Poderiam me ajudar?
programa
{funcao inicio()
{
escreva(“{{{ EX010 – NÃO FUME }}}\n”)
inteiro anos_fumando, cigarros_por_diaescreva(“Cada cigarro fumado reduz 10 minutos de sua vida.\n————————————\nA quantos anos você fuma? “)
leia(anos_fumando)
escreva(“\nQuantos cigarros você fuma por dia? “)
leia(cigarros_por_dia)
escreva(“\n————————————————–\n”)real mes_cigarro = cigarros_por_dia*30
real ano_cigarro = mes_cigarro*12
real anos_totais_fumando = ano_cigarro*anos_fumandoreal total_vida_perdida = (anos_fumando*365)/24
escreva(“Ao todo, você já fumou “, anos_totais_fumando,” cigarros.\n”)
escreva(“Estima-se que você já perdeu “, total_vida_perdida,” dias de vida! Pare de fumar. “)}
} -
31 de março de 2021 às 18:16 #64134FRANCISCO TADEU PEZZIParticipante
Boa tarde, Carlos, não me leve a mal é meu jeito de expressar, acho que você misturou alguns valores não me leve a mal posso estar enganado.
Para calcular os cigarros ano como pegamos como padra um ano igual a 365 dias, não podemos usar mês = 30 x cigarros dia x 12 pois teríamos um ano de 360 dias x a quantidade de cigarros fumados por dia. E no calculo de vida perdida devemos trabalhar com minutos ou seja converter o total de cigarros consumidos ao longo desses anos multiplicar por 10 e dividir pelo valor de 24 horas convertido em minutos (24 * 60) que é igual a 1440.
ou seja:
inteiro total_cigarros_fumados = cigarros_por_dia * 365 * anos_fumandoreal total_vida_perdida = t.inteiro_para_real(total_cigarros_fumados)*10/1440 // resposta em dias.
obs:.para usar a função t.inteiro_para_real(inteiro) e conseguir uma divisão real você deve no alto antes de funcao inicio incluir a biblioteca Tipos –> t,
e se quiser usar a função arredondar( as casas depois da virgula) inclua também a biblioteca Matematica –> mat
Espero ter ajudado de alguma forma, esta foi minha intenção. Bons estudos e Desistir não é uma opção! -
31 de março de 2021 às 18:53 #64135IcaroFilhoModerador
Muito boa noite Carlos.
um detalhe antes de começar as consideração.
lembre-se de utilizar a biblioteca para fazer as conversões. O Portugal perdoa devido a tipagem, mas outras linguagens não.
so um exemplo:
real total_vida_perdida = (anos_fumando*365)/24
→real total_vida_perdida = (tp.inteiro_para_real(anos_fumando)*365)/24
Agora vamos la dar uma analisada:
O exercício pede quantos anos você fumou e quantos cigarros.logo no inicio temos um divergencia.
o ano possui 365 dias e em seu programa temos 360 (mes (12) * dias (30))real mes_cigarro = cigarros_por_dia*30 real ano_cigarro = mes_cigarro*12
vamos primeiro nos embasar nas informações.
ele nos informa que cada cigarro retira 10 minutos de vida e ele quer os dias, logo precisamos descobrir quantos minutos há no dia.1h = 60min 1dia = 24h = (24*60) = 1440 min.
sendo assim, cada cigarro nos tira 10/1440.
com esse numero temos que descobrir o total de cigarros consumido durante todo o tempo de fumante.Ao invés de:
real mes_cigarro = cigarros_por_dia*30 real ano_cigarro = mes_cigarro*12 real anos_totais_fumando = ano_cigarro*anos_fumando
nos teremos:
total = nº Cigarros * qt anos * 365
inteiro total = cigarros_por_dia * anos_fumados * 365
isso nos dará o total de cigarros ao longo da vida, agora com esse numero nois pomos na formula dos minutos. (10/1440)
real total_vida_perdida = (anos_fumando*365)/24
passa a ser:
real total_vida_perdida = total * 10 /1440
, sabemos que temos que por a equação em ordem, logo:
real total_vida_perdida = (total * 10) /1440
, e todos os números são inteiros, parecíamos passar pelo menos 1 para real:inclua biblioteca Tipos --> tp real total_vida_perdida = (tp.inteiro_para_real ( total ) * 10) /1440
Esta tudo pronto, agora basta arrendodar para nao exibir uma dizima gigantesca.
escreva(“Estima-se que você já perdeu “, total_vida_perdida,” dias de vida! Pare de fumar. “)
passa para,inclua biblioteca Matematica --> m escreva("Estima-se que você já perdeu ", m.arredondar(total_vida_perdida,2)," dias de vida! Pare de fumar. ")
Espero ter ajudado, qualquer coisa so postar que estamos ai pra somar !!!
-
6 de abril de 2021 às 20:03 #64431Tutora MaylaMestre
Carlos, os alunos Francisco e Icaro trouxeram ótimas explicações sobre o exercício. Tente compreender e aplicar as mudanças que eles apontaram.
Caso a dúvida persista, basta entrar em contato que lhe ajudaremos. -
14 de maio de 2021 às 13:51 #67116Cristiano Emilio PontesParticipante
Queria uma opiniao sobre meu codigo… O portugol me recomendou incluir a biblioteca “tipos” na conversao inteiro para real… como poderia implementar?
programa
{funcao inicio()
{real ano
inteiro quant
escreva(“Cada cigarro reduz 10 minutos de vida \n”)
escreva(“—————————————– \n”)
escreva(“Ha quantos anos voce fuma? ” )
leia(ano)
escreva(“Quantos cigarros voce fuma por dia? ” )
leia(quant)
inteiro quantcig = ((quant*365)*ano)
real diavid =(((quantcig*10)/60)/24)
escreva(“Ao todo, ate agora voce ja fumou ” + quantcig + ” cigarros! \n”)
escreva(“Estima se que voce ja perdeu ” + diavid + ” dias de vida!”)}
}-
14 de maio de 2021 às 20:09 #67144Tutora MaylaMestre
Cristiano, movi o seu tópico para um tópico já existente sobre a questão. Sempre procure no fórum se já existe um tópico sobre o assunto antes de criar um novo tópico.
Quanto a sua dúvida, para incluir a biblioteca Tipos, basta colocarinclua biblioteca Tipos --> tp
. Para exemplos sobre ela, vá na aba de Bibliotecas no PortugolStudio, além de exemplo sobre essa biblioteca há sobre outras também.A equação em si teria que ter um dos elementos modificados para que o resultado saia como real, ficando algo como isso
real diavid =(((tp.inteiro_para_real (quantcig)*10)/60)/24)
.Olhe mais acima nesse tópico uma explicação bem completa do Icaro sobre essa questão.
Espero ter ajudado, se houver mais dúvidas basta entrar em contato.
-
16 de maio de 2021 às 11:46 #67217Cristiano Emilio PontesParticipante
Obrigado por esclarecer Mayla!
-
-
28 de maio de 2021 às 20:29 #68034Joab Gomes JataiParticipante
estou com dificuldades no calculo dos dias que a pessoa perdeu, o calculo da quantidade de cigarro eu consegui realizar porém o calculo dos dias que o fumante perdeu não consegui realizar, vocês poderiam me ajudar??
-
31 de maio de 2021 às 08:13 #68165Tutora MaylaMestre
Joab, movi o seu tópico para um já existente sobre o assunto, sempre antes de postar procure se já há um tópico sobre o assunto.
Neste tópico há explicações minhas e do Icaro sobre a questão, veja se tais explicações lhe ajudam, caso não volte a entrar em contato que lhe ajudaremos.
-
-
14 de junho de 2021 às 20:17 #69464kleber machado dos santosParticipante
Oi, preciso de uma ajuda.
nessa linha
real dvida = cigarros*10*365/1440*ano
Na calculadora está dando certo, mas no código sai outro valor.programa
{inclua biblioteca Matematica –> mat
funcao inicio()
{
escreva(“{EXERCÍCIO 010 – Não fume } “+ “\n”)
escreva (“Cada cigarro reduz 10 minutos de vida”+ “\n”)
escreva (“——————————————–“+ “\n”)
inteiro anos
escreva (“Há quantos anos você fuma? “)
leia (anos)
inteiro cigarros
escreva (“Quantos cigarros você fuma por dia? “)
leia (cigarros)
escreva (“——————————————–“+ “\n”)
inteiro tcigarros = (cigarros*anos*365)
real dvida = cigarros*10*365/1440*anos
escreva (“Ao todo, até agora você já fumou “+ tcigarros+”\n” )
escreva (“estima- se que você já perdeu “+ dvida+ ” dias de vida!”)-
15 de junho de 2021 às 21:13 #69522Tutora MaylaMestre
Kleber, movi o seu tópico para um já existente sobre o assunto, sempre antes de postar procure se já há um tópico sobre o assunto.
O problema relatado pode estar acontecendo por conta da divisão, que pode gerar um resultado final diferente dependendo da ordem em que for executada. Para impedir problemas desse tipo construa sua equação utilizando parênteses que garantem a ordem de precedência desejada.
Nesse tópico há explicações minhas e do Icaro sobre a questão, veja se tais explicações lhe ajudam, caso não volte a entrar em contato que lhe ajudaremos.
-
-
18 de junho de 2021 às 20:16 #69709Silvio Mota GazetaParticipante
Boa noite, pessoal! Preciso de orientação no meu código. O que está faltando?
programa { funcao inicio() { escreva("{ EXERCÍCIO 009 - Não fume }\n\n") escreva("Cada cigarro reduz 10 minutos de vida \n") escreva("----------------------------------------------\n") inteiro ano, cigarro escreva("Digite a quantos anos você fuma: ") leia(ano) escreva("Digite quantos cigarros você fuma por dia: ") leia(cigarro) escreva("----------------------------------------------\n") inteiro dia = 365 * ano inteiro tot_cigarro = cigarro * dia escreva("Ao todo, até agora você já fumou " + tot_cigarro + " cigarros!") escreva("\n") inteiro tot_minuto = dia * 1440 inteiro reducao = tot_cigarro * 10 / 1440 escreva("Estima-se que você já perdeu " + reducao + " dias de vida!") escreva("\n") } }
-
21 de junho de 2021 às 17:30 #69847Tutora MaylaMestre
Silvio, primeiramente a variável
tot_minuto
não está sendo utilizada e não há necessidade dela.
Depois o problema pode ser pela variávelreducao
ser do tipointeiro
, como estamos realizando uma divisão para que ela contenha o valor sem perder a parte após a virgula é necessário utilizar uma variável do tiporeal
.
Ficaria algo como :
real reducao = total * 10 /1440
, mas assim ainda não teríamos um resultado real pois todos os operando são inteiros
real reducao = (total * 10) /1440
, precisamos passar pelo menos 1 para real:inclua biblioteca Tipos --> tp real reducao = (tp.inteiro_para_real ( total ) * 10) /1440
e por fim apenas utilizar a função arredondar para configurar o número de casas decimais desejado na hora de escrever.
Dê uma olhada nas postagens anteriores deste tópico e veja se lhe ajudam, espero ter ajudado, se a dúvida persistir volte a entrar em contato.
-
-
26 de julho de 2021 às 18:57 #72308Rita VianaParticipante
Olá colegas,
Alguém pode por favor ajudar-me? Estou às voltas com o exercício e não consigo encontrar o erro:
programa { inclua biblioteca Tipos --> tp funcao inicio() { escreva("{ Exercício 010 - Não fume } \n \n") escreva("Informação Importante! Cada cigarro reduz 10 minutos de vida \n \n") escreva("------------------------------------------------------------- \n \n") cadeia nome inteiro anos, cigarros escreva("Como se chama? ") leia(nome) escreva("Há quantos anos fuma? ") leia(anos) escreva("Quantos cigarros fuma por dia? ") leia(cigarros) escreva("------------------------------------------------------------- \n \n") escreva(nome + ", sabia que em " + anos + " anos já fumou " + ((cigarros*365)*anos) + " cigarros? \n") real desperdicio = (tp.inteiro_para_real (cigarros) * 10) / 1440 escreva("Estima-se assim, que em 8 anos como fumador, perdeu " + desperdicio + " dias de vida") } }
- Esta resposta foi modificada 3 anos, 3 meses atrás por IcaroFilho. Razão: formatando codigo
-
27 de julho de 2021 às 12:26 #72377IcaroFilhoModerador
Boa tarde Rita,
a sua formula de desperdício esta errada.
Também deixou fixo na saída a estimativa de 8 anos como fumante. (assim como fez na saída anterior, pode concatenar a string com os anos)
deixei um poste (aqui mesmo) com uma explicação bem detalhada (inclusive do arredondamento).
Se sua duvida permanecer, basta retornar aqui que te oriento passo a passo.
-
26 de julho de 2021 às 22:34 #72334Marcos Felipe Dantas da CostaParticipante
Boa noite, estou com uma dúvida, qual a diferença entre usar um “senao se” e dois “se” um abaixo do outro? Em alguns testes que fiz me voltou o mesmo resultado, mas como o Guanabara diz, pode ser que não testei alguma possibilidade.
-
27 de julho de 2021 às 12:13 #72376IcaroFilhoModerador
Boa tarde Marcos,
Quando utilizamos o senao se, o teste irá se encerrar quando a condição for verdadeira e deixará de executar os outros testes. Enquanto que se utilizarmos 2 se, ele executará os 2. O problema é que nem sempre queremos que se teste tudo.
Ex.: Quero que o algoritmo diga se o numero informado é maior que determinado valor.
se usarmos apenas se teremos:programa { funcao inicio() { inteiro num escreva("escreva um numero entre 0 e 20: ") leia(num) se (num > 20){ escreva("numero informado maior que 20\n") } se (num > 15){ escreva("numero informado maior que 15\n") } se (num > 10){ escreva("numero informado maior que 10\n") } se (num > 5){ escreva("numero informado maior que 5\n") } se (num > 0){ escreva("numero informado maior que 0\n") } } }
Caso informemos 33, teremos a saída:
numero informado maior que 20
numero informado maior que 15
numero informado maior que 10
numero informado maior que 5
numero informado maior que 0Agora se utilizarmos senao se:
programa { funcao inicio() { inteiro num escreva("escreva um numero entre 0 e 20: ") leia(num) se (num > 20){ escreva("numero informado maior que 20\n") } senao se (num > 15){ escreva("numero informado maior que 15\n") } senao se (num > 10){ escreva("numero informado maior que 10\n") } senao se (num > 5){ escreva("numero informado maior que 5\n") } senao se (num > 0){ escreva("numero informado maior que 0\n") } } }
Com a mesma entrada de 33 termos a saída:
numero informado maior que 20.isto porque uma vez que o teste retorne verdadeiro, não há o pq de continuar testando. por isso que para múltiplos testes usamos o aninhamento.
Espero ter ajudado
-
-
6 de agosto de 2021 às 16:21 #73016RONDINELI CONSONI DA SILVAParticipante
Olá! Como faço para delimitar a quantidade de casas após a vírgula no exercício:
dias_perdidos = ((t.inteiro_para_real(qtd * 10) /1440))
O resultado é: 101.38888888889.
No exercício feito pelo Guanabara o resultado fica: 101.39.Obrigado.
-
6 de agosto de 2021 às 20:34 #73035Tutora MaylaMestre
Rondineli, é possível ajustar o número de casas decimais com a função
arredondar
, veja neste tópico a resposta do Icaro que menciona como é possível utilizar esta função da biblioteca Matematica, e caso fique alguma dúvida volte a entrar em contato conosco que lhe ajudaremos.
-
-
9 de fevereiro de 2022 às 17:32 #85894Leonardo Henrique Borges da SilvaParticipante
queria saber se a minha atividade…poderia ser considerada como certa? ou me dizer no que eu errei…
inteiro Anos_fumando
inteiro cigarros_por_dia
escreva (“Cada cigarro reduz 10 minutos de vida”+”\n”)
escreva (“——————————-“+”\n”)
escreva (“quantos anos você fuma? “)
leia (Anos_fumando)
escreva(“quantos cigarros você fuma por dia? “)
leia (cigarros_por_dia)
escreva (“——————————— “+”\n”)
Anos_fumando=(Anos_fumando*365)
cigarros_por_dia=(cigarros_por_dia)
real anos_totais_fumando=(Anos_fumando*cigarros_por_dia)
real Anos_de_vida_perdidos = (Anos_fumando*cigarros_por_dia/144.0)
escreva (“ao todo, até agora você ja fumou “+anos_totais_fumando+” cigarros!”)
escreva (“estima-se que você ja perdeu “+ Anos_de_vida_perdidos +” dias de vida! “) -
9 de fevereiro de 2022 às 20:28 #85918IcaroFilhoModerador
Boa noite Leonardo,
Movi seu post pois o tópico referente ao exercício ja estava criado.
sempre que for postar algo, veja se não há tópicos com a msm referencia.Referente4 ao seu código, ele não esta errado, mas pode dar uma melhorada nas saídas (exibindo de forma arredondada)
da uma olhada nas postagens dentro deste tópico para ter mais referencias. -
27 de março de 2022 às 19:35 #89601João MessiasParticipante
Boa noite, só gostaria de saber se meu programa está dado como certo ou se preciso melhorar algo.
Grato pela compreensão. 😉programa
{
// { EXERCÍCIO 010 – Não fume }inclua biblioteca Matematica –> m
inclua biblioteca Tipos –> T
funcao inicio()
{
inteiro anos, cigarros, arredondamento
escreva(“{ EXERCÍCIO 010 – Não fume } \n”)
escreva(“Cada cigarro reduz 10 minutos de vida! \n”)
escreva(“—————————————— \n”)
escreva(“Há quanto anos você fuma? “)
leia(anos)
escreva(“Quantos cigarros você fuma por dia? “)
leia(cigarros)
escreva(“—————————————— “)
escreva(“\n”)real tot_cigarros = cigarros * 365
real tot_cigarros_anos = tot_cigarros * 8escreva(“Ao todo, até agora você já fumou “, tot_cigarros_anos, ” cigarros! \n”)
escreva(“Estima-se que você já perdeu “, m.arredondar(tot_cigarros_anos*10/1440, 0), ” dias de vida!”)
}
}-
1 de abril de 2022 às 13:02 #89985IcaroFilhoModerador
Boa tarde João,
Não esta correto o código.
vc esta determinando que seu usuário fuma a 8 anos sempre (real tot_cigarros_anos = tot_cigarros * 8
)
Eu dei uma resposta bem detalhada no começo no tópico. de uma olhada e revise seu código.
Caso tenha problemas ou duvidas, retorne. -
1 de abril de 2022 às 18:33 #90014João MessiasParticipante
Boa noite, me atentei a esse erro depois que postei aqui, mas muito obrigado meu amigo!!
-
-
21 de junho de 2022 às 21:33 #96123JONATHAN JOSE FELIX XAVIERParticipante
Olá, tudo bem?
Acredito que antes da resolução final se faz necessário saber das informações principais, como, quantos minutos tem 1 dia, já que será aplicada ora estamos trabalhando com minutos.
programa { //exe 010 inclua biblioteca Matematica --> m funcao inicio() { escreva("Cada cigarro reduz 10 minutos de vida\n") escreva("---------------------------------------\n") real arredondamento real anos escreva("Há quantos anos você fuma? ") leia(anos) real quantidade escreva("Quantos cigarros você fuma por dia? ") leia(quantidade) real calc_total = (anos*quantidade)*365 real qtd_vida = m.arredondar((calc_total/1440)*10,2) escreva("Ao todo, até agora você já fumou "+ calc_total+ " cigarros!\n") escreva("Estima-se que você já perdeu " + qtd_vida + " dias de vida! \n") } }
Abraços.
-
22 de junho de 2022 às 20:52 #96185IcaroFilhoModerador
Realmente Jonathan,
O intuito deste exercício é justamente fazer com que o aluno leve em consideração o fator tempo e a base de calculo de conversão para efeito de cálculos.
Depois que o aluno descobre esta redução de dia para minutos, basta aplicar uma regra de 3 simples.Você possui alguma duvida ?
-
-
30 de dezembro de 2022 às 19:10 #108002MARCIO PAIVAParticipante
programa { inclua biblioteca Matematica-->mat inclua biblioteca Tipos-->t funcao inicio() { escreva("{EXERCÍCIO 010 - Não Fume}\n") inteiro anos, cig escreva("-----------------------------------") escreva("\nQuantos anos você fuma? ") leia(anos) escreva("Quantos cigarros você fuma por dia? ") leia(cig) inteiro tot_cig = cig * anos * 365 real tot_anos = t.inteiro_para_real (tot_cig *10) / 1440 escreva("---------------------------------------\n") escreva("Ao todo você já fumou " + tot_cig + " cigarros!\n") escreva("Estima-se que você já perdeu " + mat.arredondar(tot_anos,2) + " dias de vida!") } }
-
2 de janeiro de 2023 às 10:06 #108115Tutora JessicaModerador
Ola Marcio, alguma dúvida?
-
9 de janeiro de 2023 às 20:19 #108463MATEUS AUGUSTO DA SILVAParticipante
inclua biblioteca Tipos
–> tfuncao inicio()
{
inteiro anosfumando
inteiro cigarrospordia
inteiro totalcigarros
inteiro tempodevida
escreva(“quantos cigarros voce fuma por dia?: “)
leia(cigarrospordia)
escreva(“ha quantos anos voce fuma?: “)
leia(anosfumando)
totalcigarros = anosfumando*cigarrospordia*365
tempodevida = t.inteiro_para_real(10)totalcigarros*10/60/24
escreva(“ao todo voce ja fumou ” + totalcigarros + ” !” + “\n”)
escreva(“estima-se que voce ja perdeu ” + tempodevida + ” tempo de vida!”) -
10 de janeiro de 2023 às 09:36 #108496Tutora JessicaModerador
Ola Mateus, alguma dúvida ?
-
10 de janeiro de 2023 às 19:29 #108532MATEUS AUGUSTO DA SILVAParticipante
quando uso a biblioteca tipos, diz que o valor esta truncado, ai nao consigo finalizar o exercicio
-
11 de janeiro de 2023 às 11:33 #108583Tutora JessicaModerador
Ola Mateus, mesclei sua dúvida em um tópico já criado e com boas explicações, dê uma olhada acima e veja se as explicações vão lhe ajudar.
Caso continue com dúvidas, só retornar ao fórum que iremos lhe ajudar.
-
-
20 de setembro de 2023 às 12:49 #123669Filipe Mamud OliveiraParticipante
Ola moderadores,
estou a algumas horas buscando no forum de Programação basica a solução para o meu problema e gostaria de sugerir uma opção de busca dentro de uma categoria. Eu digo isso pois o sistema de busca funciona fora da categoria “Programação basica” mas uma vez ao interior desta categoria, ja não temos mais o sistema de busca então ficamos vagando por tempo ilimitado buscando saber se não vamos repetir uma questão com uma postagem que seja repetida.Porém aqui vai minha questão.
No exercicio 010 do modulo um a minha linha de codigo da um resultado proimo ao do professor porém o resultado não é exatamente o mesmo, no resultado que ele obtem quanto à estimativa de tempo perdido quanto ao uso do cigarro o resultado de seu codigo da : 101.39 porém o meu da 101.0{
funcao inicio()
{
const inteiro ANOSDIA = 365, DIA = 1440, CIG = 10
inteiro anos, cigdia, cigtotal
real vidadias
escreva(“{EXERCICIO 10 – Não fume}”)
escreva(“\n”)
escreva(“Cada cigarro reduz 10 minutos da sua vida”)
escreva(“\n”)
escreva(“————————————————-“)
escreva(“\n”)
escreva(“Hà quantos anos você fuma? “)
leia(anos)
escreva(“Quantos cigarros por dia você fuma? “)
leia(cigdia)
escreva(“\n”)
escreva(“————————————————-“)
escreva(“\n”)
cigtotal = cigdia*anos*ANOSDIA
vidadias = (cigtotal*CIG)/DIAescreva(“\n”)
escreva(“Ao todo você ja fumou “, cigtotal)
escreva(“\n”)
escreva(“Estima-se que você ja perdeu “, vidadias, ” dias de vida!”)
escreva(“\n”)
}
} -
20 de setembro de 2023 às 13:55 #123673Tutora JessicaModerador
Ola Filipe, obrigada pela sugestão , peço para que a envie também na aba ajuda.
Quanto ao seu exercício, trouxe ele para um tópico ja existente do mesmo módulo e exercício com explicações e resoluções.
Caso ainda fique alguma dúvida, só retornar ao fórum que iremos lhe ajudar. -
20 de setembro de 2023 às 14:58 #123679Filipe Mamud OliveiraParticipante
Então Jessica, mesmo depois de ler pela segunda vez os posts aqui, eu não identifiquei resposta a minha questão.
O resultado do meu programa da 101.0 e o do Guanabara assim como o do rodinei é de 101.39
Eu não estou procurando o arredondamento como ele, eu estou procuranso saber por que minha formula que parece ser boa e correta esta indicando as casas deciamis apos a virgula de maneira diferente dos outros?
Eu quero evitar que o programa rode mas sem a logica correta como o professor explicou em outro video.
-
20 de setembro de 2023 às 18:29 #123698Tutora JessicaModerador
Os dividendos e divisores são inteiros e uma divisão entre números inteiros irá retornar um número inteiro. Como a variável a qual esse resultado está sendo atribuído é real, ele irá adicionar o .0 para torna-lo real, mas já terá perdido os decimais pois a conversão para real só será feita depois da conta ter terminado.
Para que o resultado seja do tipo real, uma dos números deve ser real, para isto acontecer basta fazer algo como: t.inteiro_para_real(50*365*8*1)/1440. Desta forma os valores decimais serão levados em conta na realização da operação. E na linha de baixo será feito o arredondamento com 3 casas decimais.Espero ter ajudado, quaisquer dúvidas estamos a disposição.
-
30 de janeiro de 2024 às 12:22 #131126Alexandre RochaParticipante
o que esta errado? nenhuma resposta me ajudou
inclua biblioteca Tipos –> tp
inclua biblioteca Matematica –> mfuncao inicio()
{
escreva(” {Exercicio 010 – não fume }”)
escreva(” cada cigarro reduz 10 minutos de vida\n “)
const inteiro ANOSVIDA = 365, DIAS = 1440, REDUZ = 10inteiro anos,dias,perca
escreva(” há quanto tempo voce fuma ? “)
leia(anos)
escreva(” quantos cigarros voce fuma por dia?”)
leia(dias)
escreva(“\n”)
perca = anos * ANOSVIDA * dias
real tot = (tp.inteiro_para_real(perca) * REDUZ) /DIAS
escreva(“estima-se que voce ja perdeu “,m.arrendondar(perca,2),”dias de vida”)-
30 de janeiro de 2024 às 18:15 #131134Tutora JessicaModerador
Ola Alexandre, qual erro aparece para você? O codigo que me enviou esta completo ?
-
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.