Jump to content


Check out our Community Blogs

Register and join over 40,000 other developers!


Recent Status Updates

View All Updates

Photo
- - - - -

Javascript: Prime or not


  • Please log in to reply
5 replies to this topic

#1 reachpradeep

reachpradeep

    CC Regular

  • Just Joined
  • PipPipPip
  • 41 posts

Posted 03 March 2007 - 08:31 AM

This script is a slightly modified version of "Unique Random Numbers". In this script it becomes easier to implement more than one instances of "Picking Unique Random Numbers".

This JavaScript picks up a number of unique random elements from an array.
For example; if you have an array myArray consisting of 10 elements and want to pick 5 unique random elements. Suppose initially myArray[3] is picked randomly, then myArray[3] should not be picked again.

<html>
<head>
<title>Unique Random Numbers II</title>
<!--BEGIN HEAD SECTION CODE-->
<script language="JavaScript">
// Unique Random Numbers II
// -Picks a number of unique random numbers from an array
// By Premshree Pillai
// http://www.qiksearch.com, http://javascript.qik.cjb.net

function pickNums(nums, numArr, pickArr, count, doFlag, iterations)
{
 iterations+=1;
 var currNum = Math.round((numArr.length-1)*Math.random());
 if(count!=0)
 {
  for(var i=0; i<pickArr.length; i++)
  {
   if(numArr[currNum]==pickArr[i])
   {
    doFlag=true;
    break;
   }
  }
 }
 if(!doFlag)
 {
  pickArr[count]=numArr[currNum];
  document.write('<b>' + numArr[currNum] + '</b> <font color="#808080">|</font> ');
  /* Modify above line for a different format output */
  count+=1;
 }
 if(iterations<(numArr.length*3)) // Compare for max iterations you want
 {
  if((count<nums))
  {
   pickNums(nums, numArr, pickArr, count, doFlag, iterations);
  }
 }
 else
 {
  location.reload();
 }
}
</script>
</head>
<!--END HEAD SECTION CODE-->
<body bgcolor="#FFFFFF">

<!--BEGIN BODY SECTION CODE-->
<script language="JavaScript">
var numArr1 = new Array("0","1","2","3","4","5","6","7","8","9"); // Add elements here
var pickArr1 = new Array(); // The array that will be formed
var count1=0;
var doFlag1=false;
var iterations1=0;

pickNums(5, numArr1, pickArr1, count1, doFlag1, iterations1); // Call the function, the argument is the number of elements you want to pick.
             // Here we pick 5 unique random numbers
</script>
<!--END BODY SECTION CODE-->

</body>
</html>

  • 1

#2 RikkoSuperb

RikkoSuperb

    CC Newcomer

  • Just Joined
  • PipPip
  • 20 posts

Posted 21 August 2007 - 09:14 AM

Very useful script reachpradeep, Im looking at the code to try to understand what is happening and why. Is it possible to alter the length of the array and its contents??
  • 0

#3 John

John

    CC Mentor

  • Moderator
  • 4450 posts
  • Location:New York, NY

Posted 21 August 2007 - 07:37 PM

Nice code, but as your title suggests, what does this have to do with 'prime' numbers? ie) 3, 5, 7, 11, 13
  • 0

#4 RikkoSuperb

RikkoSuperb

    CC Newcomer

  • Just Joined
  • PipPip
  • 20 posts

Posted 22 August 2007 - 05:59 AM

True enough Sidewinder, when you run the code you never seem to get 5 prime numbers
  • 0

#5 RikkoSuperb

RikkoSuperb

    CC Newcomer

  • Just Joined
  • PipPip
  • 20 posts

Posted 23 August 2007 - 05:58 AM

ah, I get you now.
// I suppose life does become clearer once you read the added comments...!
  • 0

#6 Khaotic

Khaotic

    CC Resident

  • Just Joined
  • PipPipPipPip
  • 62 posts

Posted 24 May 2009 - 08:09 PM

Very nice +1
  • 0
Check out my site: www.khaoticirc.net




Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download