Hirdetés
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- Xiaomi 14T Pro - teljes a család?
- iPhone topik
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- Google Pixel topik
- Fotók, videók mobillal
- Dupla kamerával menekülne az iPhone Air a kaszától
- Apple Watch
- Poco F7 – bajnokesélyes
- Apple Watch Sport - ez is csak egy okosóra
Új hozzászólás Aktív témák
-
htc07
addikt
Sziasztok!
Igazából sosem tanították nekem a PHP-t, mindig csak google alapján hánytam össze amire épp szükségem volt, de most kifogott rajtam egy dolog, remélem tudtok segíteni, hol rontom el.
Ezt kellene kiszámolni:
Egy iskolába 1000 diák jár, és 1000 szekrény van a folyosón. Az igazgató az első napon megkéri az egyik tanulót, menjen ki a folyosóra, és nyissa ki az összes szekrényt. Ezután megkér egy másik tanulót, menjen, és minden második szekrényajtót csukjon be. Majd azt kéri egy harmadik tanulótól, hogy minden harmadik ajtót csukjon be, ha nyitva van, és nyisson ki, ha zárva. A negyedik gyerek minden negyedik ajtóhoz megy oda, és így tovább, lassan mind az ezer gyerek sorra kerül. A végén hány ajtó marad nyitva?
Ezt sikerült összedobálnom (1000 helyett 50-et használtam, hogy gyorsabban lefusson amíg rájövök mi a rossz).
<?php
$i=1; //hanyadik diak
$ajtoszam=$i; // 3: minden harmadik, 8: minden nyolcadik ajtó...
$hanydiak = 50; // hány diák, hány ciklus
$ajto=array_fill(1, $hanydiak, "1"); // 1: zart, 0: nyitott
function nyitzar($ajtoszam)
{
if($ajtoszam <= $hanydiak)
{
if($ajto[$ajtoszam] == "1")
{
$ajto[$ajtoszam] = "0";
}
else
{
$ajto[$ajtoszam] = "1";
}
$ajtoszam=$ajtoszam+$ajtoszam;
nyitzar($ajtoszam);
}
}
function hanyadik($i)
{
if($i <= $hanydiak)
{
nyitzar($ajtoszam);
$i++;
hanyadik($i);
}
}
hanyadik($i);
$eredmeny = array_count_values($ajto);
echo $eredmeny['1']. " ajto marad nyitva";
?>Tuti hogy a function-nel rontok el valamit, az ismétlődő ciklusokkal sem volt sok dolgom eddig, meg így estére már elfáradt az agyam

A megoldást tudom, azt is hogy miért annyi, (ez google), de a kiszámolás megvalósítása lenne az érdekes számomra, nem az igazgató megkérdőjelezhető hóbortja.
![;]](//cdn.rios.hu/dl/s/v1.gif)
Új hozzászólás Aktív témák
- HiFi műszaki szemmel - sztereó hangrendszerek
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- World of Tanks - MMO
- Futás, futópályák
- Macska topik
- Alaposan kitolhatod az Steam Deck üzemidejét egy új funkcióval
- Battlefield 6
- sziku69: Szólánc.
- Béta iOS-t használók topikja
- Automata kávégépek
- További aktív témák...
- Apple Watch SERIES 10 46mm GPS fekete gyönyörű, 100% akkumlátor! December 18-ig Apple garancia!
- UTOLSÓ A KÉSZLETEN! - ÚJ, bontatlan iPhone 17 AIR 256GB AZONNAL! - Space Black -
- Canon RF 800mm f/11 Is STM + álcázó+állványtalp+napellenző
- Apple iPhone 15 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 15 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- Amazon Kindle 10th Generation ébresztős tok
- Dell Optiplex MT/SFF 3040, 3050, 3060, 3070, 5070, 7060/ Hp ProDesk /SZÁMLA- GARANCIA
- GYÖNYÖRŰ iPhone 12 mini 256GB Black-1 ÉV GARANCIA -Kártyafüggetlen, MS3626, 100% Akkumulátor
- Gamer PC-Számítógép! Csere-Beszámítás! R5 3600 / GTX 1080 8GB / 32GB DDR4 / 512 SSD!
- Bomba ár! Fujitsu LifeBook E544 - i5-4GEN I 8GB I 128SSD I 14" HD+ I DP I Cam I W10 I Garancia!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő

![;]](http://cdn.rios.hu/dl/s/v1.gif)


