File tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed
challenge-18/submissions/hudazaan Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change 1+ package main
2+
3+ import (
4+ "fmt"
5+ "math"
6+ )
7+
8+ func main () {
9+ // Example usage
10+ celsius := 25.0
11+ fahrenheit := CelsiusToFahrenheit (celsius )
12+ fmt .Printf ("%.2f°C is equal to %.2f°F\n " , celsius , fahrenheit )
13+
14+ fahrenheit = 68.0
15+ celsius = FahrenheitToCelsius (fahrenheit )
16+ fmt .Printf ("%.2f°F is equal to %.2f°C\n " , fahrenheit , celsius )
17+ }
18+
19+ // CelsiusToFahrenheit converts a temperature from Celsius to Fahrenheit
20+ // Formula: F = C × 9/5 + 32
21+ func CelsiusToFahrenheit (celsius float64 ) float64 {
22+ fahrenheit := celsius * 9 / 5 + 32
23+ return Round (fahrenheit , 2 )
24+ }
25+
26+ // FahrenheitToCelsius converts a temperature from Fahrenheit to Celsius
27+ // Formula: C = (F - 32) × 5/9
28+ func FahrenheitToCelsius (fahrenheit float64 ) float64 {
29+ celsius := (fahrenheit - 32 ) * 5 / 9
30+ return Round (celsius , 2 )
31+ }
32+
33+ // Round rounds a float64 value to the specified number of decimal places
34+ func Round (value float64 , decimals int ) float64 {
35+ precision := math .Pow10 (decimals )
36+ return math .Round (value * precision ) / precision
37+ }
You can’t perform that action at this time.
0 commit comments