There are a number of things wrong with your code:

`decimal temp= 6900 * ( 5 / 100);`

Is not "345.0000": it is 0.0 because 5 is an integer value, as is 100, and 5 / 100 is zero in integer math. So what you actually need to do is:`decimal temp= 6900M * ( 5M / 100M);`

to indicate Decimal numebers and Decimal math.In this case, Math.Round will do nothing, as the value of 345 is already rounded to 2 decimal places: Rounding removed trailing digits and converts numbers like 66.66666 to 66.67.

To format a number to a specific number of decimal places, you need to convert it to a string, and specify the number of digits you want:

```
decimal temp = 6900M * (5M / 100M);
decimal rounded = Math.Round(temp, 2);
Console.WriteLine("{0:0.00}:{1:0.00}", temp, rounded);
```

Which will give you:345.00:345.00

345.00:345.00

Or:

```
decimal temp = 66.66666M;
decimal rounded = Math.Round(temp, 2);
Console.WriteLine("{0}:{1}", temp, rounded);
Console.WriteLine("{0:0.00}:{1:0.00}", temp, rounded);
```

Which gives you:```
66.66666:66.67
66.67:66.67
```