Menu
Coddy logo textTech

Récapitulatif - Gérer les problèmes

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 109 sur 109.

challenge icon

Défi

Facile

Pratiquons la gestion des erreurs en Go avec un programme simple de conversion de température.

Votre tâche consiste à implémenter une fonction qui convertit les températures de Celsius en Fahrenheit, avec une gestion appropriée des erreurs.

Complétez la fonction celsiusToFahrenheit qui :

  • Convertit une température Celsius en Fahrenheit en utilisant la formule : F = C × 9/5 + 32
  • Renvoie une erreur si la température est inférieure au zéro absolu (-273.15°C)

Pour le message d'erreur, vous devez renvoyer exactement : "Error: temperature below absolute zero"

La fonction main contient des cas de test pour vérifier votre implémentation.

Essayez vous-même

package main

import (
	"errors"
	"fmt"
)

// celsiusToFahrenheit convertit les Celsius en Fahrenheit
// Retourne une erreur si la température est inférieure au zéro absolu (-273.15°C)
func celsiusToFahrenheit(celsius float64) (float64, error) {
	// TODO: Implémenter la logique de conversion
	// 1. Vérifier si la température est inférieure au zéro absolu (-273.15°C)
	// 2. Si elle est valide, convertir en utilisant la formule : F = C × 9/5 + 32
	// 3. Retourner la valeur appropriée et l'erreur
	return 0, nil
}

func main() {
	// Tester une température valide
	fmt.Println("Converting 25°C to Fahrenheit:")
	fahrenheit, err := celsiusToFahrenheit(25)
	if err != nil {
		fmt.Println(err)
	} else {
		fmt.Printf("25°C = %.2f°F\n", fahrenheit)
	}

	// Tester une autre température valide
	fmt.Println("\nConverting 0°C to Fahrenheit:")
	fahrenheit, err = celsiusToFahrenheit(0)
	if err != nil {
		fmt.Println(err)
	} else {
		fmt.Printf("0°C = %.2f°F\n", fahrenheit)
	}

	// Tester une température invalide (sous le zéro absolu)
	fmt.Println("\nConverting -300°C to Fahrenheit:")
	fahrenheit, err = celsiusToFahrenheit(-300)
	if err != nil {
		fmt.Println(err)
	} else {
		fmt.Printf("-300°C = %.2f°F\n", fahrenheit)
	}
}

Toutes les leçons de Fondamentaux