Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

92
Views
Propiedad calculada para sumar matrices numéricas en Swift

La tarea del libro dice: sin llamar al método reduce(_: _:), suma secuencias de números agregando una propiedad calculada llamada suma. Deberías poder usarlo así:

 [3, 7, 7].sum // 17 [8.5, 1.1, 0.1].sum // 9.7

Sugerencia de los autores: en la documentación del desarrollador, verifique a qué protocolos se ajustan Int y Double, y de qué protocolos heredan esos protocolos. Dentro del código a continuación, simplemente combiné dos soluciones que encontré, sin embargo, todavía contiene el método de reducción. Si puede ayudarme a comprender cómo se puede resolver esto / qué parte de la documentación del desarrollador proporciona una pista. Además, ¿cómo puedo evitar un error en el código actual/aplicar una posible solución en un rango cerrado?

 extension Sequence where Element: Numeric { var sum: Any { return reduce(0, +) } } [3, 7, 7].sum [8.5, 1.1, 0.1].sum [1...4].sum // Error: Property 'sum' requires that 'ClosedRange<Int>' conform to 'Numeric'
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

[1...4].sum está trabajando en una matriz de rango cerrado ( [...] significa "matriz de..."). Querías decir: (1...4).sum .

También quieres decir:

 var sum: Element { ... }

en lugar de Any .

Si desea hacerlo aún más genérico, puede pasar de Numeric a AdditiveArithmetic de esta manera:

 extension Sequence where Element: AdditiveArithmetic { var sum: Element { reduce(.zero, +) } }

De esa manera podría funcionar en cosas como vectores.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!