Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

la funzione pow

0 views
Skip to first unread message

adriano meis

unread,
Jul 3, 2008, 1:37:09 PM7/3/08
to
la funzione pow


Salve,
ho il dev c++ e win98.
Ho scritto il programmino che segua. il suo scopo č inizializzare il vettore
v[N] con gli
opportuni valori.

////////////////////////////////////////////////////////////////////////////
/////////////

#include <math.h>
#include <stdlib.h>
#include <stdio.h>

main()
{
int N=32,i;
double z,base;
double v[N];

base=(5/6);
v[0]=-9;
v[1]=0;

for(i=2; i<N; i++)
{
z=N-i;
v[i]=9*pow(base,(N-i));
printf("v[i]=%f\n", v[i]); getchar();
}

}


////////////////////////////////////////////////////////////////////////////
///////////

Esso non funziona. Infatti mi stampa a video di continuo, per ogni valore di
"i", il valore:
v[i]= 0.0000000.


invece, se al posto di:

double base;
base=5/6;

si ponga, nel codice precedente:

double base;
base=0.83333 (che grosso modo č pari a 5/6)

allora il problema scompare.

Perchč?
Che c'č di errato con base=5/6?

L'errore permane anche se io scriva:

double base;
base=(double) (5/6);


grazie,

adriano

Pleg

unread,
Jul 3, 2008, 3:00:15 PM7/3/08
to
5 e 6 sono numeri interi, non a virgola mobile (in intero, 5/6=0 resto 5).
Prova a mettere "base = 5.0/6.0".


Pleg


0 new messages