-
Üyelik
11.10.2018
-
Yaş/Cinsiyet
34 / E
-
Meslek
ÖĞRENCİ
-
Konum
İstanbul Anadolu
-
Ad Soyad
A** E**
-
Mesajlar
193
-
Beğeniler
4 / 7
-
Ticaret
0, (%0)
Arkadaşlar saatlerdir kafamdaki algoritmayı kuramadım Şöyle anlatayım bir dizi var misal 100 elemanlı
$dizi=array();
for($i=0;$i<100;$i++){
$dizi[]=$i;
}
bunu bir döngüye alıyorum .Yapmak istediğim döngüye her girdiğinde ilk 10 elemanı ekrana yazdırıp sonra bir daha girdiğinde artık gerikalan 90 elemandan başlayıp tekrar 10 defa ekrana yazdırp böyle devam edicek en son eleman kalmayınca döngüden çıkacak Projenini bir yerinde böyle bir algoritma lazım oldu .Recurive yapmaya çalıştım yapamadım
tiwaly
NodeJS / PHP / NoSQL
Kullanıcı
-
Üyelik
10.10.2013
-
Yaş/Cinsiyet
34 / E
-
Meslek
Yazılımcı
-
Konum
İzmir
-
Ad Soyad
i** A**
-
Mesajlar
363
-
Beğeniler
135 / 104
-
Ticaret
7, (%100)
Tam olarak yapmaya çalıştığın şeyi yazabilirsen daha net yardımcı olabiliriz. Kod bir defa çalıştığında dizideki 10 elemanı yazıp daha sonra tekrar çalıştığında 10 elemanı yazacaksa veritabanına ihtiyacın var. yok ben dizinin tüm elemanlarını döneceğim ama her 10 elemanda bir şunu yapmak istiyorum dersen farklı bir çözümü var. Biraz daha detaylı anlatabilirsen daha kolay yardımcı oluruz.
-
Üyelik
11.10.2018
-
Yaş/Cinsiyet
34 / E
-
Meslek
ÖĞRENCİ
-
Konum
İstanbul Anadolu
-
Ad Soyad
A** E**
-
Mesajlar
193
-
Beğeniler
4 / 7
-
Ticaret
0, (%0)
Hocam bende nasıl anlatacağımı bilemedim bidaha anlatmaya çalışıyım Hocam ben recursive ile yapmaya çalışıyorum önce burdaki gibi
$arx=array();
for($i=0;$i<100;$i++){
$ar[]=$i;
}
bir döngüyle diziyi 100 elemanlı hale getiriyorum. sonra recursive fonksiyona bu diziyi veriyorum aşağıdaki gibi
function recursiveFonksiyon($array){
$elemanSayisi=count($array);
do{
for($i=$elemanSayisi;$i>$elemanSayisi-20;$i--){
echo $i;
recursiveFonksiyon($array)
}
}while();
}
inşallah buraya kadar anlatabilmişimdir .Çünkü kafam durdu mavi ekran veriyorum şu an ..Şimdi esas zor olan şu bu 20 elemanı zaten yazdırdım recursive fonksiyon bidaha çalıştığında artık geri kalan 80 tane eleman üzerinden işleme devam etmeli ve yine 20 elemanı yazdırmalı sonra tekrar ve tekrar ta ki artık 100 elemanda bitene kadar ondan sonrada döngüden çıkmalı.Hocam buda nerden çıktı derseniz eğer ..projemde böyle bir algortima gerekti.Nolur anlatabilmiş olayım
tiwaly
NodeJS / PHP / NoSQL
Kullanıcı
-
Üyelik
10.10.2013
-
Yaş/Cinsiyet
34 / E
-
Meslek
Yazılımcı
-
Konum
İzmir
-
Ad Soyad
i** A**
-
Mesajlar
363
-
Beğeniler
135 / 104
-
Ticaret
7, (%100)
Bir yöntem bu şekilde.
$ar = array();
$cursor = 0;
for ($i = 0; $i < 100; $i++) {
$ar[] = $i;
}
function fonksiyon($array, $cursor, $adet)
{
if ($cursor < count($array)) {
$max = $adet+$cursor;
for ($i = 0+$cursor; $i < $max; $i++) {
echo $array[$i].PHP_EOL;
$cursor++;
}
echo "$adet Tane Saydım.".PHP_EOL;
return $cursor;
}else{
echo "Sayacak eleman kalmadı";
return $cursor;
}
}
$cursor = fonksiyon($ar,$cursor,10);
$cursor = fonksiyon($ar,$cursor,10);
$cursor = fonksiyon($ar,$cursor,10);
$cursor = fonksiyon($ar,$cursor,10);
$cursor = fonksiyon($ar,$cursor,10);
$cursor = fonksiyon($ar,$cursor,10);
Çıktı olarak sana :
0
1
2
3
4
5
6
7
8
9
10 Tane Saydım.
10
11
12
13
14
15
16
17
18
19
10 Tane Saydım.
20
21
22
23
24
25
26
27
28
29
10 Tane Saydım.
30
31
32
33
34
35
36
37
38
39
10 Tane Saydım.
40
41
42
43
44
45
46
47
48
49
10 Tane Saydım.
50
51
52
53
54
55
56
57
58
59
10 Tane Saydım.
şeklinde bir çıktı sağlar. Her saydırmada kaldığı yerden o kadar sayar.
Bir diğer yöntem ise, her 20 tanede bir işlem yaptırmak istiyorsun diyelim mesela.
$ar = array();
$cursor = 0;
for ($i = 0; $i < 100; $i++) {
$ar[] = $i;
}
for ($i = 0; $i < count($ar); $i++) {
echo $ar[$i] . PHP_EOL;
if ($i % 20 == 0 && $i != 0) {
echo "20 Tane saydım" . PHP_EOL;
}
}
Array içini dönerken her if ile her 20 (veya sen kaç belirleyeceksen) adette bir istediğin işlemi yaptırabilirsin.
-
Üyelik
11.10.2018
-
Yaş/Cinsiyet
34 / E
-
Meslek
ÖĞRENCİ
-
Konum
İstanbul Anadolu
-
Ad Soyad
A** E**
-
Mesajlar
193
-
Beğeniler
4 / 7
-
Ticaret
0, (%0)
hocam cok saol zaman ayırdığın için
tiwaly
NodeJS / PHP / NoSQL
Kullanıcı
-
Üyelik
10.10.2013
-
Yaş/Cinsiyet
34 / E
-
Meslek
Yazılımcı
-
Konum
İzmir
-
Ad Soyad
i** A**
-
Mesajlar
363
-
Beğeniler
135 / 104
-
Ticaret
7, (%100)
Yardımcı olabildimse ne mutlu.