Incorrect result for basic one and two digit arithmetic

this is weird. Can you print pi as well ?

float radius;
float pi = 3.14;
float area;

void setup()
{

  Serial.begin(115200);
}

void loop()
{
  Serial.print("Enter radius: ");
  while (Serial.available() == 0) ;

  radius = Serial.parseFloat();
  // debug
  Serial.println(radius);

  // more debug
  Serial.print("Radius square: ");
  Serial.println(radius * radius);

  // more debug
  Serial.print("pi: ");
  Serial.println(pi, 6i);


  area = pi * radius * radius;
  Serial.print("The area is: ");
  Serial.println(area);
  Serial.println();
}