home *** CD-ROM | disk | FTP | other *** search
/ PC & Mediji 1997 January / PCM_9701.iso / makri / acos.txt next >
Encoding:
Text File  |  1996-11-24  |  1.6 KB  |  47 lines

  1. Sub MAIN
  2.  
  3. '    program izracuna "ARCCOS" za Abs(a) < 1 (Mat.prirocnik str.380)
  4.  
  5. '__________________zajem podatka ___________________________________
  6.  
  7. a = Val(Selection$())
  8. pi = 3.1415926535898 : T = 0
  9. If Abs(a) > 1 Then R$ = " NAPAKA !  Abs (a) > 1" : T = 1 : Goto IZPIS
  10. If (a) = 0 Then R$ = "90" : Goto IZPIS
  11. If (a) = 1 Then R$ = "0" : Goto IZPIS
  12. If (a) = - 1 Then R$ = "180" : Goto IZPIS
  13.  
  14. '__________________izracun "arccos"________________________________
  15.  
  16. a2 = a : imen1 = 1 : st1 = 1 : stev1 = a2
  17. For N = 1 To 35
  18.     stev1 = a2 * a * a : a2 = stev1
  19.     imen1 = imen1 * 2 * N : imen = imen1 * (2 * N + 1)
  20.     st1 = st1 * (2 * N - 1)
  21.     K = st1  / imen  * stev1 : vrsta = vrsta + K
  22. Next
  23.     rezultat = 90 - 180 / pi * (a + vrsta) : R$ = Str$(rezultat)
  24.  
  25. '________________zaokrozitev na N decimalk________________________
  26.  
  27. N = 4
  28. prim = 1 : For I = 1 To N : prim = prim * 10 : Next
  29. dc = InStr(R$, ".")
  30. If dc > 1 Then R$ = LTrim$(Left$(Str$(rezultat), dc)) Else Goto IZPIS
  31. dec1 = Val(Mid$(Str$(rezultat), dc + 1, N + 1)) / 10
  32. dec2 = Val(Mid$(Str$(rezultat), dc + 1, N) + "0") / 10
  33. D = dec1 - dec2 : If D >= 0.5 Then dec2 = dec2 + 1
  34. dec$ = LTrim$(Str$(dec2)) : s = Len(dec$)
  35. If dec2 = prim Then R$ = Str$(Val(R$) + 1) + "." : dec$ = "0" : s = 1
  36. For x = s + 1 To N : dec$ = "0" + dec$ : Next
  37.  
  38. IZPIS:
  39.  
  40. Insert "arccos " + Str$(a) + " = " + R$ + dec$ : If T = 0 Then Superscript 1 : Insert " 0 " : Superscript 0
  41.  
  42. REM WordRight : Insert " = " + R$ + dec$ : If T = 0 Then Superscript 1 : Insert " 0 " : Superscript 0 : Insert " (arccos)"
  43.  
  44. REM WordRight : CharRight 1 :  Insert Chr$(9) + R$ + dec$
  45.  
  46. End Sub
  47.