سلام دوستان. ببخشید من دنبال کدی بودم که این اعداد رو چاپ کنه:
1,1,2,3,5,8,12
دنباله فیبونانچی هم نبود. ممنون میشم اگر کسی از دوستان میتونه کدش رو بگه که چجوری این اعداد رو چاپ کنم با حلقه های شرطی. ممنون.
سلام دوستان. ببخشید من دنبال کدی بودم که این اعداد رو چاپ کنه:
1,1,2,3,5,8,12
دنباله فیبونانچی هم نبود. ممنون میشم اگر کسی از دوستان میتونه کدش رو بگه که چجوری این اعداد رو چاپ کنم با حلقه های شرطی. ممنون.
منظور از چاپ کنه چیه؟ منطق ایجاد این اعداد چیه ؟منظور از شرط چیه یکم توضیح بدبد بفهمم اصلا چی می خواین
یک کد نوشتم خروجی مورد نظر شما را نمایش می ده ولی نمی دانم منظور استادتان این سبک بوده یا خیر
<?function SysCheck(){ $Data=array(1,1); $Count=count($Data); $Result=$Data[$Count-1]+$Data[$Count-2]; for($x=0; $x<=4; $x++){ $Count=count($Data); $SubResult=$Data[$Count-1]+$Data[$Count-2]; if($x==4){$SubResult=$SubResult-1;} array_push($Data, $SubResult); }
$Result=$Data; return $Result;}
var_dump(SysCheck());
اگه 13 باشه همون فیبونانچی هست
سلام دوست عزیز
این الگوی عددی که شما نوشتید همون اعداد فیبوناچی هستند که کد تولیدش رو در پایین براتون می فرستم.
امیدوارم که این تکه کد درست باشه و به کار شما بیاد.
<?php
$Temp_1 = 0;
$Temp_2 = 1;
$First = 1; //اولین عدد حلقه ی تکرار
$End = 6; //آخرین عدد حلقه ی تکرار، 6 عدد بعد از عدد یک
echo $Temp_2 .','; //چاپ اولین عدد که همان یک هست
for ($i = $First; $i <= $End; $i++)
{
$Temp_3 = $Temp_2 + $Temp_1;
if ($i == $End)
{
echo $Temp_3 ; //چاپ عدد آخر و برداشتن علامت کاما از جلوی الگوی عددی
break;
}
else
echo $Temp_3 .','; //چاپ عدد دوم و اعداد بعدی و گذاشتن علامت کاما در جلوی هر عدد
$Temp_1 = $Temp_2;
$Temp_2 = $Temp_3;
}
?>
آخرین ویرایش به وسیله Ali_Sedaghat : دوشنبه 08 دی 1399 در 22:02 عصر
سلام. ممنون از دوستان عزیز. ولی این فیبونانچی نیست و مشکل دقیقا همینه. الگوش اینه:
1
2+0=2
2+1=3
3+2=5
5+3=8
8+4=12
12+5=17
17+6=23
23+7=30
30+8=38
ولی نمیدونم چجوری باید توی php کدی نوشت که خروجیش این الگو باشه. هرجا هم میپرسم میگن فیبونانچیه ولی تنها تفاوتش توی همین عدد 12 است. از دوستان کسی همچین الگویی رو با php تاحالا نوشته؟
دوست عزیز وقتی سوال میپرسی کامل توضیح بده , این رو اگه از اول گفته بودی خیلی راحت حل میشد
ما که نباید هم کد رو بنویسیم و هم فرمول ریاضیش رو حدس بزنیم برا شما , حداقل کاری که میتونی بکنید اینه که اطلاعات کامل رو بدی وقتی سوال میکنی
for($x=0; $x<=8; $x++){
if($x==0){
$ThisNum=(2+$x);
echo "1<br />";
echo "2+$x=$ThisNum<br />";
}elseif($x==1){
$ThisNum1=($ThisNum+$x);
echo "$ThisNum+$x=$ThisNum1<br />";
}else{
if($x==2){
$ThisNum=($ThisNum1);
}
echo ($ThisNum)."+$x=".($ThisNum+$x)."<br />";
$ThisNum=($ThisNum+$x);
}
}
function SysCheck(){
$Data=array(1,1);
$Count=count($Data);
$Result=$Data[$Count-1]+$Data[$Count-2];
echo"1<br />";
for($x=0; $x<=4; $x++){
$Count=count($Data);
$SubResult=$Data[$Count-1]+$Data[$Count-2];
if($x==4){$SubResult=$SubResult-1;}
echo"$SubResult<br />";
array_push($Data, $SubResult);
}
$Result=$Data;
return $Result;
}
SysCheck();
بیشتر دوستانی که اینجا هستن این شغلشونه و دانشجو نیستن
این مسائل دانشجویی هیچ استفاده عملی ندارن و فقط برای دوندن دانشجو ها و مشغول کردن فکرشونه تا با سروکله زدن با کد آشنا بشن , چیزی نیست که یه برنامه نویس حفظ کنه یا بخاد بدونه
پس سوالات دانشجویی میپرسید کامل توضیح بدین
ضمن اینکه شما ابتدا گفتید این خروجی رو میخاید
1,1,2,3,5,8,12دلیل اینکه همه میگن فیبوناچیه اینه که هیچ الگوی مشخصی رو دنبال نمیکنه این خروجی به دلیل وجود 1 در ابتداش (از 2 به بعد الگوی مشخصی داره ) و همه فکر میکنن که شما اشتباه نوشتی خروجی رو ... اگر الگو رو از اول نوشته بودین میشد متوجه شد که یه الگوی نامنظم هست و استاد برای رد گم کردم و اینکه دانشجو ها نرن سرچ و کپی کنن کد های فیبوناچی این رو بهتون داده
بعا گفتید این خروجی
1,2,3,5,8,12
$arr = [1] ;
for($i=0 ; $i <= 8 ; $i++ )
{
$arr[] = $i+ (end($arr) == 1 ? 2 : end($arr));
}
echo implode(',' , $arr );
<?php
$Temp_1 = 1;
$Temp_2 = 2;
$Pattern_Array = array();
$First = 0; //اولین عدد حلقه ی تکرار
$End = 10; //آخرین عدد حلقه ی تکرار، 6 عدد بعد از عدد یک
echo $Temp_1 .','; //چاپ اولین عدد که همان یک هست
for ($i = $First; $i <= $End; $i++)
{
$Temp_3 = $Temp_2 + $i;
if ($i == $End)
{
echo $Temp_3 ; //چاپ عدد آخر و برداشتن علامت کاما از جلوی الگوی عددی
break;
}
else
echo $Temp_3 .','; //چاپ عدد دوم و اعداد بعدی و گذاشتن علامت کاما در جلوی هر عدد
$Temp_1 = $Temp_2;
$Temp_2 = $Temp_3;
}
?>
آخرین ویرایش به وسیله Ali_Sedaghat : شنبه 13 دی 1399 در 09:46 صبح