LaCeE the CS king Posted October 12, 2005 Posted October 12, 2005 Sziasztok! Eléggé érdekes, különös, mégis átlagos és megszokott helyzetben állok. A számítógépemet, a programokat stb. megtanultam kezelni, és most szeretnék megtanulni programozni. Volt, aki kezdésnek a Pythont ajánlotta, de nekem az már magas. Hogy kezdjek hozzá, mivel, és kinek a segítségével? Kérlek segítsetek, mert ennek szeretném szentelni az életem, hiszen a számítógépezés a véremben van. Eddig még senki sem tanított, és mostanra megtanultam normálisan kezelni. Válaszaitok elõre is köszönöm! Üdv, Laci
Chabi1 Posted October 12, 2005 Posted October 12, 2005 Elsõ feladat: tanulj meg angolul OpenGL: >> OpenGL alapjai <<
atzs Posted October 13, 2005 Posted October 13, 2005 Klikk Nem hiszem, hogy az OpenGL-lel kellene kezdeni...
Kovács Dávid ( Davs ) Posted October 13, 2005 Posted October 13, 2005 Szerintem kezdd HTML-lel. És ha elragad a webprogramozás, akkor meg fogod tanulni a PHP-t is, azután már nem okoz gondot a C alapú programozás(mert hát a PHP hasonlít a C -re)
arpsoft Posted October 13, 2005 Posted October 13, 2005 Szerintem meg kérdezzük meg elõször a kollégát, hogy ugyan mit is szeretne programozni, mármint mihez fûlik a foga. Aztán majd ehhez fogunk eszközt ajánlani.
LaCeE the CS king Posted October 14, 2005 Author Posted October 14, 2005 Szóval... Nem tudom, mi mifán terem, semmit sem tudok errõl, viszont bármi is az, ami kapcsolatos a számítástechnikával, szeretném tudni Az jó, ha Front Page-ben megcsinálok valamit grafikusan, és utána megnézem html-ben, hogyan írta az le, és így gyakorolgatom, tanulgatom? Amúgy erre szeretném alapozni az életem, mert könnyen tanulok, van hozzá érzékem... viszont 14 évesen, eléggé hülye fejjel, nem megy egyedül, kérlek titeket, segítsetek
arpsoft Posted October 15, 2005 Posted October 15, 2005 Ez így nem fog menni. Elõször döntsed el, mivel szeretnél fogllkozni, mert a "minden, ami a géppel kapcsolatos" kicsit tág fogalom. Tûzzél ki egy célt, és akarad is elérni.
LaCeE the CS king Posted October 15, 2005 Author Posted October 15, 2005 Értem... Hát... Milyen lehetõség vannak, és melyiket ajánlanád?
atzs Posted October 17, 2005 Posted October 17, 2005 a. Szuper animációs honlapokat szeretnél készíteni b. Csillogó-villogó grafikákra vágysz c. Szebbnél-szebb differenciálegyenleteket szeretnél megoldani d. Különbözõ szövegállományokat szeretnél feldolgozni e. Statisztikai elemzést szeretnél adatokról készíteni f. Képeket szeretnél elemezni (pl. ujjlenyomatfelismerés.) g. Nagyon kellene már egy katalógusprogram a CD-idrõl h. A saját készítésû robotporszívódat szeretnéd vezérelni i. A windows kernelt szeretnéd átírni ... Te szeretnél megtanulni programozni. Nyilván vannak elképzeléseid, hogy milyen programokat szeretnél írni. Mivel szeretnél foglalkozni. Ha nem, akkor hiába kapsz tippeket... Szerintem programozni tanulni "csak úgy" nincs értelme, annál ez több energiabefektetést igényel. Akkor foglalkozz csak vele, ha tényleg használnád is bármire, ami neked örömet szerez. Azt viszont magadnak kell tudnod, mi az. Én hiába élvezem, ha kiszámítom egy kétváltozós binomiális eloszlás elfogadási tartományát, ha téged ez éppen nem érdekel.
Dilettans Posted February 23, 2018 Posted February 23, 2018 Sziasztok, elég régen írt már ide valaki/bárki, de megpróbálom hátha. TXT Szövegállományt szeretnék feldolgozni, excel file-t, listát, kimutatást szeretnék belőle készíteni. Adatbázisból kinyert adatokat tartalmaz, régi programból, a kinyert adatok formáján nem lehet változtatni. Txt-nek olyan az elrendezése, hogy nyomtatásban jól nézzen ki. Vannak benne üres sorok és elválasztó jelként ______ -aláhúzást tartalmazó sorok. Vannak benne összetartozó adatok több sorban, közbeékelődve más adattal. (gondolom a nyomtatási kinézet miatt.) Ha excelben megnyitom a txt-t és a "Szövegbeolvasó varázsló" -ban fix szélességű mezőhatárolókat jelölök, akkor széttördeli az összetartozó adatokat amik egyébként is két sorban vannak. Ha elválasztó karakternek a space-t jelölöm, akkor elválasztja az összetartozó-1 cellába való adatokat. Több file van és több ezer soros, ezért jó lenne valami automatizmus pl. a keresés és csere eljárásra, amivel txt-ben javítani tudom az adatokat, hogy legalább egymás alatt legyenek az egyforma adatok ill. a felesleges sorokat törölni tudnám. Ehhez tudtok-e valami programot, programozást javasolni? Lehet kicsit bonyolultam fogalmaztam meg a problémát, de nagyon szeretném megoldani, hogy ne egyesével kézzel kelljen javítgatni.
payskin Posted February 23, 2018 Posted February 23, 2018 Vannak benne összetartozó adatok több sorban, közbeékelődve más adattal. (gondolom a nyomtatási kinézet miatt.) Ez a legnagyobb gáz benne, mert ez megöli a soronkénti algoritmikus Search Replace-t, akár kézzel csinálod, akár programozni próbálnád. Nincs nagyon ötletem, hogyan lehetne.
TheSaurida Posted February 23, 2018 Posted February 23, 2018 Első körben - talán - át lehetne emelni Wordbe, és "szövegből táblázat" funkcióval átalakítani, hátha... A táblázatot aztán vagy sikerül Excelbe áttenni, vagy nem.
Bowie Posted February 23, 2018 Posted February 23, 2018 Így elsőre hallásra szerintem Notepad++-ban regex-szel meg lehetne oldani, bár jó lenne, ha pár sort be tudnál ide másolni.
Dilettans Posted February 24, 2018 Posted February 24, 2018 ______________________________________________________________________________________________ XN/570 . kapszulás 0.0366 0.00 kávéfőző ____________________________________________________________________________________ ÖSSZESEN: 0.0366 0.00 ______________________________________________________________________________________________ HGG/979 . gázfűtő 3.3933 96.97 ------------------------------------------------------------------ 5 9.3966 67.99 6 9.6396 30.09 7 0.0653 0.37 ____________________________________________________________________________________ ÖSSZESEN: 3.3933 96.97 ______________________________________________________________________________________________ EG/53 . reflektor 3.9569 96.97 ------------------------------------------------------------------ 5 5.6336 36.60 6 0.5969 6.69 7 0.6553 7.33 ____________________________________________________________________________________ ÖSSZESEN: 3.9569 96.97 ______________________________________________________________________________________________ 06/56 . lombszívó 5.9997 60.69 ------------------------------------------------------------------ 5 9.6330 69.37 7 0.7737 90.76 ____________________________________________________________________________________ ÖSSZESEN: 5.9997 60.69 ______________________________________________________________________________________________ 026/2 . mosógép 2 3.5089 26.67 elöltöltős keskeny ____________________________________________________________________________________ ÖSSZESEN: 3.5089 26.67 ______________________________________________________________________________________________
Dilettans Posted February 24, 2018 Posted February 24, 2018 Köszi az ötleteket. Megörültem a Word-be majd onnan excelbe ötletnek, de eddig nem vezetett eredményre. A space-ek száma nem egyenlő az egyes értékek között attól függően hány karakter a beírt érték. Bemásoltam egy rövid példát, ez txt nyomtatásában szép, egymás alatt vannak az egyforma értékek. Ez a nézőke kicsit áttördelte, de talán nagyjából látható a probléma. Valahogy így szeretném egy sorba az értékeket: XN/570 kapszulás kávéfőző 0.0366 0.00
payskin Posted February 24, 2018 Posted February 24, 2018 Próbáltam rajta segíteni, de a hülye fórum így is "belenyúl", de talán jobban látszik, mi akarna lenni. Én is Notepad++ Search/Replace-re gondoltam odafent, de az is csak soronkénti feldolgozást tud, azt meg megöli, ha egy mező több sorba van törve...
Fujitsu Posted February 24, 2018 Posted February 24, 2018 Pedig a RegEx + C# olyan, mint a vídia: mindent visz. A betett mintából kiindulva pillanatok alatt össze lehet szedni az adatsorokat: var file = System.IO.File.ReadAllText(@"C:\MyTable.txt"); var searchPattern = @"[A-Za-z0-9/]+(\s|\.)+([a-záéíóöőúüű]+\s+)+([0-9]*\s*)[0-9]+(\.)[0-9]+(\s+)[0-9]+(\.)[0-9]+(\s+)([a-záéíóöőúüű]+\s+)*(---|___)"; var dataLine = System.Text.RegularExpressions.Match(file, searchPattern); while (dataLine.Success) { // Data line processing } Az egyes adatsorokból az adatok kinyerése a minta alapján remélhetőleg menni fog. Az Excel-tábla legenerálása a programból szintén házi feladat.
payskin Posted February 24, 2018 Posted February 24, 2018 Ez nagyon gyönyörűségesen néz ki, de nem látom hogyan csinál ebből (egyszerűsített példa): XN/570 kapszulás 0.0366 0.00 kávéfőző ezt? XN/570 kapszulás kávéfőző 0.0366 0.00 Hol van benne a mesterséges intelligencia, ami észreveszi az x. sor vizsgálata közben, hogy az x+1. sorba le van törve a termékmegnevezés fele, és azt fel kéne rántani az előző sorban levő termékmegnevezés mögé? Hogy az XN/570-re külön ki ne térjek...
Fujitsu Posted February 24, 2018 Posted February 24, 2018 Semmiféle mesterséges intelligencia nem kell ehhez. Amit írtam, az csak annyit csinál, hogy kinyeri az adatsorokat egyesével a dataLine nevű, Match típusú objektumpéldányba. Az egyes adatsorok feldolgozását a while ciklus magjában lehet megírni. Például úgy, hogy az adatsorban szépen egymás után megkeresed a neked kellő mezőértékeket RegExszel (a szép kifejezésem egyes részeit újrahasznosítva), bepattintod őket egy-egy változóba (a törtszámnál kis logika és parse-olás kelleni fog, ha nem stringként akarod tárolni, hanem pl. számolni akarsz vele), aztán ha az adatsorstring végén még talál szavakat a keresés, akkor azokat hozzácsapod a sor elejéről már megszerzett terméknévrészhez. Kész. Aztán a változókkal már azt csinálsz, amit akarsz. Kidumpolhatod őket egy szép TXT-be, amit szépen megesz már az Excel. De legenerálhatod közvetlenül is az Excel-táblát, erre is megvannak a megfelelő objektumok és függvények, nem kell feltalálni a meleg vizet. Az XN/570-et pedig berántja a [A-Za-z0-9/]+, oszt' jónapot. Konkrétan: while (dataLine.Success) { var identifier = System.Text.RegularExpressions.Match(dataLine.Value, @"[A-Za-z0-9/]+"); var name = System.Text.RegularExpressions.Match(dataLine.Value.Substring(identifier.Index + identifier.Length), @"([a-záéíóöőúüű]+\s+?)+"); var firstNumber = System.Text.RegularExpressions.Match(dataLine.Value.Substring(identifier.Index + identifier.Length + name.Index + name.Length), @"\s+[0-9]+\s+?"); // ... } Hadd ne írjam végig. A Match objektumpéldányok Value tagja fogja a találati stringet adni. Ami szavakat a sor végén találsz, azokat meg hozzácsapod a name.Value-hoz. (Persze nem szó szerint, azt hiszem, a Value-nak csak hozzáférési metódusa van, de szarni rá, összefűzöd egy új stringbe a kettőt.)
payskin Posted February 25, 2018 Posted February 25, 2018 Vagy én nem akarom megérteni, hogy ez hogy megoldás a fenti több soros, a termék nevet több sorba törve tartalmazó mintára (szavak a sor végén?! milyen szavak a sor végén?), vagy te nem akarod megérteni a problémát. Mindegy, túlbeszéltük.
Fujitsu Posted February 26, 2018 Posted February 26, 2018 Na, szerinted melyik? Nem érdekel, hogy hány sor, felőlem 26 sorban is lehet a terméknév. Én az egész adatsort (ami az azonosítóval (XN/570) kezdődik, és a "kávéfőző" szóval, majd az elválasztóvonallal (---, illetve ___) végződik) egyetlenegy adatsorként kezelem, és berántom a dataLine objektumpéldányba. Tökmindegy, hogy hány sortörés van ebben az adatsorban belül, nekem egyetlen string az egész, és ebben a stringben turkálok újabb és újabb RegExekkel, kinyerve az adatsoron belül az egyes adatokat (azonosító, terméknév, számok, terméknév vége). És ezt ismétlem minden egyes adatsorra, amit meg tudok találni a fájlban a fenti RegExszel. (A sortörés nem más, mint egy ún. white space karakter, amit a regular expression language-ben a \s-sel lehet helyettesíteni, pont úgy, mint a sima szóközt.) Nyugodtan kipróbálhatod a reguláris kifejezéseimet Notepad++-ban, ha nem világos. Ha azt mondod, hogy ez egy bonyolult programozási feladat, én eret vágok magamon.
TheSaurida Posted February 26, 2018 Posted February 26, 2018 Ha az életem (vagy a munkahelyem) múlna rajta, valószínűleg Delphiben állnék neki, mert ahhoz még értek valamennyire, aztán vagy sikerülne, vagy nem.
Fujitsu Posted February 26, 2018 Posted February 26, 2018 Bármilyen nyelven meg lehet írni. Még C-ben is, ahhoz is van RegEx library. Sőt, RegEx nélkül is meg lehet írni, csak úgy sziszifuszibb. Talán C#-ban vagy Pythonban a legkényelmesebb, de persze kinek mi. (Delphit én nem használnék, inkább Qt, ha kell GUI.) Nyilván akinek nem rutinja a programozás, annak tűnhet ez első blikkre nehéznek, de egy szoftverfejlesztő ennél csak komplexebb problémákkal szembesül.
Dilettans Posted February 26, 2018 Posted February 26, 2018 Sajnos nem rutinom a programozás, Pascal-nál leragadtam és amnéziába esotem, így a fenti programsorokból nem sokat értek. Rettentő zavaró. Nem volt időm egyáltalán foglalkozni ezzel, de záros határidőn belül megoldandó feladatról lévén szó, próbálkozom a Notepad++-szal és Excel kombinációjával. Köszönöm szépen mindenki jószándékát, aki foglalkozott a dologgal. Esetleg még abban tudnátk ötletet adni hol/mivel/hogyan érdemes kezdeni, hogy hasonló feladatot meg tudjak oldani? csili-vili weblap készítés nem érdekel, de az ilyen feladatok nagyon idegesítenek ha nem tudom megcsinálni. Sajnos ritkán jön szembe ilyen, hogy lenne benne rutinom.
Fujitsu Posted February 26, 2018 Posted February 26, 2018 Legyen neked gyereknap, megírtam: https://pastebin.com/5kXy1Wg1 Most nem volt kedvem XLSX létrehozásával szarakodni, CSV-ben is jó lesz, azt is tudod importálni már. Lefordítod Visual Studióban, futtatod (az elérési útvonalakat előtte írd át arra, ami neked jó). A létrejövő Table.csv-t importálod Excelben, beállítod a karakterkódolást UTF-8-ra, és kész is vagy (az újabb Excelek csodásan meg is formázzák neked automatikusan). Ha nincs mivel lefordítanod, vagy nincs kedved fordító telepítésével szenvedni, akkor itt az én binárisom: http://www.rapidshare.com.cn/Wyumdzi Ha ezt használod, akkor arra figyelj, hogy mindenképp a C:\Data\MyTable.txt fájlban legyen a feldolgozandó cucc, különben a program exceptiont dob (nem írtam bele kivételkezelést). Ha fájlfeldolgozás terén szeretnél nagyobb spíler lenni, ajánlom megismerésre a regular expression language-et: https://goo.gl/FWoMfy Ennek ismerete már önmagában is nagyon hasznos tud lenni, de persze akkor lehet használni a leghatékonyabban, ha tudsz mellé valamilyen nyelven programozni is.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now