Hirdetés
- Magga: PLEX: multimédia az egész lakásban
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Real Racing 3 - Freemium csoda
- Lalikiraly: Kinek milyen setupja van?
- Gurulunk, WAZE?!
- Meggyi001: A kérdés...
- Luck Dragon: Asszociációs játék. :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- Lalikiraly: Astra kalandok @ Negyedik rész
- gerner1
Ú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
- Apple iPhone 12 és 12 Pro duplateszt
- Székesfehérvár és környéke adok-veszek-beszélgetek
- Magga: PLEX: multimédia az egész lakásban
- Star Trek
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- „Ezt a sorozatot emberek készítették!”
- Arc Raiders
- TCL LCD és LED TV-k
- VR topik (Oculus Rift, stb.)
- Samsung Galaxy A52s 5G - jó S-tehetség
- További aktív témák...
- Telefon felvásárlás!! Honor 200 Lite, Honor 200, Honor 200 Pro, Honor 200 Smart
- Apple iPhone 16 Pro Max Natural Titanium Titán dizájn, Pro kamera,100% akku,2026. 02. 11
- Playstation 5 lemezes // Számla // Garancia //
- Gamer PC-Számítógép! Csere-Beszámítás! I5 10400 / RTX 3060 12GB / 32GB DDR4 / 512GB SSD
- Lenovo ThinkPad X1 Yoga G6 (6th Gen) - i7-1185G7, 32GB, 512GB SSD, multitouch + TOLL
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest

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

