pi
[1] 3.141593
round(pi,3)
[1] 3.142
round(pi,4)
[1] 3.1416
x <- c(2.3456,0.0045,0.0035,0.0345,0.0355,5.5555)
round(x,3)
[1] 2.346 0.004 0.004 0.034 0.035 5.556
1/3 - 0.33333333333333
[1] 3.330669e-15
(1/3 - 0.33333333333333)*1000
[1] 3.330669e-12
20.55 - 19.2 - 1.35
[1] 1.332268e-15
20.55 - 1.35 - 19.2
[1] 0
abs(x - xp), abs((x-xp)/x)
(xp <- (1/3 - 0.33333333333333))
[1] 3.330669e-15
(x <- 3.3333333333333 *10^(-15))
[1] 3.333333e-15
abs(x-xp)
[1] 2.664259e-18
abs((x-xp)/x)
[1] 0.0007992778
\[ x = \frac{-b \pm \sqrt{b^2-4ac}}{2a} \]
\[ \begin{align*} x &= \frac{-b \pm \sqrt{b^2-4ac}}{2a} \\ &= \frac{-b \pm \sqrt{b^2-4ac}}{2a} \times \frac{-b \mp \sqrt{b^2-4ac}}{-b \mp \sqrt{b^2-4ac}}\\ &= \frac{b^2 - (b^2-4ac)}{2a(-b \mp \sqrt{b^2-4ac})}\\ &= \frac{-2c}{b \pm \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
\[ \begin{align*} x_1 &= \frac{-b + \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b + \sqrt{b^2-4ac}}\\ \\ x_2 &= \frac{-b - \sqrt{b^2-4ac}}{2a} = \frac{-2c}{b - \sqrt{b^2-4ac}} \end{align*} \]
quadratic <- function (b2 , b1 , b0) {
t1 <- sqrt (b1^2 - 4*b2*b0)
t2 <- 2*b2
x1 <- (-b1 + t1)/t2
x2 <- (-b1 - t1)/t2
return (c(x1,x2)) }
quadratic2 <- function (b2 , b1 , b0) {
t1 <- sqrt (b1^2 - 4*b2*b0)
t2 <- 2*b0
x1 <- t2/(-b1 - t1)
x2 <- t2/(-b1 + t1)
return (c(x1 , x2)) }
b2 <- 94906265.625
b1 <- 189812534.000
b0 <- 94906268.375
print(quadratic(b2, b1, b0), digits = 20)
[1] -1.0000000144879793 -1.0000000144879793
print(quadratic2(b2, b1, b0), digits = 20)
[1] -1.000000014487979 -1.000000014487979
quadraticP3 <- function(a,b,c) {
d <- sqrt(b^2 - 4*a*c)
x1 <- 0
x2 <- 0
test <- (4*a*c)/b**2 #If b^2 >> 4ac, test = small.
eps = 0.1
if (test > eps) { #Reqular formulas
x1 <- (-b+d)/(2*a)
x2 <- (-b-d)/(2*a)
Loop <- 1 } else {
if (b > 0)
{ x1 = 2*c/(-b-d) #New formula
x2 = (-b-d)/(2*a) #Regular formula
Loop <- 2 } else
{ x1 = (-b+d)/(2*a) #Regular formula
x2 = 2*c/(-b+d) #New formula
Loop <- 3 } }
return (c(x1,x2,Loop)) }
b2 <- 94906265.625
b1 <- 189812534.000
b0 <- 94906268.375
print(quadraticP3(b2, b1, b0), digits = 20)
[1] -1.0000000144879793 -1.0000000144879793 1.0000000000000000
print(quadratic(b2, b1, b0), digits = 20)
[1] -1.0000000144879793 -1.0000000144879793
\( x^2 + 3x + 1 = 0 \)
a <- 1
b <- 3
c <- 1
print(quadraticP3(a, b, c), digits = 20)
[1] -0.3819660112501051 -2.6180339887498949 1.0000000000000000
print(quadratic(a, b, c), digits = 20)
[1] -0.3819660112501051 -2.6180339887498949
\( x^2 + 100x + 1 = 0 \)
a <- 1
b <- 100
c <- 1
print(quadraticP3(a, b, c), digits = 20)
[1] -0.010001000200050014 -99.989998999799951207 2.000000000000000000
print(quadratic(a, b, c), digits = 20)
[1] -0.010001000200048793 -99.989998999799951207
\( x^2 - 100x + 1 = 0 \)
a <- 1
b <- -100
c <- 1
print(quadraticP3(a, b, c), digits = 20)
[1] 99.989998999799951207 0.010001000200050014 3.000000000000000000
print(quadratic2(a, b, c), digits = 20)
[1] 99.989998999812158331 0.010001000200050014
\( x^2 + 10^{15} x + 1 = 0 \)
a <- 1
b <- 10^15
c <- 1
print(quadraticP3(a, b, c), digits = 20)
[1] -1.0000000000000001e-15 -1.0000000000000000e+15 2.0000000000000000e+00
print(quadratic2(a, b, c), digits = 20)
[1] -1.0000000000000001e-15 Inf