944,118 Members | Top Members by Rank

Ad:
Feb 21st, 2005
0

Functional Programming in CAML light

Expand Post »
Hi all, I've been working hard at the programming, but have come to a stand still.

Anyway, I'm having trouble with lists. This is just one of many many many questions I have, so I will keep it down to the minimum.

I have to state whether a list is true or false, based on the integers in the list.

e.g
[1;2;3;4;5;6;7;8] would come up as TRUE#
[1;2;3;4;5;6;7;8;8;7] would come up as FALSE as this list contains two 7's and two 8's.

I have had a few ideas as to how to do this problem, and one of them is as a follows:-

If I could somehow subtract every value in the TL of the list from the HD, this would mean that if the list were as follows:-

[1;2;3;4;1], then:

1-2 = -1
1-3 = -2
1-4 = -3
1-1= 0

so if the value of the calculation is 0, then FALSE is displayed as a result.

Now I would need to do thsi recursivly, in order to take the hd(tl(tl(tl(tl(x))))

etc.....

So it would subtract every number from a 'HD', and so even if the following list was used, the recursive function would work it out:-

[1;2;3;4;5;6;7;7]

I hope that makes sense. Basically I'm having alot of trouble coding it, but I thinik that the method of solving the problem I have come up with will work.

Can anyone give me some advice and/or help?


Thanks,

Stuart.
Similar Threads
Reputation Points: 10
Solved Threads: 0
Newbie Poster
Stuart_M is offline Offline
1 posts
since Feb 2005
Sep 27th, 2005
0

Re: Functional Programming in CAML light

Hi!

Ok, this is a very old thread, and I guess you have found a solution already.
Anyway, here is how I would do it (I hope I understood you right, you just want to know if the list contains only unique elements or not, right?):
let l = [1;2;3;4];;

let rec check l =
  match l with
  | [] -> true
  | h::t -> if (List.mem h t) then false else (check t)
;;

if (check l) then 
  print_endline "no doubles" 
else 
  print_endline "doubles found"

Regards, mawe
Reputation Points: 19
Solved Threads: 58
Junior Poster
mawe is offline Offline
133 posts
since Sep 2005

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in Legacy and Other Languages Forum Timeline: Windows XP & QBASIC
Next Thread in Legacy and Other Languages Forum Timeline: Simple Download To Fix QBasic on WinXP





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC