- HiFi műszaki szemmel - sztereó hangrendszerek
- Fujifilm X
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Kormányok / autós szimulátorok topikja
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- OLED TV topic
- Sony MILC fényképezőgépcsalád
- Milyen belső merevlemezt vegyek?
- Milyen TV-t vegyek?
- Hobby elektronika
Új hozzászólás Aktív témák
-
Davs
tag
válasz
pckownz #1696 üzenetére
cplusplus.com - itt vannak fuggvenyek peldakkal magyarazva..Jo offline doksit regen en is kerestem, de nem talaltam, most Qt-t tanulok (crossplatform GUI c++-hoz), annak viszont nagyon jo a beepitett help-je, konnyen keresheto, peldakkal illusztralt..de az ugye sima c++-hoy nem jo
Amugy azt hiszem az auto-complete funkciot keresed, biztos van visual c++-ban, bar meg hasznaltam soha se, lehet be kell "kapcsolni" a beallitasokban..
-
ArchElf
addikt
válasz
pckownz #1696 üzenetére
Visual Studio automatikusan adja (Intellisense-nek hívják az MS felé ezt a funkciót), nem kell nyomni hozzá semmit. Referenciának meg MSDN.
Persze a VS miatt mindjárt keresztre leszel itt feszítve. Kezdj inkább MS VC++ helyett valami (bármi) más - standard - c++-t tanulni...AE
-
pckownz
őstag
Sziasztok.
Végeztem a középsulival, ahol (sajnos) pascal-ban programoztunk. Mondjuk később áttértünk Delphi/Lazarus -ra. Ott volt egy olyan funkció, hogy CTRL+space vagy CTRL+j és ahogy írtam a kódot, hozta a javaslatokat a függvényekhez, változókhoz etc.
Most próbálom a tanulmányaimat átültetni visual c++ -ba, de elég nehéz egyenként guglizni minden parancsot ami érdekelne.
MS Visual C++ express 2010 alatt nincs ilyen lehetőség?
Vagy legalább valami Wiki ahol összegezve vannak a fontosabb függvények? -
dni
őstag
válasz
WonderCSabo #1684 üzenetére
Egy egy felsőfokú levelező tagozatos szakképzés progalap 2-es kurzus feladata.
Megpróbálom összeszedni a, hogy hol akadtam el és jelentkezem.
-
dabadab
titán
válasz
WonderCSabo #1691 üzenetére
Nem, dehogy kotozkodok, csak arra akarok ramutatni, hogy a pontos, egyertelmu specifikacio baromi fontos dolog. Fontos a szamitastudomanyi vetulete is (hogy a fenebe csinal az ember egzakt programhelyesseg-bizonyitast olyan specifikaciora, hogy "hogyakkor ize, tudod, erted, na!"?) na meg persze a gyakorlati is, lattam eleg sok erofeszitest meg penzt karba veszni csak azert, mert a ket felnek nem sikerult ugyanazt ertenie a homalyosan megfogalmazott reszekbol.
-
WonderCSabo
félisten
-
dabadab
titán
válasz
WonderCSabo #1689 üzenetére
"ha van, akkor az elsőt add vissza. Csak nincs értelmesen leírva."
Ez ertelmetlenul sincs leirva (mondjuk az "elso" szinten nem egy egzakt fogalom, a "legkisebb" vagy "az elso, amit megtalal a keresoalgoritmus" mar stimmel
).
-
-
dabadab
titán
válasz
WonderCSabo #1687 üzenetére
Meg pl. nem hatarozzak meg, hogy mi tortenjen, ha tobb szomszedos elem is van a tombben (foleg, hogy az az eset nem is lehetseges, hogy csak egy elemnek van szomszedja a tombben).
Meg magyarul a methodot nem metodusnak hivjak?
-
WonderCSabo
félisten
Második félév van, persze lehet, hogy a kolléga keresztféléves? Egyébként übergáz ez a feladatkiírás. Magyar nyelvű osztály és metódusnevek? Ez most komoly? Az egyik még ékezetes is
! Statikus változó, amikor ennek baromira nincs így értelme? Azért könyörgöm, elég egyszerű kitalálni normális feladatot staticra... Meg ugye elég szájbarágós is az egész. Azon meg már csak röhögnöm kell, hogy egy db. nyúlfarknyi osztályhoz is UML diagrammot kérnek.
Az uccsó SzomszedKeres fv. viszont értelmetlenül van leírva...
Egyébként poéból megírtam a feladatot 8 perc alatt. A legtöbb időm azzal ment el, hogy nem értettem miért parázik a fordító, ha minden fv. elé odaírom a láthatóságot.
(túl sok java és c# kódot írtam mostanság)
Egyébként pedig ha ez télleg proginf (remélem nem az), akkor eléggé csalódtam benne. Mi ennél jóval faszább szintre jutottunk el egy félév alatt. -
Sk8erPeter
nagyúr
válasz
WonderCSabo #1684 üzenetére
"Helyetted nem írhatjuk le az egész kódot, és a szintaktikát, nyelvi elemeket sem magyarázhatjuk el egyenként."
MI AZ, HOGY NEM???
Pedig igazán eltölthetnél vele egy napot.Jók az ilyen kérdések.
(#1683) dni :
hogy ON is legyek, kérdezek valami egészen újat:
Meddig jutottál el?Szerk.: bocs, fáradt vagyok.
-
WonderCSabo
félisten
Mégis miben kéne segíteni? A feladat eléggé explicit, szinte minden le van szó szerint írva, csak implementálni kell C++ nyelven. Helyetted nem írhatjuk le az egész kódot, és a szintaktikát, nyelvi elemeket sem magyarázhatjuk el egyenként.
Meddig jutottál el, miben akadtál el?
-
dni
őstag
Sziasztok!
Az alábbi feladat megoldásában hol találnék segítséget, teljesen kezdőként?
Válaszaitokat, ötleteiteket előre is köszönöm.
-
Sk8erPeter
nagyúr
válasz
Gyuri16 #1681 üzenetére
dabadab, Gyuri16: hmm, végül is igazatok van, sebességkritikus alkalmazásoknál akkor ezzel tényleg könnyen lehet optimalizálni.
Valóban, végül is arra imént nem gondoltam, hogy egy sokparaméteres függvény elég ocsmány lehet - bár be lehet pakolni tömbbe is a dolgokat, így egy paraméterbe "benyomsz" mindent, de ez sok esetben eléggé overkill lehet; az meg még ocsmányabb, ha globális változókkal szarakodunk, meg mondjuk nem mindent kell feltétlenül tárolni osztályváltozók formájában. -
Gyuri16
senior tag
válasz
Sk8erPeter #1679 üzenetére
bar dabadab reszben valaszolt, itt az en par sorom is:
kisebb kodot a forditas utan ertettem. ha egy kis fuggvenyt hivsz meg azt gyakran inlineolja a fordito, es ha sok helyen van, akkor bizony megnoveli a program meretet. masik megoldas a fuggvenyhivas, az viszont "draga".
masik dolog amihez mar nem igazan ertek (szivesen olvasnam mas velemenyet, pl Jester01 szokott ilyen temakban hozzaszolni), hogy mit csinal a jmp es call a branch predictionnel, van egy erzesem, hogy a call tonkrevagja a pipelinet.
-
dabadab
titán
válasz
Sk8erPeter #1679 üzenetére
A fuggvenyhivasnak sajnos nagyon durva overheadje van (meg a visszateresnek is), szetcsapja a regisztervaltozokat, ha sebessegkritikus a kod, akkor az ember nem erolteti, foleg nem ciklusbelsoben, amirol eredetileg szo volt.
Raadasul - hogy visszaterjek egy kicsit az elejere - egy par soros ciklusbelsobol egy ezerparameteres fuggvenyt csinalni egyreszt latvanyosan rontja a kod olvashatosagat masreszt meg strukturalis szempontbol is valoszinuleg abszolut ellenjavallt dolog, mert az a resz egesz jo esellyel nem olyan, aminek kulon fuggvenyben lenne a helye.
-
Sk8erPeter
nagyúr
válasz
Gyuri16 #1677 üzenetére
Mondjuk a threadben még csak az elejénél tartottam, amikor írtam, Linus tényleg egy kicsit ajtóstul ront a házba (de minden házba
).
"de igen, viszont ha a cel a minel kisebb/gyorsabb kod, akkor jobban jarsz a kis fuggveny inlineolasa (vagy call) helyett a goto-val."
A "kisebb kód" részt úgy érted, hogy a fordítás után összességében valszeg kisebb kódot eredményez a függvényhívás, mert kihagyható a függvényhívás? Vagy hogy?
Ha csak úgy, hogy maga az eredeti forráskód kisebb lesz, hát azt nem látom be, hogy miért. Egy metódus/függvény fejléce és a blokkot közrefogó kapcsos zárójelek olyan nagyon sok helyet foglalnak pluszban?
De ilyen alapon akkor ott a label, meg a kettőspont... de vaze, itt már pár karakternyi különbségekről beszélünk.
Ha meg a gyorsaságról van szó, végül is a függvényhívás overheadje így a gotoval valóban elkerülhető, de azt hiszem, erről csak nagyon durván sebességkritikus alkalmazások esetén van egyáltalán értelme beszélni, ahol az adott konfiguráció van olyan gyenge, hogy ilyen szintű különbségek egyáltalán érzékelhetők legyenek.
Mondjuk arra kíváncsi lennék, milyen szintű különbségek jöhetnek ki."raadasul a goto csak egy sor, mig a fuggvenyhivas + return 2
"
Mivel ott a smiley, ezt inkább viccnek veszem, mint érvnek.=====
(#1678) proci985 :
akkor jó, megnyugodtam, már azt hittem, az is szar könyvnek minősül.Szerintem az a kifejezetten jók közé tartozik. Amúgy az egyik író, Benedek Zoltán C#-ban is jó koponya, azt is tanít nálunk.
-
proci985
MODERÁTOR
válasz
Sk8erPeter #1676 üzenetére
amelyiket linkelted simán lehet jó, köszi az ötletért, itt a topikban sincs nagyon ötlet, hogy mi lehet jó kezdőknek.
amelyik rossz volt, az a programozzunk c++ nyelven. félreérthető voltam azt hiszem
-
Gyuri16
senior tag
válasz
Sk8erPeter #1675 üzenetére
nem rad ertettem az elutasitast, hanem, hogy a tanarok altalaban ugy tanitjak, es a miertek gyakran hianyoznak. en magam reszerol nem hasznalom, mert nem igy tanultam programozni, viszont ha ott van a kodban nem bantom, hacsak nincs ra valamilyen komoly ok.
Nem épp a sűrűn ismétlődő feladatok elvégzésére szoktunk például függvényeket írogatni?
de igen, viszont ha a cel a minel kisebb/gyorsabb kod, akkor jobban jarsz a kis fuggveny inlineolasa (vagy call) helyett a goto-val. raadasul a goto csak egy sor, mig a fuggvenyhivas + return 2szerintem Linus stilusa nem tul jo. az hogy a velemenyet durvan fejezi ki nem gond, viszont sokszor beszel megalazoan mas velemenyu emberekrol. egy ilyen pozicioban levo embernek igazan nem kellene nyiltan lehulyeznie masokat.
-
Sk8erPeter
nagyúr
válasz
proci985 #1674 üzenetére
Mármint arra a könyvre gondolsz, amit linkeltem? Mondom, elég rég olvasgattam, de amikor még eléggé nem volt közöm a programozáshoz, ebből már elkezdtem kapiskálni, mi a szart csinálok C++-ban. Szóval nekem az alapján nem tűnik szarnak.
Aztán lehet, hogy ha most elővenném, már más véleménnyel lennék (nincs nálam, annak idején is könyvtárból vettem ki, aztán hosszabbítgattam). -
Sk8erPeter
nagyúr
válasz
Gyuri16 #1671 üzenetére
Valamit félreértettél, én nem utasítom el dogmatikusan.
Inkább csak kíváncsi voltam a szempontokra és konkrét példákra, hogy vajon miért jobb, és mi lehet az alternatíva. Hát már kötekedni sem lehet?
Csak felvetettem, hogy lehetnek alternatívák, vajh' miért jobb a goto.
Ez a thread bejövős, végre olvasok igazi érveket is, korábban csak vitatható szempontokat olvastam arra vonatkozóan, hogy miért is jó vagy miért is rossz. Igazából én speciel egyelőre csak batch-programozásnál használtam goto-kat, komolyabb nyelveknél eddig elkerültem, valahogy eddig egyáltalán nem állt rá a kezem/agyam.
Egyébként tuti, hogy néhány kód valóban rövidebb lehetne goto-val (pl. elkerülve a sok if-et, külön függvénybe rakást, stb.), de egyelőre eléggé ódzkodom tőle - lehet, hogy jobb is, ha nem akarok ócsárlást hallani másoktól.Amúgy bírom Linus Torvalds stílusát, az biztos, hogy nem veti csak úgy alá magát véleményeknek.
Ja, majdnem lemaradt az érdemi részre reagálás:
"masodik pontod: szerintem itt dabadab arra gondolt, hogy ha pl valamilyen resourcot fel kell szabaditani return elott. itt egyszserubb a vegere tenni a felszabadito kodot returnnal, es a tobbi helyrol csak gotozni a vegere. persze c++ eseten ezt illik OO szinten megoldani, vagy finally-ban.."
Az utolsó mondatoddal végül is elmondtad, amit akartam mondani.
Ilyen esetben továbbra sem látom semmi értelmét/hasznát/átláthatóságbeli előnyét a goto-nak, mert nem értem, C++ topicban miért is ne feltételezhetnénk, hogy mondjuk destruktorban vagy más metódussal intézzük el az erőforrások felszabadítását, stb... vagy megint máshogy, akár egy mezei globális függvénnyel...
Nem épp a sűrűn ismétlődő feladatok elvégzésére szoktunk például függvényeket írogatni? -
proci985
MODERÁTOR
válasz
Sk8erPeter #1665 üzenetére
ez még egy lassan 10 éves könyv, általában emberek azért használták, mert nem volt jobb. tavaly megint megpróbáltam elolvasni, mert anno sokat nem értettem belőle... és rájöttem miért
.
azt a könyvet már nem láttam, mostanra meg teljesen áttértem angol szakirodalomra.
nézd meg, remek kezdő kurzus, de eszméletlenül hatékony.
goto téma: bizonyos speciális esetekben tényleg értelmes lehet. hasonló vele a helyzet, mint az egyébként élénken tanított friend classokkal (megborítható velük az OO struktúra és ezzel a program folyása, de néha elkerülhetetlen). de typfedeffel, definíciókkal (#define private public, csak hogy egy extrém példát mondjak) és operator overloadinggal is lehet vicces dolgokat csinálni. vagy csak simán a konvenciók figyelmen kívül hagyásával (angol classnevek pl).
-
WonderCSabo
félisten
válasz
Jhonny06 #1659 üzenetére
Bocs, kifutottam a szerk.-ből.
Azzal nincs is gond, ha egy C++ projektben meglátod az stdiot, a iostream által csatolt headerek az stdiot is használják.
#1664) kmisi99: Exét a fordításkor "csinál" a fordító, különben nem futna a programod. A C++ nem interpretált nyelv. Grafikus felületet "adni neki" nem lehet csak úgy, azt sztem még felejtsd el, ha még ezt a triviális feladatot sem sikerült magadtól megoldani.
hogy így írom be a szavakat hogy
cat/macska
vagy így
cat-macska
szóval nem tudom hogy a dic txt-t is hogyan kell elkészíteni.Könyörgöm, nézd meg a forráskódot, hogyan olvassa be a fájlból, és annak megfelelő formátumban írd bele.
-
Gyuri16
senior tag
válasz
Sk8erPeter #1667 üzenetére
linux kernel mailing listen volt error szo:
[link]
vannak ott peldak is.nem emlekszem, hogy valaha is hasznaltam volna goto-t (dynamic_castot viszont igen
), de ez a dogmatikus elutasitas feleslegeges. van, hogy a kod egyszerubb es atlathatobb lesz vele. nyilvan kell tudni hasznalni.
azok a peldak amiket irtal:
minek irjak fuggvenyt returnnal, ha 3 sorbol all az egesz. csak komplikacio. goto lehet kifejezobb is, ha ertelmes neveket adsz a labeleknek.masodik pontod: szerintem itt dabadab arra gondolt, hogy ha pl valamilyen resourcot fel kell szabaditani return elott. itt egyszserubb a vegere tenni a felszabadito kodot returnnal, es a tobbi helyrol csak gotozni a vegere. persze c++ eseten ezt illik OO szinten megoldani, vagy finally-ban..
-
Sk8erPeter
nagyúr
válasz
Sk8erPeter #1669 üzenetére
A második kérdést fenntartom, az elsőre mondjuk nyilván lehet kacifántos eseteket kitalálni, ahol túl hülyén nézne ki a ciklusok szanaszéjjel-bontása fv.-ekre, és/vagy a sok beágyazott cikluson belül még nem feltétlenül akarsz teljesen visszatérni.
-
Sk8erPeter
nagyúr
válasz
dabadab #1668 üzenetére
"tobbszorosen egymasba agyazott ciklusbol kell kilepni"
Megkerülhető a probléma, ha a ciklust végrehajtó kódot függvénybe rakod, és return-ölsz belőle."tobb helyen is visszaterhet a method, viszont a return elott mindenhol ugyanazt a szertartast el kell vegezni"
Erre miért nem jó egy tök hagyományos függvény/metódus?
Azt is annyiszor hívod meg, ahányszor akarod.... -
dabadab
titán
válasz
Sk8erPeter #1667 üzenetére
Ugyanaz, mint barmi mas mellett: hatekonysag meg atlathatobb kod. Alapjaban veve akkor szokott jol jonni, ha tobbszorosen egymasba agyazott ciklusbol kell kilepni vagy tobb helyen is visszaterhet a method, viszont a return elott mindenhol ugyanazt a szertartast el kell vegezni, ilyenkor egyszerubb azt csak egyszer megirni a method vegen, aztan return helyett odagotozni.
-
dabadab
titán
válasz
proci985 #1663 üzenetére
Most hirtelen elgondolkodtam, hogy a c++ fejlesztoi palyafutasom elmult kb. tiz evben lattam-e ceges kodban dynamic castot. Szerintem nem
Ellenben gotot viszont igen (mondjuk szerintem szegeny goto indokolatlanul sok utalatot kap, egy fel evszazaddal ezelott, amikor Dijkstra megirta, hogy "considered harmful" meg mas programnyelvek voltak, tok maskepp hasznalt gotokkal). -
Sk8erPeter
nagyúr
válasz
proci985 #1663 üzenetére
"kedvencem a programozzunk c++ nyelven volt, ami a classok elmagyarázása előtt vezette be a dynamic cast fogalmát"
Az igen...Kíváncsi lennék, vajon a szerzők mit gondoltak, amikor ezt a sorrendet kitalálták...
A Szoftverfejlesztés C++ nyelven szerintem elég jól kiemelkedik az átlagos fos magyar könyvkínálatból, tök érthető módon magyaráz, amikor ebből tanulgattam régen, akkor innen fogtam fel egy csomó mindent.
Mondjuk nem tudom, ha mai fejjel néznék bele, mit gondolnék a könyvről, de emlékeim szerint nagyon megállja a helyét.Vaze, csak most látom, hogy egyik egyetemi előadónk írta többek közt.
(BZ)
Na, erre a jQuery kurzusra kíváncsi vagyok, mi újat tanulok.
Ha lesz időm, holnapután kipróbálom.
Egyébként a jQuery-nek szerintem a hivatalos honlapja is nagyon jó, meglepően jó doksit írtak hozzá."(minimális jscript tudásunk volt)"
Hadd kötekedjek, a JScript nem ugyanaz, mint a JavaScript. -
kmisi99
addikt
válasz
proci985 #1663 üzenetére
Miután lefuttatom a fordítót ezt írja forrásnál ezek szerint ide is kell a dic.txt-t rakni? Itt egy kép hogy mire gondolok. [link]
Illetve arról nem nagyon tudok infót hogy hogy csináljam meg a dic txt-t mert gondolom nem mindegy az hogy így írom be a szavakat hogy
cat/macska
vagy így
cat-macska
szóval nem tudom hogy a dic txt-t is hogyan kell elkészíteni. -
proci985
MODERÁTOR
válasz
Sk8erPeter #1653 üzenetére
arról nem is beszélve, hogy a magyarul elérhető könyvek egy része úgy rossz, ahogy van. kedvencem a programozzunk c++ nyelven volt, ami a classok elmagyarázása előtt vezette be a dynamic cast fogalmát.
aztán később azokra a problémákra, amiket az IDE már nem szűr ki vannak egész jó könyvek. a Lakos féle Large-Scale C++ SW Design szerintem pl a célra tökéletes, gyakorlatias és érdekes leírás arról, hogy mire kell ügyelni és miért.
egyébként mostanában van pár weboldal, ahol programozói kurzusokat tartanak úgy, hogy a végén egy kis dobozba az embernek meg kell írnia a kódot. aztán a beírt kód után kapásból az ember feedbacket is kap, pont mint egy IDEnél. pl itt egy példa jqueryvel. említett tutorialt kb egy nap alatt toltuk le pár másik emberrel egy projekten belül, arra pedig teljesen elég volt, hogy utánna neki tudjunk állni jqueryben haxolni. ez az interaktív kikérdezgető nélkül nehezebb lett volna. alternatív megoldás a vadludas stroustrup féle, kb hagyj le egy betűt és nézd meg mit csinál variáns. egyetlen probléma, hogy ez az interaktív megoldás sokkal de sokkal gyorsabb. többiekkel beszéltük is, hogy ha nem találjuk meg ezt az oldalt, akkor valszeg sokkal nehezebb dolgunk lett volna. így meg nevetve konstatáltuk, hogy egész jól alakul a honlap, pedig kb azelőtt két héttel kb semmit nem tudtunk a jqueryről (minimális jscript tudásunk volt).
kmisi99: projekt mappája megvan? .c++ fileok tudod hol vannak?
-
kmisi99
addikt
válasz
Jhonny06 #1661 üzenetére
Aha csak az a baj hogy ez még nem alkalmazás még csak parancssorban fut a progi és annak nem tudom hol van az a mappája ahonnan fut. Egyébként hogyan tudom exe vé varázsolni és valami grafikus felületet adni neki ahol lehet gépelni stb és exe lesz? A vcl from applications ban kell?
-
kmisi99
addikt
válasz
WonderCSabo #1658 üzenetére
LOL. Közben jó lett a borlandal is. Az volt a gond hogy amit elsőnek kiírt hibaüzenet hogy használjak vclt én azt úgy vettem hogy a new/vcl from new applicationba kell beraknom a forrást. De közbe includeolni kellett egy <vcl>-t. Mostmár tökéletes. Csak azt nem tudom hogy ezek után a dic.txt-t hova kell megadni? Amiből a szavakat beolvassa? Mert azt nem nagyon tudom illetve a txt be hogy kell vajon a szavakat beírni?
-
Jhonny06
veterán
válasz
WonderCSabo #1658 üzenetére
Szinte biztos. A korábban linkelt oldalakon is ez volt a hibaüzenetre a legvalószínűbb megoldás.
Az stdio ugye C-s header, szóval..
-
kmisi99
addikt
válasz
WonderCSabo #1636 üzenetére
Ez a Code:: Blocks valóban tökéletesen működik. Már csak azt nem értem mi a szar kínja van ennek a szar borlandnak hogy az stdio nál sír csomó hiba miatt.
-
Sk8erPeter
nagyúr
válasz
WonderCSabo #1655 üzenetére
Hát az mondjuk igaz, hogy a kezdő valszeg nem tudja azt sem eldönteni, milyen progira van szüksége.
Másik oldalról manapság elég sokaknak van legalább i3-as procija, több mint 4 GB RAM-ja, stb., tehát egyre kevésbé szűk keresztmetszet a hardver. (Értsd: ha tök jól bírja a gép, valaki leszarhatja, mennyire erőforrás-igényes mondjuk egy NetBeans/Eclipse/VS/..., összességében gyorsítja a munkáját.)Igazából valóban nem teljesen egyértelmű, melyik a jobb módszer, ha magától tanulja meg, szívások árán, guglizva, olvasgatva, hogy is kéne kódolni, vagy ha segíti az IDE, így gyorsabban megvan a probléma forrása, és mellé még olvasgat is.
Mindkettő módszernek megvan az előnye, az mondjuk biztos, hogy ha az ember jó hosszan rágódik egy problémán, de végül magától sikerül megoldania, akkor az a megoldási módszer (meg jobb esetben az okok) nagy eséllyel beleverődik a fejébe. -
WonderCSabo
félisten
válasz
Sk8erPeter #1654 üzenetére
Mitől overkill? Egyrészt több erőforrást zabál, másrészt baromi lassú, főleg az indulása, iszonyat mennyiségű temporaryt foglal le, a telepítési méretéről ne is beszéljek, meg a kismillió mellékprogit, amit felrak magának a működéshez. Igen, egy kezdőnek egyértelműen overkill, ezt a véleményt továbbra is tartom. Azt viszont sehol sem írtam, hogy rossz IDE, én használom a VSt, és kedvelem is, de pl. az Eclipset jobbnak tartom.
Ez a kezdő programozó "nem segítése" dolog a saját véleményem, kéretik nem megkövezni, senkinek se mondtam, hogy értsen egyet vele.
-
Sk8erPeter
nagyúr
válasz
WonderCSabo #1647 üzenetére
"A VS-t én semmiképpen nem ajánlanám kezdőknek, egyrészt overkill, másrészt ne kössük már az embereket rögtön az MS-hez és a nem portolható kódgyártáshoz."
Szokásos MS-fikázás...Ez már kicsit uncsi.
Ettől függetlenül a Visual Studio egy elég jó IDE.
De még mindig ott a NetBeans és Eclipse, mint ingyenes alternatívák az okosak közül."Azért az Eclipse pl. elég okos IDE, pl. szól, ha olyan kódot írsz, amit nem lehet elérni (pl. végtelen ciklus után, vagy return után), a legperverzebb generices elcseszett szintaktikádat is képes kijavítani, exception, null referencia, inicializálás lehagyása után rögtön szól, stb., stb."
Baj, ha ezeket a kezdőnek jelzi?Egyébként igazából elgondolkodtatott, hogy mitől "overkill"? Mert több erőforrást zabál, mint egy CodeBlocks? Meg jóval okosabb? Igyekszik az arcodba tolni a hibalehetőségeket, és a kódolást segítő eszközöket? Ja, és?
Tulajdonképpen időközben rájöttem, hogy nem biztos, hogy az a jó, ha valaki szív az elején az IDE-vel, magával a nyelvvel úgyis fog szívni eleget.
-
Sk8erPeter
nagyúr
válasz
proci985 #1652 üzenetére
"szóval használat közben tanít."
Ezzel mondjuk eléggé egyetértek. Ez igen előnyös, főleg tekintve azt, hogy sokszor ostoba kérdések születnek a kezdők bénázásaiból (ha szar a tanításuk, nem lehet őket szidni, csak ha meg sem próbálnak utánanézni/rájönni, mi lehet a gond), legalább egy okosabb IDE megmondja, mit kéne javítani. Megnézi a hibaüzenetet, és jobb esetben fel is fogja, mit ír ki, rácsap a homlokára, és konstatálja, hogy "jé, ezt akkor így kell, legközelebb így csinálom". Vagy legalább be tudja írni a fórumra, hogy "ezt a hibát kaptam, mé'?"
Ezenkívül szerintem szempont az is, hogy sokszor a kezdők önbizalmát elveszi az, hogy fingjuk sincs, mit rontottak el, és hiába olvassák el a könyv vonatkozó részét, még túl kezdetleges a tudásuk ahhoz, hogy fel is fogják, hogy most mit is akar ténylegesen jelenteni a magyarázat (ez részben tapasztalat is, hogy volt, hogy elolvastam kétszer-háromszor, de még mindig nem értettem a dolog miértjét, aztán később tök triviálisnak tűnt). Ha egy komolyabb IDE segít a hibafelderítésben, a kezdő fejlesztőnek előbb lesz sikerélménye. Az meg elég sokat tud dobni abban, hogy egyáltalán kedve legyen az egészhez. -
proci985
MODERÁTOR
válasz
dabadab #1649 üzenetére
arról nem is beszélve, hogy ember leírja, aztán az IDE azonnal szól is, hogy ez meg ez így nem lesz jó. szóval használat közben tanít. szerintem is remek feature, sokkal jobb, mint órákon át keresgélni, hogy mi a fenéért nem működik a kód rendesen, mert véletlenül a return mögé írt egy sort. kezdőként folyamatosan szívni a szintaxissal eszméletlenül irritáló.
más kérdés, hogy mivel az IDE szól, egy idő után szerintem jobban berögzül, hogy mi nem lesz jó, mivel azonnal van feedback.
-
WonderCSabo
félisten
válasz
dabadab #1649 üzenetére
Azon nincs mit megtanulni, hogy nem irunk elerhetetlen kodreszleteket, ezt mindenki tudja magatol is.
Túl optimista vagy, én nem ezt tapasztalom.
Persze, nyilván tervezési hibákat nem fog észrevenni, hálistennek, különben nem lenne szükség programozókra. Én úgy vagyok vele, hogy jobb ha megtanulja az ember ezeket a bénázásokat is, nem jó arra támaszkodni mindig, hogy majd az IDE úgy is kijavítja, ha hülyeséget írok. Szvsz.
-
Jhonny06
veterán
válasz
dabadab #1646 üzenetére
Én VS-el kezdtem és nem volt overkill, abszolút. Az egyetlen generált vudu az "stdafx.h" precompiled header volt, gyorsan utánanéztem és legközelebb már kikapcsoltam.
Egyébként nem akkora kaland a kezelése, egy kezdőnek pár funkciót kell tudnia, csak sokakat elriaszt a tengernyi lehetőség, amikor először meglátják a kezelőfelületet. De aki programozó akar lenni, abban legyen annyi kitartás, hogy végigklikkelget a dolgokon és rájön, hogy miként működik az IDE.
-
dabadab
titán
válasz
WonderCSabo #1647 üzenetére
Ezek kezdoknel se erdemi hibak, csak sima benazasok - nem azert kovetik el, mert azt hiszik, hogy ez igy jo, hanem annak ellenere, hogy tudjak, hogy nem jo. Azon nincs mit megtanulni, hogy nem irunk elerhetetlen kodreszleteket, ezt mindenki tudja magatol is.
Ami erdemi hiba, az pl. az, ha rosszul tervezi meg az osztalyait, ha tul sok kopipesztet hasznal a kodban (ahelyett, hogy generalizalna es kirakna egy methodba), ha spagettikodot ir, meg ilyenek. Ezeket viszont eszre se veszi az IDE.
-
proci985
MODERÁTOR
válasz
dabadab #1646 üzenetére
empty projekt van, nem véletlenül írtam, hogy első két gyak arról szól slideokkal kiegészítve, hogy mire kell kattintani. pont a vuduk miatt
.
refactoring tényleg hiányzik belőle.
WonderCSabo: empty projekt, lehet VSben is teljesen szabvány C++ kódot írni. grafikus felületre egy egyszerű, saját library van használva, szóval az a rész kb annyira nehéz, mint mondjuk javaban a gui. meg mellesleg a tanulók megtanulnak egy external libraryvel dolgozni, illetve kapnak egy képet, hogy miért jó az OO felépítés.
Borlandon pedig meglepődtem, hogy még használják valahol.
Högskolan i Skövde
-
WonderCSabo
félisten
válasz
dabadab #1644 üzenetére
Ja, es olyan IDE-t meg nem lattam, ami erdemi programozoi hibakat javitott volna.
Láttad, hogy én kezdőkről beszéltem. Azért az Eclipse pl. elég okos IDE, pl. szól, ha olyan kódot írsz, amit nem lehet elérni (pl. végtelen ciklus után, vagy return után), a legperverzebb generices elcseszett szintaktikádat is képes kijavítani, exception, null referencia, inicializálás lehagyása után rögtön szól, stb., stb.
Kösz ezt a Qt Creatort, névről ismertem, majd egyszer meglesem.
proci985: Borlandot ki kéne már írtani az oktatásból. A VS-t én semmiképpen nem ajánlanám kezdőknek, egyrészt overkill, másrészt ne kössük már az embereket rögtön az MS-hez és a nem portolható kódgyártáshoz.
Szerk.: Hol tanulsz?
-
dabadab
titán
válasz
proci985 #1645 üzenetére
"nálunk itt a kezdők VS2010el kezdenek"
Mondjuk pont kezdoknek szerintem nem annyira jo, egyreszt az ujonnan generalt projektekbe alapbol rak egy csomo vudut, masreszt meg gyakorlatilag teljesen hianyzik belole mindenfele refactoring tool, marpedig az kezdoknek (is) nagyon jol jon.
-
proci985
MODERÁTOR
válasz
WonderCSabo #1641 üzenetére
nálunk itt a kezdők VS2010el kezdenek, és meglepően jól megy nekik. első két gyak az ismerd meg a compilerről szól (pontosan mire kattints, hogy le is forduljon), utánna működik.
ha komolyabb hibára fut, akkor meg még mindig a hibakód alapján rá lehet jönni, hogy mi történt. szerintem sokkal egyszerűbb az elején, mint mondjuk amennyit én szívtam a dosos borland c++al.
ettől még ugyanúgy megtanulnak szépen kódolni.
papíron kódolásnak szerintem sok értelme nincs. nem tükröz valós felhasználást, ha meg tervezni kell valamit, akkor gráffal/automatával/flowcharttal, esetleg pseudokóddal szerintem jobb eredmény érhető el. megeshet persze, hogy az embernek szinte segítség nélkül kell kódolnia, de pl unix kernelt moddolni az elején még nem fog senki (és a compiler még ott is ad valamennyi visszajelzést ha az ember elszúrja, legalábbis minixnél biztosan).
-
dabadab
titán
válasz
WonderCSabo #1638 üzenetére
Mondjuk - mint a nevebol latszik - a GUI designer resze qt-re van kitalalva, de amugy sima C++ projekteket is kezel, van mindenre (Linux, Windows, OSX alapbol, meg talan Symbianra is le lehetne forditani
), ingyenes, gyors es nagyon kis light weightnek erzodik - es ezzel egyutt a Visual Assist X-szel tuningolt VS2010-hez kepest sem tunik kevestudasunak, sot, egy csomo dolgot jobban tud (pl autoindent meg a zarojelek, idezojelek automata lezarasa rettenetes nagy kiralysag benne) - persze vannak hianyossaga, de nem tul zavaroak, most igy hirtelen csak az jut eszembe, hogy search'n'replace nem megy selectionre.
Ja, es olyan IDE-t meg nem lattam, ami erdemi programozoi hibakat javitott volna.
-
WonderCSabo
félisten
válasz
Sk8erPeter #1642 üzenetére
Én is papíron írtam ZHt, az első félév évközijét is, meg a 3. félév évközijét is.
Szerk.: OFF.
-
Sk8erPeter
nagyúr
válasz
WonderCSabo #1641 üzenetére
Persze, ez is egy jó szempont, hogy előbb tanuljon meg programozni, aztán utána már egy kicsit kényelmesebb eszközhöz is nyúlhat.
Egyébként én épp ezért nem is tartom olyan baromságnak azt a számonkérést, ahol eleinte papíron kell írni egy működő kódot (még ha nem is találod el a pontos könyvtári függvényneveket). Még ha sokan köpködnek is rá, és még ha én is utáltam, amikor nekem kellett ugyanezt csinálnom. -
WonderCSabo
félisten
válasz
Sk8erPeter #1639 üzenetére
Eclipse CDT toolchaint konfigurálni sztem a kollégának nem fog menni elsőre...
proci985 és Sk8erPeter: Én se az Eclipset, se NetBeanst, se VSt nem ajánlanám egy kezdő programozónak. Oké, hogy baromi okosak, de pont emiatt veszélyesek is. Minden hibát kijavít, a kezdő tanuló így meg se akar tanulni szépen kódolni, és gány lesz a programja, ha meg esetleg vmi komolyabb hibába fut, amit már az IDE nem képes megoldani, akkor pedig csak néz mint borjú az új kapura. Persze később már jöhet egy "színes-szagos" IDE, mert baromira meggyorsítja a munkát, hanem kell a vacakságokkal pöcsölni, mert kijavítja/kiegészíti az IDE.
-
proci985
MODERÁTOR
válasz
WonderCSabo #1638 üzenetére
szerintem azért a fv és osztálykiegészítgetés remek, visual studioban pont azt imádtam, hogy ha az ember valamit elszúr, akkor azonnal látszik, mert az intellisense nem ajánl fel dolgokat.
VS express szerintem nem rossz: csomó szempontból tényleg overkill, de egyébként sokat segít (mondjuk a netbeans funkcióleírásait jobban szeretem).
másik oldalról meg ha a tanár ennyire inkompetens, és hosszú távon akár ezzel is akar programozni, akkor szerintem egész egyszerűen el kell kezdeni önképezni sajnos.
-
Sk8erPeter
nagyúr
válasz
WonderCSabo #1638 üzenetére
Félre ne értsd, most nem beléd akartam kötni.
Azért egy Eclipse vagy egy NetBeans, vagy ehhez hasonló IDE tényleg jobb, mint egy Code::Blocks (és ezek is ingyenesek), még ha a srác számára lehet, hogy most tényleg overkill lenne.
Ettől függetlenül persze, neki most bőven elég kell, hogy legyen a Code::Blocks. Meg ha nem megy, akkor próbálja má' ki, annak csinálnia kéne a dolgát egyből.
Igazából csak annyit állítok, hogy azért kicsit komolyabb célokra már csak kényelmi szempontból sem árthat egy nagyobb tudású IDE. -
WonderCSabo
félisten
válasz
Sk8erPeter #1637 üzenetére
Okés, akkor várom a javaslatokat, hogy a kolléga hogyan fordítson, mert ez a fos Borland cucc sehogy se akar Neki menni, egy Visual Studiot felrakni nem kicsit overkill ide, a Code::Blocks pedg télleg lightwight, és azon se kell semmit konfigolni.
A kódkiegészítés csak sima szavakat tud, egész fv meg osztály definíciókat nem rak be Neked, mint az Eclipse, de egy kezdőnek marhára elég kell, hogy legyen.
Szerk.: Ja és várom a Code::Blocks-nál jobb, ingyenes C++ IDEket, mert télleg szívesen kipróbálom őket. Már ha vannak.
-
Sk8erPeter
nagyúr
válasz
WonderCSabo #1636 üzenetére
"Rakj fel egy Code::Blocks-ot, azon simán fog menni."
Hányszor látom azt a kérdést, hogy "Code::Blocks-ot használok, hibát dob a fordító, úrissssten, mi lehet a baj???"Még BME-s levlistákon is látok ilyen gyökér kérdéseket.
Egyébként régebben én is használtam ezt a progit, de tulajdonképpen azonkívül, hogy letisztult a felülete, és nagyon kicsi az erőforrás-igénye (ami valóban nem rossz), más előnyét már nem igazán látom.
Pl. amikor használtam, a kódkiegészítés akkor még nagyon kezdetleges volt, már ami volt hozzá. -
WonderCSabo
félisten
válasz
kmisi99 #1635 üzenetére
Ebben a hszben már kijavítottam a netes kódodat, az működik... Nem tudom mi a baja a borland fordítónak, véletlenül nem C-s projektként akarsz fordítani? Rakj fel egy Code::Blocks-ot, azon simán fog menni.
-
kmisi99
addikt
válasz
WonderCSabo #1634 üzenetére
Hát akkor azt hiszem mégis csak marad a borland. Amikor te lefuttattad neked minden rendben volt? Mert nekem sehogy se jó
Elolvastam a hibaüzit amit linkeltél és ott azt írja használjak vcl-t próbáltam vcl ben is futtatni de az se jó. Elkezdi fordítani majd megnyitja a képen látható stdio.h-t és abban talál csomó hibát. Itt a kép [link]
Jó lenne valahogy megcsinálni még ha hót hulladék az egész progi ahogy van csak kb tegye a dolgát.
Előre is kösz a válaszokat. -
kmisi99
addikt
Ja a tanár csak a borlandot hajlandó használni és nem akar magának felrakni mást csak ezt. Na meg az iskolába is csak ez van fönn.
De azt hiszem ez a borland hót szar megpróbáltam VCL ben is futtatni ott is csomó baja van.
Azt hiszem felrakom a visual studiot aztán ez alapján a vidi alapján megcsinálom [link] -
proci985
MODERÁTOR
válasz
WonderCSabo #1631 üzenetére
jaja, az expressre gondoltam, csak nem jutott eszembe pontosan hogy hívják. Code:
locksot nem ismerem.
ja, nekem is van egy ilyen rossz érzésem, de azért megkérdeztem, hátha...
-
kmisi99
addikt
borland turbo c 2006 ot használok
a cin.get() se segít ezt a hibakódot adja ki mindig alul most vettem észre kép a hibáról -
WonderCSabo
félisten
válasz
Jhonny06 #1626 üzenetére
Én úgy értettem a kérdését, hogy még a kezdeti cuccokat se írja ki a progi, csak felvillan és bezáródik, ami azért fura mert van egy bekérés rögtön az elején. De lehet, hogy félreértettem, és az a gond, amit Te írtál.
A megakasztáshoz viszont két cin.get() kell a végére, mert a cin-en még ottmarad a bekért szám után a newline, és azt egy cin.get() simán bekajálja.
-
kmisi99
addikt
válasz
WonderCSabo #1623 üzenetére
Kösz a segítséget most már nincs hibakód de mikor futtatom csak felvillan a fordítás felirat meg 0 hiba stb és eltűnik mi lehet a gond?
-
WonderCSabo
félisten
válasz
kmisi99 #1620 üzenetére
Elnézést, az aposztróf közé rakás nem volt hiba, csak siettem és megzavart a ch változó neve...
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
class Dictionary
{
private:
char alphabet;
string meaning;
string word;
public:
void getmeaning(std::string *p);
void search()
{
string word;
cout<<"enter a word :";
cin>>word;
getmeaning(&word);
}
} di;
void Dictionary::getmeaning(std::string *p)
{
string a,b;
// Assume there exists a dictionary dic.txt
// Remember to add proper error handling (file operation)
ifstream get("dic.txt",ios::in);
while ( !get.eof())
{
get>>a>>b;
if (*p==a)
{
cout<<a<<" "<<b;
}
}
}
int main()
{
int ch;
cout<<"=D=I=C=T="<<endl;
cout<<"1.Show meaning"<<endl;
cout<<"2.Show word"<<endl;
cout<<"3.Exit"<<endl;
cin>>ch;
switch(ch)
{
case 1:
di.search();
break;
case 2:
{
string word;
cout<<"enter a word :";
cin>>word;
di.getmeaning(&word);
break;
}
case 3 :
return 0;
}
return 0;
}Leírtam előző hszemben az összes hibát, és a javításokat is. Lemásolsz egy kódot, más leírja, hogyan javíthatod ki, és még az se megy?...
proci985: Nem, nem kell neki default, hibákért lásd előző hszemet.
-
kmisi99
addikt
válasz
WonderCSabo #1619 üzenetére
Nekem egy hót szar is jó végülis. Mint írtam feljebb kb semmi tudásom nincs C++ ban szörnyűek a tanáraim sajnos és a rosszabb csoportba vagyok a másikban rendesen magyaráz a tanár nálunk meg a leg gagyibb dolgokat csináljuk és úgy hogy a tanár nem is magyarázza csak megadja a forráskódot másold be a fordítóba futtasd le kiadja ezt kb ennyi a tanítási módszere.
Az a tanár aki meg az elméletet tanítja az úgy ahogy jó de ha gyakorlaton semmit se tanítanak akkor az elméletet nem fogom megérteni de ez az összes többi csoporttársammal így van egyik se érti egy szemernyit se a c-t míg a másik csoport egész jó.
Beraktam én is a fordítóba a szutykot amit találtam és a case 3 sehogy se jó neki mit tudnék tenni?
-
WonderCSabo
félisten
válasz
WonderCSabo #1616 üzenetére
Szerk.: Na jó, a gyors átfutás után megnéztem fordítóval is a kódot... Hiányzik a main bezáró }-a, a case blokkban való változó deklaráció miatt sír a fordító ( { } közé kéne rakni a blokkot), illetve a getmeaning rosszul van meghívva switchben, helyesen: di.getmeaning(&word);, plusz a main végére kell egy return 0; mert csak abban az esetben tér vissza, ha a case 3 fut le. A case -ekben meg nem ártana két aposztróf közé tenni a számokat, mert kétlem, hogy a user SOH, STX vagy ETX karaktereket vinne be...
-
WonderCSabo
félisten
válasz
kmisi99 #1614 üzenetére
Elég gány ez a kód. Egyik fv-t az osztályon belül deklarálja, a másikat nem, semmi logika alapján, egyszer a felhasználói bevitelt az osztály metódusán belül kezeli, másszor azon kívül. A char alphabet változó teljesen feleslegesen van deklarálva, a getmeaning-nek totál hülyeség pointert átadni, ha memóriát akarsz spórolni akkor konstans referenciát inkább. Az std:: névteret minek írja ki, ha már gány módon behúzta globálba? Ez a program baromi lassú lesz, minden egyes szótárműveletnél beolvassa az egész fájlt, ahelyett, hogy feltöltené vmi kis "adatbázisba" a memóriában. Sőt, még azzal se foglalkozik, ha már megtalálta a jelentést, szépen végigolvassa a fájlt tovább...
Csak az a baj eléggé szar vagyok programozásból így inkább a fejem használtam. A google ki is adta nekem ezt a forráskódot mit gondoltok ez működhet?
Arra használtad a fejed, hogy kikopizd a kódot vhonnan?
A progi egyébként természetesen működik, ha jól látom, de én ezt több ok miatt nem adnám be:
- gány
- asszem a közéleti események után már mindenki érzi, hogy mennyire nagy gond az, ha vki MÁSOLT
- és nem tanulsz vele semmit -
kmisi99
addikt
Heló! Még pár napja írtam hogy akarok egy full alap gagyi szótárprogit C ben ami angol ról magyarra fordítja a szót és egy szöveges fájlban vannak a szavak eltárolva. Először is kösz az eddigi segítséget. Csak az a baj eléggé szar vagyok programozásból így inkább a fejem használtam. A google ki is adta nekem ezt a forráskódot mit gondoltok ez működhet?
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
class Dictionary
{
private:
char alphabet;
string meaning;
string word;
public:
void getmeaning(std::string *p);
void search()
{
string word;
cout<<"enter a word :";
cin>>word;
getmeaning(&word);
}
}di;
void Dictionary::getmeaning(std::string *p)
{
string a,b;
// Assume there exists a dictionary dic.txt
// Remember to add proper error handling (file operation)
ifstream get("dic.txt",ios::in);
while ( !get.eof())
{
get>>a>>b;
if (*p==a){
cout<<a<<" "<<b;
}
}
}
int main(){
int ch;
cout<<"=D=I=C=T="<<endl;
cout<<"1.Show meaning"<<endl;
cout<<"2.Show word"<<endl;
cout<<"3.Exit"<<endl;
cin>>ch;
switch(ch)
{
case 1:
di.search();
break;
case 2:
string word;
cout<<"enter a word :";
cin>>word;
di.getmeaning(word);
break;
case 3 :
return 0;
} -
proci985
MODERÁTOR
válasz
WonderCSabo #1612 üzenetére
igaz.
Hol írtam én, hogy azt kellett volna tenned?
sehol, csak indokoltam a csúnya pongyola fogalmazásomat.és publikusak lesznek, arra gondoltam.
Chipi333: structnál inkább csak annyi, hogy erre a célra szerintem már változók kellenének. bizonyos feladatokra tényleg jó a struct, de erre a célra fura ez a design, aztán meg ezt szokják meg.
-
WonderCSabo
félisten
válasz
proci985 #1609 üzenetére
és log100(100) == 1
és ezt most hogy jön ide? Te írtad, hogy:
log100, tehát 10 lépés
Gondolom az alap specifikálása nélkül 10-es alapra gondoltál, és log10(100) != 10 lépés, azért javítottalak ki...
persze, egy 11.be járónál inkább nem fejtettem ki az ordot, a lépésszámot, meg az egyéb kapcsolatos szépségeket
.
Hol írtam én, hogy azt kellett volna tenned?
(#1610) proci985: struct is működik, de akkor globálisak lesznek ezek a változók
Nem globálisak, publikusak.
Chipi333: Így van, ha télleg csak struktúraként használod, akkor teljesen jó a struct, az iparban is így használják.
cooldongo: Most látom, hogy a C topikba is beírtad a kérésedet. Dönts már el, hogy C-ben vagy C++ -ban kell megoldanod a feladatot. Mert ha C-ben, akkor a C++ -os megoldás le se fog fordulni...
-
proci985
MODERÁTOR
válasz
cooldongo #1608 üzenetére
hm, miért kell typedef, nem elég egy class Kor, unsigned int r, unsigned int x és unsigned int y paraméterekkel? struct is működik, de akkor globálisak lesznek ezek a változók.
Kor.h
class Kor{
public:
Kor(unsigned int r, unsigned int x, unsigned int y);
unsigned int mR;
unsigned int mX;
unsigned int mY;
};Kor.cpp
#include "Kor.h"
Kor(unsigned int r, unsigned int x, unsigned int y){
mR = r;
mX = x;
mY = y;
}boolean egybeesik_a_kozeppont(Kor k1, Kor k2){
if((k1.mX == k2.mX) && (k1.mY == k2.mY)){
return true;
}
else return false;
}boolean c_kerdes(Kor k1, Kor k2){
Kor k11 = k1;
Kor k21 = k2;
if(egybeesik_a_kozeppont(k11, k21)){
cout << "egybeesik";
}
else{
cout << "nem esik";
}
}elvileg ennyi. tpusdefiníciót amiatt furálom, mert object köröket ezekután simán lehet használni. typedef akkor jó, ha egy külső classban van egy adatszerkezet definiálva, aztán az ember nem akarja minden alkalommal a KulsoClass::ValamiSpecAdatstruktura sort beirogatni. kódolvashatóságot typedef javíthatja, de később (amikor eljutttok OO programozásig) bőven lehet vele szívás.
apró gondolat: szerintetek belegondoltak a programozási feladatokat kiadók, hogy rászoktatják a diákokat a magyar fv/változónevekre, amikor azokat igazából messziről kerülni kéne? meg 2012ben struct C++ban?
-
proci985
MODERÁTOR
válasz
WonderCSabo #1606 üzenetére
és log100(100) == 1
.
persze, egy 11.be járónál inkább nem fejtettem ki az ordot, a lépésszámot, meg az egyéb kapcsolatos szépségeket
.
-
cooldongo
tag
előző delete
ebbe kéne segítség de nagyon:
a)definiáljon struktúrát típusdefinícióval(típus neve legyen kor) amely egy kör adatait tárolja:sugár nem negatív egész, kör középpontjának két koordinátája(két nem negatív egész)
b)írjon fv-t amely paraméterként kap két kor típusú struktúra címet és visszaadja hogy a két kör középpontja egybeesik vagy nem
c)írjon main fv-t amelyben két kor típusú változóba beolvassa a két kör adatait és a b) fv segítségével megállapítja hogy a két kör középpontja egybeesik-e és kiírja h "egybeesik" vagy "nem esik" -
cooldongo
tag
ebbe kérnék segítséget ha valaki megírná nagyon hálás lennék érte
nagyon kezdő vok még ebbea) van egy fv amely paraméterként kap egy stringet és egy betűt majd megkeresi és visszaadja az első ilyen betűjének az indexét ha nincs benne ilyen betű akkor -1-et,
b) van egy main fv amelyben beolvas egy szöveget és az a) függvény segítségével megkeresi benne az első 'e' betűt és kiírja a szöveget valamint az 'e' betű első előfordulásának indexétegyszerű de valahogy nem jó:S
-
proci985
MODERÁTOR
válasz
proci985 #1604 üzenetére
nem lett jó a formatálás.
a tömb[i][1] elemet kell kiiratni.
mégvalami: lineáris lépésszám: mind az n elemen át kell menni, száz elemnél ez 100 (nagyon leegyszerűsítve, egy matematikus itt sikítana).
logaritmikus lépésszám: száz elemre log100, tehát 10 lépés, tehát gyorsabb.
-
proci985
MODERÁTOR
válasz
kmisi99 #1601 üzenetére
üss fel egy könyvet és nézz utánna, vektort sokkal egyszerűbb használni, mint egy statikus tömböt szvsz. map is csak leírva hangzik bonyolultan.
alternatíva: szerintem egyszerűbb egy kétdimenziós tömb, aminél a nulladik tömbelem az angol, első a magyar. ha a szöveges állományt pl le lehet tárolni egy tömbben, és jól veszem ki, hogy nem feltétlenül kell fileból olvasgatni.
aztán forciklus, végigmész a tömb nulladik elemein, ha egyezik a beírt és a tömbben letárolt string, akkor pedig kiíratod a tömb[1] es elemet. csúnya megoldás, de szerintem ennél egyszerűbben nem megy. előny, hogy nem kell két tömb (macera őket egymáshoz láncolni), hátrány van sok, de alapvetően iskolapéldának lekódolni egyszerű.
-
WonderCSabo
félisten
válasz
kmisi99 #1601 üzenetére
Akkor deklarálsz magadnak két sima, statikus tömböt, ugyanolyan mérettel. Feltételezed, hogy a szópárak száma megegyezik, de legalábbis nem nagyobb a tömbök méreténél. Van egy / két fájlod, amely(ek)ben soronként egy szó/pár van. Soronként végighaladsz a fájl(ok)on, és berakod a tömb i-dik elemébe. Ezzel feltöltötted az "adatbázist". A fordítás pedig úgy történik, hogy egy for ciklussal végigmész az angol szavakat tartalmazó tömbön, ha az aktuális elem egyezik a fordítandó szóval, akkor megjegyzed az elem indexét. És ezt az indexű elemet kéred el a másik, magyar szavakat tartalmazó tömbtől.
A lineáris keresés pont az, amit az előző bekezdés uccsó előtti mondatában írtam. Végigmész minden elemen, és ha az aktuális elem megegyezik a keresendővel, megjegyzed az indexet, és kilépsz a ciklusból. És azért lineáris, mert az algoritmus futásideje lineárisan arányos az elemek számával.
A vektor, vagyis a C++ - ban vector, egy dinamikus adatszerkezet, pontosabban egy dinamikus tömb. Ha megtelik, és akarsz még elemet belerakni, automatikusan növeli a méretét.
-
kmisi99
addikt
válasz
WonderCSabo #1600 üzenetére
Hú. Ez nem lehet kicsit sokkal egyszerűbben kb sokkal egyszerűbb sokkal gagyibb módszerrel? 11 es vagyok és lineáris keresésről meg vektorokról infón még véletlenül se hallottam.
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Samsung Galaxy A56 - megbízható középszerűség
- Mibe tegyem a megtakarításaimat?
- Automata kávégépek
- sziku69: Fűzzük össze a szavakat :)
- PlayStation 5
- HiFi műszaki szemmel - sztereó hangrendszerek
- Milyen autót vegyek?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Egy szenzor, két zoomkamera: újraírta a Huawei a mobilfotózás történetét
- Ford SYNC 3 infotainment rendszer teszt
- További aktív témák...
- HPE Apollo 4200 Gen9 2U rack szerver, 1x E5-2620v4, 64GB RAM, 24x3.5" 2U-ban! ÁFA-s számla, garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RX 6600 8GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 4070Ti Super GAMER PC termékbeszámítással
- AKCIÓ! Lenovo Thinkpad P15 Gen1 15 FHD notebook - i7 10750H 16GB RAM 512GB SSD Quadro T1000 W11
- IKEA (HAVREHOJ) tablet vagy laptop tartó
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged