IZhaq_melo
(usa FreeBSD)
Enviado em 01/08/2014 - 10:03h
paulo1205 escreveu:
IZhaq_melo escreveu:
ta vamos com calma..
1º a máquina que voce ta executando isso é 64 ou 32 bits? não sei se voce sabe mas os tipos de dados são indexados de acordo com a palavra da máquina, exemplo um dispositivo arm com um linux tem o mesmo Float que um PC ou mesmo um Server 64 bits?? não né!
Errado. Ponto flutuante não tem necessariamente a ver com arquitetura. Alguns processadores mais simples só trabalham com inteiros, e toda a representação de FP é feita em software.
Apesar disso, existem representações padronizadas de FP, como a IEEE-754, que podem ser implementadas em hardware ou por software e que funcionam de modo idêntico em qualquer dessas implementações. Para você ter uma ideia, desde o tempo dos XTs de 16bits com MS-DOS, desde que equipados com coprocessador matemático 8087, os PCs comuns já podiam se servir do formato IEEE-754, que é o mesmo que se usa, hoje, quase universalmente.
Usar mais bits de precisão não necessariamente elimina erros de arredondamento: geralmente só os empurra algumas casas mais para a direita.
se mesmo assim não for suficiente.. não use o long double do c ele so aceita valores positivos.
Viajou!!
se tudo que eu disse não for o suficiente..
voce vai ter que usar a linguagem de programação que os físicos usam FORTRAN ( 95 )
Não muda nem uma letra das considerações acima.
Você deveria saber que Informática não é mágica. Far-lhe-ia muito bem estudar uma disciplina chamada "Cálculo Numérico".
De onde você tirou isso? Errou tanto nas considerações sobre C (que não estabelece limites exatos para os tipos de dados de FP) quanto na generalização que faz de uma implementação específica de Fortran (no link que você mostrou, 32 bytes só são usados com COMPLEX*32, que é a composição de dois números reais REAL*16 para representar a parte real e a imaginária de um número complexo, e só estão disponíveis numa implementação específica do compilador).
Além do mais, você não leva em conta que o C99 introduziu números complexos com diferentes precisões, análogos aos
float,
double e
long double, e para rivalizar que o que é oferecido pelo Fortran (para mim, é um erro tentar transformar o C num competidor de Fortran, mas é o que o comitê da linguagem tem feito desde o padrão de 1999, e agora, de novo, no de 2011).
bom dia,
Vejo que o Paulo não deu a devida atenção Sam L, mas somente a algumas ambiguidades do que eu disse:
O Paulo comentou:
Errado. Ponto flutuante não tem necessariamente a ver com arquitetura. Alguns processadores mais simples só trabalham com inteiros, e toda a representação de FP é feita em software. Apesar disso, existem representações padronizadas de FP, como a IEEE-754, que podem ser implementadas em hardware ou por software e que funcionam de modo idêntico em qualquer dessas implementações. Para você ter uma ideia, desde o tempo dos XTs de 16bits com MS-DOS, desde que equipados com coprocessador matemático 8087, os PCs comuns já podiam se servir do formato IEEE-754, que é o mesmo que se usa, hoje, quase universalmente.
( realmente ele estaria certo se o mundo fosse perfeito e a computação fosse inventada depois de 1985 a data que criaram essa iso, porém tem vários sistemas que ainda implementam de forma diferente dos de ieee754 pois o que conta é compatibilidade e não uma iso; quer um exemplo disso veja o link que eu mandei da Oraracle.. no cabeçalho tem: Default Alignment SPARC x86 e Alignment in COMMON e os tamanhos de cada Byte muda, isso ta errado Reclama com a SUN foi so um exemplo que o mundo funcionava antes da tua ISO )
O Paulo comentou:
Usar mais bits de precisão não necessariamente elimina erros de arredondamento: geralmente só os empurra algumas casas mais para a direita.
( sim voce ta certo em expressar isso mas ao mesmo tempo não vi voce tentar fazer nada, aqui é não é uma guerra de ego, to tentando ajudar o cara nao discutir contigo sobre arquitetura moderna.. talvez tentando daqui e um pouco de la ele chegue ao que precisa..
um coisa que ve em lógica de programação ou sabe tabela verdade.. nós alteramos parametros para poder ter resultados diferentes... mas fazer o que nao de para acerta de primeiro, mas posso te dizer estou muito mais perto de acertar do que alguém que apenas ACHA QUE SABE E NAO DIZ A NINGUÉM como resolver. )
Comentei
Usar mais bits de precisão não necessariamente elimina erros de arredondamento: geralmente só os empurra algumas casas mais para a direita.
se mesmo assim não for suficiente.. não use o long double do c ele só aceita valores positivos.
O Paulo em seu vocabulário pobre e ofensivo retrucou:
Viajou!!
Apenas errei o termo certo seria
unsigned double, do qual perde totalmente os pontos flutuantes.
O Paulo disse:
Você deveria saber que Informática não é mágica. Far-lhe-ia muito bem estudar uma disciplina chamada "Cálculo Numérico".
sobre o que comentei para mudar de linguagem de programação em que o projeto está.
Você deveria saber que Informática não é mágica. Far-lhe-ia muito bem estudar uma disciplina chamada "Cálculo Numérico".
veja os tipos de dados:
veja a comparação o...
De onde você tirou isso? Errou tanto nas considerações sobre C (que não estabelece limites exatos para os tipos de dados de FP) quanto na generalização que faz de uma implementação específica de Fortran (no link que você mostrou, 32 bytes só são usados com COMPLEX*32, que é a composição de dois números reais REAL*16 para representar a parte real e a imaginária de um número complexo, e só estão disponíveis numa implementação específica do compilador).
Além do mais, você não leva em conta que o C99 introduziu números complexos com diferentes precisões, análogos aos float, double e long double, e para rivalizar que o que é oferecido pelo Fortran (para mim, é um erro tentar transformar o C num competidor de Fortran, mas é o que o comitê da linguagem tem feito desde o padrão de 1999, e agora, de novo, no de 2011).
Paulo sou uma sugestão e sim, levei em consideração o ambiente em que ele esta coisa que voce deve pensar que é algo tipo NASA com máquinas com compiladores de 128 bits.
como expus na questão anterior o meu questionamento, era sobre a precisão apenas comentei sobre o que vejo que é padrão AINDA arquitetura x86,
dentre os padrões C99 e C2011 creio que apenas citar isso seja irrelevante ja que voce não ta propondo nada.. voce ta dizendo, da pra fazer depois disso implementaram tal coisa agora vai..
Proponha exemplos, não fique ai se masturbando com conhecimentos que voce torna tão futeis quanto sua argumentação,
Não vou argumentar contra o seu ultimo paragrafo que parece mais um alocação de ego ja que voce nem responde ao SAM mas somente a minha pessoa.. vejo que curte ser aqueles idiotas que corrigem a todos MAS AINDA ESCREVE MIM NO COMEÇO DE ALGUMA FRASE:
"..Fortran (para mim, é um erro tentar transformar o.."
( ainda tentou disfarçar com a virgula, que esta totalmente no lugar errado. Como voce mesmo gosta de dizer VIAJOU, a não ser que voce fale Tupi Guarani... rsss )
veja o que o Thihup comentou sobre os tipos de retornos..
outra coisa seria interessante saber como as função cos_theta trabalha, mas o jeito é testar... até chegar num ponto comum.