Paletas Posted May 23, 2006 at 09:14 PM Report #29209 Posted May 23, 2006 at 09:14 PM Bem um amigo meu estava a programar uma calculadora com fórmulas de um jogo e deparou-se com um caso complicado! Ele precisava de elevar uma variável a 0,8 , ora com um ciclo For parece-me completamente impossivel, ja tentei alterar a formula de maneira matematica e nada.. Se alguem tiver uma sugestão, ja me matei a pensar nisso e nada! Obrigado, Paletas~
José Oliveira Posted May 23, 2006 at 10:17 PM Report #29226 Posted May 23, 2006 at 10:17 PM Já não me lembro como se calculam raízes no Pascal. Se a variável a que te referes for x, então x^0,8 = x^(8/10) = x^(4/5) = raiz quinta de x^4 José Oliveira Educação, Matemática e Tecnologias
Paletas Posted May 24, 2006 at 11:36 AM Author Report #29281 Posted May 24, 2006 at 11:36 AM Já não me lembro como se calculam raízes no Pascal. Se a variável a que te referes for x, então x^0,8 = x^(8/10) = x^(4/5) = raiz quinta de x^4 Não apanhei a parte do "raiz quinta de x^4" Mas obrigado! Até o meu professor de bases de programação ficou a olhar quando lhe fiz a pergunta :dontgetit:... Obrigado, Paletas~
UnKnowN Posted May 24, 2006 at 12:37 PM Report #29291 Posted May 24, 2006 at 12:37 PM Já não me lembro como se calculam raízes no Pascal. Se a variável a que te referes for x, então x^0,8 = x^(8/10) = x^(4/5) = raiz quinta de x^4 Tens a certeza que a função '^' existe em Pascal ? é que a mim dá-me erro :|
brink@ero Posted May 24, 2006 at 12:51 PM Report #29294 Posted May 24, 2006 at 12:51 PM Já não me lembro como se calculam raízes no Pascal. Se a variável a que te referes for x, então x^0,8 = x^(8/10) = x^(4/5) = raiz quinta de x^4 Não apanhei a parte do "raiz quinta de x^4" Mas obrigado! Até o meu professor de bases de programação ficou a olhar quando lhe fiz a pergunta :dontgetit:... Obrigado, Paletas~ Bem, apetece-me dizer uma piada: Então, a raiz quinta é a seguir à raiz quarta, que depois é a raiz sexta, sábado, domingo e depois volta para a raiz segunda ou raiz de segunda (raiz de baixa categoria). 😁 Agora a sério, ele quis dizer foi raiz de índice 5 de (x^4): 5 +------ \| x^4 Cumpr. bk@ero 👍
UnKnowN Posted May 24, 2006 at 12:58 PM Report #29297 Posted May 24, 2006 at 12:58 PM Paletas~ se nao percebeste o desenho do bk@ero que tava mt fixe 👍 é o mesmo que raiz cúbica (com um 3 na raiz), mas desta vez com um 5 , ou seja raiz "quinta" de x^4 😄
José Oliveira Posted May 24, 2006 at 04:45 PM Report #29314 Posted May 24, 2006 at 04:45 PM Agora a sério, ele quis dizer foi raiz de índice 5 de (x^4): 5 +------ \| x^4 É isso, obrigado, como já não uso Pascal há anos não sei dizer como fazer isto em Pascal... José Oliveira Educação, Matemática e Tecnologias
Paletas Posted May 24, 2006 at 08:28 PM Author Report #29376 Posted May 24, 2006 at 08:28 PM Obrigado pelo desenho 👍 Agora vou ver de descubro como fazer isso em pascal! Obrigado, Paletas
maiden Posted May 24, 2006 at 09:30 PM Report #29388 Posted May 24, 2006 at 09:30 PM Para fazeres a potencia podes utilizar uma função function potencia (num,elev:integer) : integer; var poten,i:integer; begin poten:=1; for i:=1 to elev do poten:=poten*num; potencia:=poten; end; Agora para fazeres essa raiz marada é que não sei. Só sei fazer a raiz normal utilizando a função sqrt. Cumps,
José Oliveira Posted May 24, 2006 at 09:51 PM Report #29395 Posted May 24, 2006 at 09:51 PM ______________________________________________ function raiz(indice : real; base : integer):real; begin raiz := exp((1/indice)*ln(base)); end; ______________________________________________ Que tal? José Oliveira Educação, Matemática e Tecnologias
Paletas Posted May 25, 2006 at 12:02 PM Author Report #29451 Posted May 25, 2006 at 12:02 PM MAiDEN_DuDE - Se fosse assim tão fácil eu ja tinha feito 😁, o prob e que o For não dá com variáveis do tipo Real! Mas obrigado! José Oliveira - Acho que isso deve funcionar, depois da escola vou fazer os devidos testes! Obrigado +1 vez! Obrigado, Paletas~
José Oliveira Posted May 25, 2006 at 12:13 PM Report #29452 Posted May 25, 2006 at 12:13 PM Depois, diz-nos se conseguiste. José Oliveira Educação, Matemática e Tecnologias
Paletas Posted May 25, 2006 at 06:03 PM Author Report #29507 Posted May 25, 2006 at 06:03 PM Program sss; Uses crt; Var indice : real; base : integer; function raiz (indice : real; base : integer):real; begin raiz := exp ((1/indice)*ln(base)); end; Begin writeln ('indice'); readln (indice); writeln('base'); readln(base); writeln (raiz(indice,base)); readln; End. Dá-me erro "Error 200 : Division by Zero" Ou seja, compila sem problemas, e quando vai a começar diz logo isso! Vou meter os neurónios a funcionar e ver o que se passa... ou tentar! EDIT - Bem, em vez de usar o Turbo Pascal tentei corre-lo no Dev-Pascal, e funcionou! Agora vo mandar ao tal amigo e ver se dá os resultados que ele quer... EDIT2 - Segundo ele, os resultados não são os esperados, mas já to aqui a pensar numas alterações que devem funcionar! Obrigado, Paletas
Saco Posted June 8, 2006 at 09:50 PM Report #31942 Posted June 8, 2006 at 09:50 PM "Division by zero" quer dizer "Divisão por zero" que como sabes, ou devias saber é impossível (experimenta fazer qualquer coisa a dividir por zero numa calculadora e vê o que dá...). A conta está mal. Devia ser exp(indice*ln(base)). Base teórica: http://img360.imageshack.us/img360/4112/dem6px.png ups, ficou um bocado grande ? paciencia, é p'ra se ver bem
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