trippietiago Posted November 11, 2019 at 07:23 PM Report Share #616577 Posted November 11, 2019 at 07:23 PM Olá a todos, tenho uma dúvida. Sou iniciante em programação e foi me pedido para a faculdade a resolução de um exercício em que o enunciado é este: Numa empresa o vencimento dos colaboradores é calculado a partir de um vencimento base (VB) e tem em consideração a sua idade (ID), número de filhos (NF) e anos de serviço (AS). O cálculo do salário final é feito de acordo com as seguintes parcelas: •1% de VB para cada ano de ID superior a 25; •3% por cada ano de serviço até perfazer 5 anos; sendo 5% por cada ano extra; •2% por cada filho, considerando o valor mínimo de 2 filhos. Até agora só tenho isto, preciso de ajuda urgente! Obrigado pela atenção. #include <stdio.h> #include <stdlib.h> int main(int argc, char** argv) { int VF, VB, ID, NF, AS; printf("digite a idade do colaborador: "); scanf("%d", &ID); printf("digite o vencimento base do colaboradorr: "); scanf("%d", &VB); printf("digite o número de filhos do colaborador: "); scanf("%d", &NF); printf("digite os anos de serviço do colaborador: "); scanf("%d", &AS); if (ID > 25) return (EXIT_SUCCESS); } Link to comment Share on other sites More sharing options...
PsySc0rpi0n Posted November 12, 2019 at 11:04 PM Report Share #616589 Posted November 12, 2019 at 11:04 PM (edited) Qual é a dúvia em concreto? O teu code está apenas a pedir valores. Ainda não vejo mais nada. É preciso pensar em cada uma das alíneas e começar a colocar cada uma em código, nem que seja por partes! Começa por tentar escrever fórmulas que traduzam cada uma das alíneas! Edited November 12, 2019 at 11:06 PM by PsySc0rpi0n Kurt Cobain - Grunge misses you Nissan GT-R - beast killer Link to comment Share on other sites More sharing options...
trippietiago Posted November 12, 2019 at 11:12 PM Author Report Share #616592 Posted November 12, 2019 at 11:12 PM 2 minutos atrás, PsySc0rpi0n disse: Qual é a dúvia em concreto? O teu code está apenas a pedir valores. Ainda não vejo mais nada. É preciso pensar em cada uma das alíneas e começar a colocar cada uma em código, nem que seja por partes! A minha dúvida é como colocar cada variável a atuar independetemente das outras (esqueci-me de colocar no enunciado que o objetivo do exercício é determinar uma função correspondente ao vencimento final (VF)). Link to comment Share on other sites More sharing options...
PsySc0rpi0n Posted November 12, 2019 at 11:15 PM Report Share #616593 Posted November 12, 2019 at 11:15 PM (edited) 4 minutes ago, trippietiago said: A minha dúvida é como colocar cada variável a atuar independetemente das outras (esqueci-me de colocar no enunciado que o objetivo do exercício é determinar uma função correspondente ao vencimento final (VF)). Não percebo a dúvia. A actuar independentemente das outras? Mas algumas são mesmo dependentes porque dependem do número de anos de serviço, das percentagens, etc. Tenta fazer como disse. Por partes, escreve fórmulas (em papel) que permitam satisfazer cada uma das condições! Por exemplo, como seria a fórmula do VF se só tivesses que satisfazer a primeira condição? E se tivesses só a segunda? E só a terceira? Edited November 12, 2019 at 11:16 PM by PsySc0rpi0n Kurt Cobain - Grunge misses you Nissan GT-R - beast killer Link to comment Share on other sites More sharing options...
trippietiago Posted November 12, 2019 at 11:24 PM Author Report Share #616595 Posted November 12, 2019 at 11:24 PM 8 minutos atrás, PsySc0rpi0n disse: Não percebo a dúvia. A actuar independentemente das outras? Mas algumas são mesmo dependentes porque dependem do número de anos de serviço, das percentagens, etc. Tenta fazer como disse. Por partes, escreve fórmulas (em papel) que permitam satisfazer cada uma das condições! Por exemplo, como seria a fórmula do VF se só tivesses que satisfazer a primeira condição? E se tivesses só a segunda? E só a terceira? Ok, irei fazer assim e depois direi algo. Obrigado ! Link to comment Share on other sites More sharing options...
PsySc0rpi0n Posted November 12, 2019 at 11:59 PM Report Share #616597 Posted November 12, 2019 at 11:59 PM 32 minutes ago, trippietiago said: Ok, irei fazer assim e depois direi algo. Obrigado ! Eu já tenho uma solução e fiz como te disse. Talvez não tanto à letra de encontrar uma fórmula para cada critério, mas encontrando a forma de calcular cada percentagem de cada critério. Depois no fim é somar as percentagens e multiplicar pelo VB. À primeira vista parece estar certa, mas posso ter-me enganado. Não sou nenhum expert mas gosto de fazer alguns exercícios que por aqui vão aparecendo. Kurt Cobain - Grunge misses you Nissan GT-R - beast killer Link to comment Share on other sites More sharing options...
PsySc0rpi0n Posted November 23, 2019 at 06:32 PM Report Share #616692 Posted November 23, 2019 at 06:32 PM Bom, parece que já não há interesse nesta thread, por isso fica aqui a minha solução: #include <stdio.h> int main(void){ int vb = 1000, idd = 40, asv = 6, nf = 2, tmp = 0; float percnf = 0.0, percasv = 0.0, percid = 0.0; if(nf >= 2){ for(int i = 0; i < nf; i++){ percnf += .02; } } if(asv > 5){ while(tmp < 5){ percasv += .03; tmp++; } tmp = 0; while(tmp < (asv - 5)){ percasv += .05; tmp++; } }else{ tmp = 0; while(tmp < asv){ percasv += .03; tmp++; } } tmp = 0; if(idd > 25) while(tmp < (idd - 25)){ percid += .01; tmp++; } printf("Vencimento Final: %.2f\n", vb*(1 + percasv + percid + percnf)); return 0; } Agora é só alterar os valores iniciais das variáveis declaradas no início e ver os resultados. Kurt Cobain - Grunge misses you Nissan GT-R - beast killer Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now