program sinus, czy ten kod jest poprawny?

0
#include <stdio.h>
typedef double real;

real sine( real x )
int main(void) {
      volatile real ostatniX, x, h;
   int n, i;
   for( n=10; n<=1000000000; n *= 10 ) {
      h=1/n;
      x=a=0.0;
      for( i=0; i<=n; i++ ) {
         // printf("%0.15f %0.15f %f0.15\n" ,    x, sine(x), sine(a + h ) ,sine(i*h));
         ostatniX = x;
         x += h; }
      x = ostatniX;
      printf("%12d  %0.15f %0.15f %0.15f\n" , n, x, sine(x), sine(a + n*h ),sine(i*h));
   }
   return 0; 

Czy powyższy kod jest dobry, bo chciałabym mieć program, który
mając dany argument x=0.0\ h=\frac{1}{n}, n=10 \cdots 10000000000

liczył
a)\sin(x+h) i kolejne wyrazy
b) \sin(i*h)

i dodatkowo wszytsko musi byc w jedym progrmie

0

A gdzie masz definicję funkcji? Lepiej, gdzie masz deklarację?

0

zastanów się czy znasz odpowiedź na pytanie: po co użyłeś volatile w tym kodzie?

0

pewnie może... kombinuje by wyszło....

0

Kasiuniu:

  1. żeby użyć funkcji sinus, należy dołączyć bibliotekę math.h (include <math.h>). Funkcja sinus jest tam pod nazwą sin (http://www.cplusplus.com/reference/clibrary/cmath/sin/).
  2. volatile to słówko kluczowe używane raczej w wyjątkowych sytuacjach, w Twoim przypadku jest niepotrzebne
  3. spokojnie, nie denerwuj się :) zacznij pisać program od początku może? małymi krokami, alleluja i do przodu :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1