-
Fototrend

Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
A többiek javaslatán kívül még annyi, hogy ezt egy függvénybe kellene raknod, ami karaktersorozatot vár, és boolean értékkel tér vissza (true/false attól függően, hogy palindromról van-e szó), valamint tök felesleges végigfuttatnod a teljes ciklust, ha egyszer már a vége előtt kiderült, hogy tényleg nem palindrom az adott szó, nyugodtan visszatérhetsz egyből false-szal. A string hosszúságát pedig eltárolhatnád egy változóban a for ciklus előtt a sok felesleges szoveg.length() függvényhívás overheadjének elkerülése érdekében (kérdés, hogyan optimalizálja egyébként a fordító, a for ciklus "fejlécében" lévő összehasonlítást tudtommal optimalizálja, a ciklusmagban lévőt nem, tehát ott lesz overhead, még ha ez így "kicsiben" nem is érzékelhető, érdemes ráállni arra, hogy elkerülöd a felesleges függvényhívásokat, amik csak hozzátesznek a futási időhöz, még ha adott esetben nagyon keveset is).
=========
(#6846) Jester01 :
"Aki magyar kiosztással akar programozni az meg is érdemli"
jaj ne má'
Az IDE hotkey-jeinek átállítása nem hiszem, hogy túl nagy problémát kéne, hogy okozzon. Szerintem magyar kiosztással is nagyon jól lehet programozni. 
-
-
bucsupeti
senior tag
a lényegi részben a teendő
- for ciklust indítasz 0-tól a sztring hosszának feléig (str.length()/2)
- a cilusmagban a string aktuális pozíciójában (ciklusváltozó) lévő karaktert hasonlítod a sztring hossz mínusz a ciklusváltozó mínusz 1 pozíción lévővel. Pl az "alma" sztring esetében ha 0 a ciklusváltozó akkor a 0. és a 4-0-1=3 pozíción lévővel hasonlítod (az első a és az utolsó a lesz hasonlítva). Ha igaz akkor továbblépsz, ha eltér akkor exit és megjegyzed valahogy (pl bool változó) hogy eltérés van.
- a végén az aktuális állapot szerint kiírod a megfelelő szöveget. -
Jim-Y
veterán
Karma írta:
Célszerű indirekt vizsgálnod. >> feltételezed hogy palindroma, tehát kezdetben egy bool változó igaz.
Feltételezed, hogy palindrom, és megpróbálod cáfolni azzal, hogy páronként összehasonlítod a betűit >> úgy hasonlítod össze, hogy egy ciklussal elkezdesz a stringben az elejétől a vége felé haladni, és mindig az aktuális indexű betűt hasonlítod össze a hátulról vett párjával
- az elsőt az utolsóval, a másodikat az utolsó előttivel stb., >> lásd feljebb
és ha nem egyeznek meg, akkor nem lehet palindrom. >> ha a feltételvizsgálatban egyszer is igaz ágba megy a program, vagyis egyszer lesz eltérés a betű párok között, akkor a bool változót hamisra állítod, vagyis bebizonyítottad, hogy nem palindróma.Illetve getline függvény helyett használhatod simán a cin >> szoveg; -et is.
-
Jim-Y
veterán
A konkrét kódot senki sem fogja megosztani veled, ugyanis abból nem tanulsz :/
Próbáld meg megcsinálni, és ha valami nem megy, akkor linkeld be a kódód (pl pastebin), és segítünk. Amúgy amit Karma írt az egy tökéletes megoldás, gyorsan én is letöltöttem a codeblockot és kipróbáltam, szinte 1-1 az egyben ha begépeled amit írt, akkor megvan a megoldás. Nekem sallangokkal együtt 10 sor lett. sallangok nélkül kb 4-5-ből megvan.Annyival kiegészíteném viszont Karmát, hogy jól jöhet még neked a floor függvény is, ugyanis (még ha ennél a példánál nincs is nagy jelentősége) nem kell string végéig menned a for ciklussal, elég string.length / 2 alsó egészrészig. üdv
megj: legújabb codeblocks gcc-vel, 'AltGr + B' -re, ami a nyitó kapcsos be van állítva egy hotkey, így nem tudtam benne nyitó kapcsost csinálni, mondom full friss a telepítés, ez azért gáz...
-
Karma
félisten
A felsoroltakból szükséged van a stringre, a lengthre és egy for ciklusra.
Célszerű indirekt vizsgálnod. Feltételezed, hogy palindrom, és megpróbálod cáfolni azzal, hogy páronként összehasonlítod a betűit - az elsőt az utolsóval, a másodikat az utolsó előttivel stb., és ha nem egyeznek meg, akkor nem lehet palindrom.
Ha minden betűpárt megnéztél és nem találtál eltérést, akkor meg palindrom.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- A fociról könnyedén, egy baráti társaságban
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- OLED monitor topic
- Hisense LCD és LED TV-k
- Spórolós topik
- Telekom mobilszolgáltatások
- Milyen egeret válasszak?
- Yettel topik
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- sziku69: Szólánc.
- További aktív témák...
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

Az IDE hotkey-jeinek átállítása nem hiszem, hogy túl nagy problémát kéne, hogy okozzon. Szerintem magyar kiosztással is nagyon jól lehet programozni. 


