It is more correct to realize it with rules but it is a lot of typing so I made it with custom C# code.
In Infopath Designer 2010 create a form naming controls accordingly:


On ribbon click Developer tab click Changed Event button having chosen each of text boxes, verifying changes in the code in opened VSTA (Visual Studio Tools for Applications) upon each click.
Make changes according this code snippet:
using Microsoft.Office.InfoPath;
using System;
using System.Windows.Forms;
using System.Xml;
using System.Xml.XPath;
using mshtml;
namespace IP_Calculated_Value {
public partial class FormCode
{
int iTextBox1, iTextBox2, iTextBox3;
XPathNavigator calculatedNode, textBox1Node, textBox2Node, textBox3Node;
public void InternalStartup()
{
calculatedNode = this.MainDataSource.CreateNavigator().
SelectSingleNode("/my:myFields/my:Calculated", NamespaceManager);
calculatedNode.SetValue
("Enter integers into textboxes and click outside to see calculated value");
textBox1Node = this.MainDataSource.CreateNavigator().
SelectSingleNode("/my:myFields/my:TextBox1", NamespaceManager);
textBox2Node=this.MainDataSource.CreateNavigator().
SelectSingleNode("/my:myFields/my:TextBox2", NamespaceManager);
textBox3Node = this.MainDataSource.CreateNavigator().
SelectSingleNode("/my:myFields/my:TextBox3", NamespaceManager);
EventManager.XmlEvents["/my:myFields/my:TextBox1"].Changed +=
new XmlChangedEventHandler(TextBox1_Changed);
EventManager.XmlEvents["/my:myFields/my:TextBox3"].Changed +=
new XmlChangedEventHandler(TextBox3_Changed);
EventManager.XmlEvents["/my:myFields/my:TextBox2"].Changed +=
new XmlChangedEventHandler(TextBox2_Changed);
}
public void TextBox1_Changed(object sender, XmlEventArgs e)
{
iTextBox1 = Convert.ToInt32(textBox1Node.Value);
ShowCalculated();
}
public void TextBox2_Changed(object sender, XmlEventArgs e)
{
iTextBox2 = Convert.ToInt32(textBox2Node.Value);
ShowCalculated();
}
public void TextBox3_Changed(object sender, XmlEventArgs e)
{
iTextBox3 = Convert.ToInt32(textBox3Node.Value);
ShowCalculated();
}
public void ShowCalculated()
{
int sum = iTextBox1 + iTextBox2 + iTextBox3;
calculatedNode.SetValue("Outside of permitted sum range");
if (sum >= 1 && sum <= 4) calculatedNode.SetValue("Low");
if (sum >= 5 && sum <= 10) calculatedNode.SetValue("Medium");
if (sum >= 11 && sum < 14) calculatedNode.SetValue("High");
}
} }