Hirdetés
- Xiaomi 15T - reakció nélkül nincs egyensúly
- iPhone topik
- Poco F8 Ultra – forrónaci
- Xiaomi 12X – kicsi a bors és hűvös
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy A55 - új év, régi stratégia
- Vivo X200 Pro - a kétszázát!
- Xiaomi 15 Ultra - kamera, telefon
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- Egykezes zongoradarab a Vivotól
-
Mobilarena

Új hozzászólás Aktív témák
-
válasz
feka007
#19800
üzenetére
Eloszor is letre kell hoznod a listat, ami ugy latom meg, es utana meg kell vizsgalnod, hogy az adott pozicio oszthato-e 2-100-ig es ha igen meg kell valtoztatnod az allapotat.
trukkozes (xor) nelkul:# ne definiald felul a list utasitast
lista=[1] * 100
for i in range(100):
for oszto in range(2,101):
if (i+1) % oszto == 0:
lista[i] = 1 - lista[i]
# xor:
# lista[i] ^= 1
for i in range(100):
# print(f"{i+1}. cella: {('csukva', 'nyitva')[lista[i]]}")
# vagy meg csunyabban
# print(i+1, "cella", "cnsyuiktvvaa"[lista[i]::2])
if lista[i]==1:
print(f"{i+1}. cella: nyitva")
else:
print(f"{i+1}. cella: csukva") -
hiperFizikus
senior tag
válasz
feka007
#19800
üzenetére
Én az ilyeneket úgy szoktam csinálni, hogy neki állok, mint ahogyan te is . Ha sikerül elboldogulnom vele, akkor annyiban hagyom . Ha meg nem, akkor átírom 5 db olyan function-ba, amelyikbe csak 1 db for ciklus jut ! Így már könnyebb összehangolni őket ! Majd ha jól mennek, akkor vissza írom őket egy nagy 5x egybeágyazott for ciklusba, ami már csak kevés illesztésből meg van !
Köztünk csak az a különbség, hogy én már régtől nem írok gyakorlatokat, hanem mindent élesben csinálok .
-
cattus
addikt
válasz
feka007
#19800
üzenetére
A feladat szerint 100 szolga nyitja-csukja az ajtókat, szóval ha így csinálnád akkor száz egymásba ágyazott ciklust kéne írnod.
Az elgondolás jó, hogy nyitva állással inicializálod a tömböt. A feladat leírásában felfedezhető egy mintázat. Az első szolga az összes ajtó állapotát megváltoztatja, a második csak minden másodikat, a harmadik minden harmadikét, stb. Ezeket vagy leírod egyesével, vagy írsz rájuk két ciklust, ahol a külső végigmegy a szolgákon, a belső meg végigfuttatja a szolgákat a tömbön. Plusz a boolean tömböt használsz, elég megflipelni az értékeket (
list[i] = !list[i]), nem kell if ellenőrzést hívni. -
axioma
veterán
válasz
feka007
#19800
üzenetére
Nem jo a programszerkezet! A minden 2.-at bezaras az nem a kinyitos cikluson belul van!
Ezek kulon ciklusok. Azert is lehet azonos ciklusvaltozo. De mind az elsotol [0. indextol] indul!
Ja es a list valtozonevet most irtsd ki a szotaradbol - az kulcsszo, csak felul tudod definialni...hint, nem igy oldod meg:
lst=[1]*100
for i in range(0,len(lst),2):
lst[i]=0
for i in range(0,len(lst),3):
if lst[i]==1:
lst[i]=0
else:
lst[i]=1
for i in range(0,len(lst),4):
if lst[i]==1:
lst[i]=0
else:
lst[i]=1
...Erre a formatumra meg mar van egy egyszerusitett leirasod...
@cattus nem akartam belezavarni az
lst[i]=1-lst[i]-vel...
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Építő/felújító topik
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- Otthoni hálózat és internet megosztás
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Autós topik
- Tőzsde és gazdaság
- Xiaomi 15T - reakció nélkül nincs egyensúly
- iPhone topik
- Az SK Hynix elárulta, hogy meddig nem lesz elég memória
- exHWSW - Értünk mindenhez IS
- További aktív témák...
- Tablet felvásárlás!! Samsung Galaxy Tab A8, Samsung Galaxy Tab A9, Samsung Galaxy Tab S6 Lite
- Honor 90 512GB, Kártyafüggetlen, 1 Év Garanciával
- MacBook felvásárlás!! Macbook, Macbook Air, Macbook Pro
- Gamer PC-Számítógép! Csere-Beszámítás! I5 12400F / 32GB DDR4 / RTX 3070 8GB / 512 SSD
- HIBÁTLAN iPhone 15 Pro Max 256GB Natural Titanium-1 ÉV GARANCIA - Kártyafüggetlen, MS4231
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



