الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال ب Php

بدأه PhishingWolf في 21 فبراير 2009 · 4 رد · 610 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــة ،،

مرحباً أنا عم أتعلم

php

و لساتني مبتدئ فيها و عندي سؤال:

بدي أكتب كود يطبعلي

تحليل أي عدد لعوامله الأولية

عن طريق

php

#2

نوعا ما صعب تكتب الكود هذا لأي عدد، مثلا لو اكتفينا بالاعداد اقل من n

نحتاج مصفوفة للأعداد الاولية اقل من n بعد كذا ممكن كود بالفكرة هذي:

<?php

$num = 30; // our number, must make sure primes include all the prime numbers less than or equal to this number, and that its a positive int
		   // otherwise YOU WILL HAVE AN INFINITE LOOP!!!!, I could make sure this never happens, its just easier to check the input than add all that extra code
$res =  array() // where we'll store the results

while($num>1)
{
  foreach($primes as $p)
  {
	if($num%$p==0)//current prime can divide our current num
	{
	  $num=$num/$p;
	  array_push($res,$p);
	  break;
	}
  }
}

//results!
print_r($res);

?>

لم اتحقق من عمل الكود، لكن على أي حال الفكرة واضحة

اتمنى قراءة التعليقات بتمعن

تم تعديل هذه المشاركة بواسطة Ryn في 21 فبراير 2009 في 21:55

php5-zce-logo-new.gif

CCNA, CCNA Security, CCNP

#3

قد يفيدك هذا بطريقة او باخرى http://www.prime-numbers.org

#4

السلام عليكــم ورحمـة الله وبركاتــة ،،

شباب أنا وضلت للكود و بشتغل لكل الأرقام



<head>
<title>PHP Script</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<body>
<form action='<?php echo $_SERVER["PHP_SELF"]; ?>' method='post'>
<p>

<input type="text" name="Val" size="25" maxlength="25" /></p>
<p>
<input type="submit" value="OK" />
</p>
</form>
<?php
if(isset($_POST["submit"]))
{
$intVal= $_POST["VAL"];
$intM = 2;
while($intM <= $intVal):
{
$intD = $intVal % $intM;
if($intD == 0)
{
$intVal = $intVal / $intM;
echo( "<p> $intM </p>" );
}
elseif($intD != 0)
$intM++;
}endwhile;
}
?>
</body>
</html>
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

الـVal هي القيمة يلي لازم دخلها و الـM لازم تبدا من الـ2

#5

مافكرت بالحل بالطريقه هذي (رياضيا)... فكرة ممتازة.. لكن عدلت اخطاء بسيطة حتى يعمل الكود

<head>
<title>PHP Script</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<body>
<form action='<?php echo $_SERVER["PHP_SELF"]; ?>' method='post'>
<p>

<input type="text" name="Val" size="25" maxlength="25" /></p>
<p>
<input type="submit" name="submit" value="OK" />
</p>
</form>
<?php
if(isset($_POST["submit"]))
{
$intVal= $_POST["Val"];
$intM = 2;
while($intM <= $intVal):
{
$intD = $intVal % $intM;

if($intD == 0)
{
	  $intVal = $intVal / $intM;
   echo( "<p> $intM </p>" );
}
elseif($intD != 0)
	  $intM++;	
}endwhile;
}
?>

php5-zce-logo-new.gif

CCNA, CCNA Security, CCNP

مواضيع مشابهة