Consulte Graatis
Find a Question:
Informática">
Dificuldades em Java Programação
Introdução
Parabéns! Você acabou de ser contratado para ser Diretor de Manufatura na Acme Manufacturing Inc.
No seu primeiro dia de trabalho você percebeu que a empresa pode estar perdendo dinheiro por produzir sem nenhum planejamento. Ocorre que ao conhecer o processo você percebeu que o custo de produção não é linear e depende dos tamanhos dos lotes e outros detalhes do processo. Produzir pouco custa caro devido a falta de ganho de escala e produzir muito também caro devido a restrições de estocagem e outros gargalos de produção.
Segundo o diretor financeiro, cada produto é vendido por $5000,00.
Após algum estudo sobre seu processo, você concluiu que o lucro de seu produto pode ser estimado pela seguinte fórmula:
(1)
As constantes a e b dependem da cotação do dólar e do preço do petróleo no dia da compra dos insumos.
Você lembrou que em Cálculo I na Facamp você aprendeu que basta derivar a equação e encontrar o zero para ter o ponto onde o número de peças produzidas leva a um lucro máximo.
Facilmente você calculou a seguinte derivada:
(2)
A complexidade da equação não o assustou. Você rapidamente abriu um bloco de notas e fez um programa em Java para calcular o zero da equação.
O que você fez foi criar um programa que busca para qual valor de x o valor de dfdx é próximo de zero. Para isto você usou o método da bissecante: http://en.wikipedia.org/wiki/Bisection_method.
O método é simples. A idéia básica é escolher um intervalo que contém o zero e ir aos poucos reduzindo o intervalo até achar a raíz da equação. Este processo é ilustrado na figura a seguir:
Como você estava um pouco “enferrujado”, você fez por partes:
Parte 1)
• Primeiramente você declarou as variáveis a e b. Você inicializou a=110 e b=5.1, que são os valores praticados atualmente para estas constantes.
• Em seguida você declarou a variável x e escreveu o código para calcular o lucro fx (equação 1) e sua derivada, que você chamou de dfdx (equação 2). Dica: use as funções Math.log() para calcular um logaritmo neperiano e a função Math.pow() para elevar um número a uma potência.
Exemplos de uso das funções Math.log() e Math.pow():
ln(x) ? Math.log(x)
x2 ? Math.pow(x,2)
(ln(x))2 ? Math.pow(Math.log(x),2)
Você testou o programa com x = 50, que é o número de unidades que são produzidas atualmente na empresa. Para testar você calculou fx e dfdx na calculadora e comparou com os resultado obtidos. Os valores foram aproximadamente: dfdx=-3923.49945 e fx=88446.75782
Parte 2)
Você escolheu um intervalo que contém o zero da equação. Para tanto você criou quatro novas variáveis:
• xmin – início do intervalo
• dfdxmin – valor da equação (2) para xmin
• xmax – final do intervalo
• dfdxmax – valor da equação (2) para xmax
Você inicializou xmin=10, xmax=70 e calculou a equação (2) para cada um dos valores que foram armazenados nas variáveis dfdxmin e dfdxmax, respectivamente.
Você mostrou no console os quatro valores, xmin, dfdfxmin, xmax e dfdfxmax e se certificou que dfdxmin>0 e dfdxmax
Professores e Alunos
Ainda nao ha resposta para essa pergunta, enquanto isso pode-se tornar um usuario premium para atendimento especializado. Saiba mais em escritorios de advocacia online.Answer this Question
You must be Logged In to post an Answer.
Not a member yet? Sign Up Now »
Star Points Scale
Earn points for Asking and Answering Questions!