2010-11-13 5 views
1

Donc, je sais comment trouver le minimum dans une liste, mais que se passe-t-il si je veux faire un carré du résultat? Voici ce que je dois trouver le minimum:Placez le min dans une liste?

min_in_list([Min],Min).   
min_in_list([H,K|T],M) :- 
    H =< K,        
    min_in_list([H|T],M).    
min_in_list([H,K|T],M) :- 
    H > K,        
    min_in_list([K|T],M).    

Répondre

1

Il a été un certain temps, mais je pense que quelque chose comme:

min_squared(List,Squared) :- min_in_list(List, Min), Squared is Min*Min. 
0

Passez-le à une fonction qui multiplie son argument par lui-même?

+0

comment faites-vous cela? –

Questions connexes