Trump says inflation is temporary due to the Iran war, as US consumer prices hit a three-year high of 3.8%.