home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1997 #3 / amigamamagazinepolishissue03-1 / ma_1995 / 08 / ami011b.txt < prev    next >
Text File  |  1997-04-07  |  742b  |  73 lines

  1. <l>
  2.  
  3. /*******************************************/
  4.  
  5. /* Program liczy liczbë pi metodâ trapezów */
  6.  
  7. /*      Napisane dla Magazynu Amiga        */
  8.  
  9. /*              1995 by BsZ                */
  10.  
  11. /*******************************************/
  12.  
  13.  
  14.  
  15. #include <stdio.h>
  16.  
  17. #include <stdlib.h>
  18.  
  19. #include <time.h>
  20.  
  21.  
  22.  
  23. float f(float x)
  24.  
  25. {
  26.  
  27.     return((float)(1.0/(1+x*x)));
  28.  
  29. }
  30.  
  31.  
  32.  
  33.  
  34.  
  35. main(int argc, char *argv[])
  36.  
  37. {
  38.  
  39.     long int loop;
  40.  
  41.     float N,pi=0;
  42.  
  43.     long int t0,t;
  44.  
  45.  
  46.  
  47.     if(argc!=2)
  48.  
  49.     {
  50.  
  51.         printf("Nie podaîeô podziaîu!\n");
  52.  
  53.         exit(0);
  54.  
  55.     }
  56.  
  57.     N=(float)atol(argv[1]);
  58.  
  59.     time(&t0);
  60.  
  61.     for(loop=1;loop<=N;loop++)
  62.  
  63.         pi+=f( (float)((loop-1)/N) ) + f( (float)(loop/N) );
  64.  
  65.     pi*=2.0/N;
  66.  
  67.     time(&t);
  68.  
  69.     printf("Wyliczona wartoôê pi: %f\nCzas obliczeï: %lds\n",pi,t-t0);
  70.  
  71. }
  72.  
  73.