#
# PYTHON
#
# Tartaglia-Cardano
#
# &
#
# Ferrari
# 
# Março 2026 qua,18 — ter, 24
# by 
# j
# 

import math

def tartagliacardano(A,B,C,D,prt):
  
  b = B/A 
  c = C/A 
  d = D/A 
  
  p = -(1/3)*b**2 + c 
  q = (2/27)*b**3 - (1/3)*b*c + d
  
  r = -(q/2)
  s = ((q/2)**2 + (p/3)**3)**(1/2)
  
  x = (r + s)**(1/3) + (r-s)**(1/3)
  
  z = x - (1/3)*b

  if (prt == 1):
      
      print('b = ',b)
      print('c = ',c)
      print('d = ',d)
      print('p = ',p)
      print('q = ',q)
      print('r = ',r)
      print('s = ',s)
      print('x = ',x)
      print('z = ',z)
  
  return z
  
def ferrari(A,B,C,D,E):

  print('@@@ Exemplo • Ferrari @@@')
  print('')
    
  b = B/A 
  c = C/A 
  d = D/A 
  e = E/A 
  
  AA = -8
  BB = 4*c
  CC = -2*b*d + 8*e 
  DD = d**2 - 4*c*e + (b**2)*e 
  
  y = tartagliacardano(AA,BB,CC,DD,0)
  
  aa = 2*y - c + (b**2)/4
  bb = b*y - d
  cc = y**2 - e 
  
  xx = -bb/(2*aa)
  
  alpha = + (aa)**(1/2)
  beta  = - ((aa)**(1/2))*xx
  
  faa = 1
  fbb = b/2 - alpha
  fcc = y - beta
  
  fdelta = fbb**2 - 4*faa*fcc
  
  gaa = 1
  gbb = b/2 + alpha
  gcc = y + beta
  
  gdelta = gbb**2 - 4*gaa*gcc
  
  x1 = (1/(2*faa))*(-fbb + fdelta**(1/2))
  x2 = (1/(2*faa))*(-fbb - fdelta**(1/2))
  x3 = (1/(2*gaa))*(-gbb + gdelta**(1/2))
  x4 = (1/(2*gaa))*(-gbb - gdelta**(1/2))
  
  print('A     =',A)
  print('B     =',B)
  print('C     =',C)
  print('D     =',D)
  print('E     =',E)
  print('')
  print('b     =',b)
  print('c     =',c)
  print('d     =',d)
  print('e     =',e)
  print('')
  print('*** Tartaglia-Cardano ***')
  print('A     = ',AA)
  print('B     = ',BB)
  print('C     = ',CC)
  print('D.    = ',DD)
  print('*** ~~~ ***')
  print('')
  print('y     =',y)
  print('')
  print('A     =',aa)
  print('x0    =',xx)
  print('')
  print('alpha =',alpha)
  print('beta  =',beta)
  print('')
  print('x1    =',x1)
  print('x2    =',x2)
  print('x3    =',x3)
  print('x4    =',x4)
  print('')
  
#print(tartagliacardano(-5,1,3,2))

ferrari(-5,1,3,4,-1)
ferrari(1,1,-10,1,1)
ferrari(1,0,-260,1,16808)

#print(tartagliacardano(1,-11,14,-118,1))

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: