Visualizzazione dei risultati da 1 a 10 su 36

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    È tail recursive, ed in ogni caso se ti serve qualcosa puoi benissimo farlo da solo, dato che il linguaggio lo devi imparare tu.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    353
    non capisco perchè ti arrabbi tanto, era solo un' indicazione sul codice dovesse servire a qualcuno

  3. #3
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Non mi sono arrabbiato, è che non ti aiuta ad imparare un linguaggio chiedere ad altri di scrivere del codice per te.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    353
    let rec sums ((s::_) as ss) xs =
    match xs with
    | []->[]
    | [x] -> (s+x) :: ss
    | (x::xs) -> sums ((s+x)::ss) xs;;
    dovendo semplificare per fare ad esempio la somma iterata e basta
    es. [1,2,3,4,5] -> [0,1,3,6,10,15]
    per che motivo questo codice solleva un eccezione?

  5. #5
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Come la chiami? che errore ti da?
    In ogni caso
    codice:
    let rec sums ((s::_) as ss) xs =
      match xs with
        | []->[]
        | [x] -> (s+x) :: ss
        | (x::xs) -> sums ((s+x)::ss) xs;;

    E', in tutti i casi escluso (sums ss []), equivalente a
    codice:
    let rec sums ((s::_) as ss) xs =
      match xs with
        | []->ss
        | (x::xs) -> sums ((s+x)::ss) xs;;

    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    353
    molto gentile,
    mi sorge ancora un dubbio, per fare ad esempio, duplicare se un elemento è maggiore del precedente,
    si può utilizzare un pattern del tipo a::b::resto e controllare se b è > di a?

  7. #7
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Puoi fare tutto quello che vuoi con il pattern matching...
    Stai comunque sempre attento ai casi base e alle limitazioni del dominio
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.