$teman = array("zegova","dwhite","rifkifahru","sunar","aiskand"); sort($teman); $winner=rand(0,count($teman)-1); $no=1; for($i=0;$i<count($teman);$i++){ echo $no++.". ".($i==$winner?strtoupper($teman[$i]):$teman[$i])."\n"; }
5 jempol
kidofdream
164
1
·
11 tahun, 2 bulan yang lalu
·
1 jempol
Bukannya pemenang nya cuma 1 ya ? ane cuma gini doang gan : $keluarga = array("iki", "deknong", "ayah", "nyanyak" ); sort($keluarga); $acak = rand(0,count($keluarga)-1); $arr = $keluarga[$acak]; echo strtoupper($arr);
ganis
198
841
·
11 tahun, 2 bulan yang lalu
·
0 jempol
Iya, dua2nya benar. @nasrulhamid mencetak semua namanya, dan hanya pemenang yang dihurufbesarkan, @kidofdream hanya mencetak pemenangnya yang dihurufbesarkan juga. Kerja yang bagus!! =)
beherocode_ID
111
9
·
11 tahun, 2 bulan yang lalu
·
0 jempol
masih bingung
januridp
300
190
·
11 tahun, 2 bulan yang lalu
·
3 jempol
aku gini kaka: $fam = array("liot", "ibu","bapak","rasya","kalila"); sort($fam); $random = rand(0,count($fam)); $win = $fam[$random]; echo strtoupper($win);
nasrulhamid
164
18
penanya
·
11 tahun, 2 bulan yang lalu
·
2 jempol
@mystogan, error: Undefined offset: 5 Error di atas dikarenakan tidak ada index 5 dalam array $fam. Fungsi rand($x, $y), akan mengacak integer dari $x sampai $y. Index dalam array defaultnya dimulai dari 0 sampai jumlah member array -1. Sehingga menurut saya baris ke-4 seharunya: $random = rand(0,count($fam)-1);
Uko_Corleone
300
11
·
11 tahun, 2 bulan yang lalu
·
2 jempol
Punya sayaaaaa :D $family = array("Human", "Alien", "Ghost", "Mummy", "Vampire", "Robot", "Unicorn", "Genie", "Werewolf", "Witch", "Fairy", "Imaginary Friend", "Plant as Human", "Mermaid", "Plumbot", "Toad Human", "Tragic Clown", "Zombie"); sort($family); $winner = rand(0, count($family)-1); $count = 0; echo "Peserta Undian:\n \n"; foreach ($family as $element){ $count++; if($count === $winner + 1){ $queue = $count; } echo $count . ". " . $element . "\n"; } echo "\n\n Pemenangnya ada di urutan ke " . $queue . " dan namanya " . strtoupper($family[$winner]);
Uko_Corleone
300
11
·
11 tahun, 2 bulan yang lalu
·
0 jempol
oh iya harusnya countnya 0 biar winnernya ga usah di + 1, lupa -_-
Uko_Corleone
300
11
·
11 tahun, 2 bulan yang lalu
·
0 jempol
1 maksudnya maaf
Uko_Corleone
300
11
·
11 tahun, 2 bulan yang lalu
·
0 jempol
eh engga deng bener, cara hapus post gimana?
zegova
192
16
·
11 tahun, 2 bulan yang lalu
·
1 jempol
Iya nih, harusnya Mas Ganis bikin fitur edit dan hapus post biar enak posting diskusinya. :D
Uko_Corleone
300
11
·
11 tahun, 2 bulan yang lalu
·
0 jempol
barusan ane udah request ke pak ganis di @CodeSaya terus favorite-in wkwk
DIJOPANLEE
164
1
·
10 tahun, 11 bulan yang lalu
·
0 jempol
nih gan , sekedar menambahkan punya ane nih $teman=array('jofan','hasanudin','faizal','firman','maullana'); sort($teman); $indeks=rand(0,count($teman)-1); $ass=$teman[$indeks]; echo "Maka Pemenangnya adalah : ".strtoupper($teman[$indeks]);
DIJOPANLEE
164
1
·
10 tahun, 11 bulan yang lalu
·
0 jempol
syntax : rand(x,y); x dan y harus diisi integer ya ? kalo misal kan string bisa gak ? f-j gitu misalkan
arifal
87
0
·
10 tahun, 10 bulan yang lalu
·
0 jempol
$winner = rand(0, count($family)-1); kalo syntax di atas maksudnya gimana ya ? terus cara bacanya gimana ? tolong bantuannya
ganis
198
841
·
10 tahun, 10 bulan yang lalu
·
3 jempol
| $winner = rand(0, count($family)-1); ada dua parameter di function rand() | 0 sebagai awal dari nilai acaknya, dan | count($family)-1 sebagai nilai akhirnya, count() adalah fungsi untuk menghitung jumlah unit/element dalam sebuah array. jadi fungsi ini mengembalikan total unit dalam array $family dan menguranginya dengan nilai 1. jadi kalau ada 5 unit di array $family maka kode ini akan mengambalikan nilai 4. sehingga kode ini akan meminta komputer untuk mengembalikan nilai acak dari 0 hingga "jumlah element di array kurangi 1"
nyoww
300
16
·
10 tahun, 8 bulan yang lalu
·
0 jempol
kodenya nggak ngerti sama sekali nih ane yang ts buat itu tanda tanya fungsinya buat apa $i==$winner?strtoupper
ganis
198
841
·
10 tahun, 8 bulan yang lalu
·
1 jempol
@nyoww itu disebut ternary. fungsinya sama seperti if else. if ( $a == 5 ) { $b = 3; } else { $b = 4; } bisa jadi $a==5 ? $b = 3 : $b=4; polanya: kondisi ? jalankan jika kondisi benar : jalankan jika kondisi salah perhatikan "?" dan ":", mereka adalah pembatasnya. tambahan, bentuk diatas bisa jadi lebih singkat lagi dengan seperti ini. $b = $a==5 ? 3 : 4;
kodjodesign.com
190
64
·
10 tahun, 6 bulan yang lalu
·
1 jempol
kalo gini bener gak gan ane gak pake count $kel = array('(ayah) ','(ibu) ','(tante) ','(paman) ','(istri) ','(bibi) ','(adik) '); $i = sort($kel); echo join ($kel)."\n"; $acak = rand(6,$i); echo "Pemenangnya adalah ".strtoupper($kel[$acak]);
r_izal
99
0
·
9 tahun, 7 bulan yang lalu
·
0 jempol
Saya pemula $k = array(); array_push($k,"Rizal"); array_push($k,"Nasrulloh"); array_push($k,"Tammam"); array_push($k,"Pemula"); sort($k); $ac = rand(0,count($k)-1); echo strtoupper($k[$ac]);
neyh101
253
8
·
9 tahun, 6 bulan yang lalu
·
0 jempol
$winner = rand(0, count($family)-1); masih bingung sama maksud kode di atas. Ini pembelajarannya ada di sebelah maan ya? yg saya temuin cuma rand () dan rand(0,10) yg saya mau tanyakan adalah: -1 itu untuk mengurangi jumlah element di dalam aray? misalnya jumlahnya ada 5 element, lalu dikurang 1, kan hasilnya jadi 4 element. kenapa yg muncul bisa 1 element saja?
anefirman
208
96
·
9 tahun, 6 bulan yang lalu
·
0 jempol
hai @neyh101 $winner = rand(0, count($family)-1); saya jelasan dikit, jadi fungsi dari script di atas adalah membuat angka acak dari 0 hingga jumlah elemet variabel $family dikurang 1 :) jadi misal elemet variabel $family ada 5-1 maka nilai variabel $family adalah 4 jadi variabel $winner membuat angka acak dari 0 hingga 4 jika salah mohon di maafkan :)
insanz01
67
8
·
9 tahun, 4 bulan yang lalu
·
0 jempol
mas supaya hasilnya menjadi nama gimana yaa ?? masa cuman integer -_- $keluarga=array("mazaya","kamil","salma","darayani","insan","nuha"); echo join(', ',$keluarga)."\n"; echo "berikut adalah nama yang akan mendapat arisan keluarga..\n"; sort($keluarga); echo join(', ',$keluarga); echo"\n dan nama yang mendapatkan arisan adalah.. "; $acak_nama=rand(0,count($keluarga)-1); $win_arisan=$acak_nama[$keluarga]; echo $acak_nama; echo"Congratulation, ".strtoupper($keluarga);
elcicko
36
6
·
9 tahun, 4 bulan yang lalu
·
2 jempol
ganti strtoupper($keluarga) dengan strtoupper($keluarga[$win_arisan])
insanz01
67
8
·
9 tahun, 4 bulan yang lalu
·
0 jempol
thanks udah selesai! $keluarga=array("mazaya","kamil","salma","darayani","insan","nuha"); echo join(', ',$keluarga)."\n"; echo "berikut adalah nama yang akan mendapat arisan keluarga..\n"; sort($keluarga); echo join(', ',$keluarga); echo"\n dan nama yang mendapatkan arisan adalah.. "; $acak_nama=rand(0,count($keluarga)-1); $win_arisan=$keluarga[$acak_nama]; echo"Congratulation, ".strtoupper($win_arisan)."!";
garasi177
66
1
·
9 tahun, 3 bulan yang lalu
·
0 jempol
@kidofdream : mas mau minta penjelasan nih ko saya ubah jadi -2 hasilnya tetap 1 yah yang muncul :bingungs
januridp
300
190
·
9 tahun, 3 bulan yang lalu
·
1 jempol
@garasi177 hasilnya atau yang akan dicetak ya tetap satu om
marcel
111
0
·
8 tahun, 4 bulan yang lalu
·
0 jempol
//kalo kode minimalis begini apa dibolehkan (notifnya sih codenya bener), misal masalah jika seandainya kodenya jd banyak, mohon masukkannya? :D sort($fan = array('a','b','c','aba','asa','abu')); echo strtoupper($fan[$acak1=rand(0,count($fan)-1)]);