Вопрос пользователя:
Ответ нейросети:
package main
import ( "fmt" )
type Vehicle interface { CalculateTravelTime(distance float64) float64 }
type Car struct { Type string Speed float64 }
func (c Car) CalculateTravelTime(distance float64) float64 { return distance / c.Speed }
type Motorcycle struct { Type string Speed float64 }
func (m Motorcycle) CalculateTravelTime(distance float64) float64 { return distance / m.Speed }
func EstimateTravelTime(vehicles []Vehicle, distance float64) map[string]float64 { result := make(map[string]float64) for _, v := range vehicles { result[v.(Car).Type] = v.CalculateTravelTime(distance) } return result }
func main() { car := Car{Type: "Car", Speed: 60} motorcycle := Motorcycle{Type: "Motorcycle", Speed: 80}
vehicles := []Vehicle{car, motorcycle}
distance := 100
travelTimes := EstimateTravelTime(vehicles, float64(distance))
for k, v := range travelTimes {
fmt.Printf("%s: %.2f hours\n", k, v)
}
}
Обратите внимание: ответы, предоставляемые искусственным интеллектом, могут не всегда быть точными. Не рассчитывайте на них в критически важных областях, таких как медицина, юриспруденция, финансы или в вопросах, связанных с безопасностью. Для важных решений всегда обращайтесь к квалифицированным специалистам. Администрация сайта не несет ответственности за контент, сгенерированный автоматически.