Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Lalikiraly: Kaáli Autó-Motor Múzeum
- btz: Internet fejlesztés országosan!
- Magga: PLEX: multimédia az egész lakásban
- gerner1
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Fűzzük össze a szavakat :)
- eBay-es kütyük kis pénzért
- Autódiagnosztika: a gyakorlatban
- sziku69: Szólánc.
Új hozzászólás Aktív témák
-
#29810176
törölt tag
válasz
DrojDtroll
#5828
üzenetére
Köszi a válaszokat! Video sorozat is érdekel, ha nem túl drága (max. 10000Ft), jó kezdőknek, tényleg részletesen mindent (már ha létezik ez a szó a programozásban) elmagyaráz.
kispx:
Köszi
Ez jó kezdőknek is? Nem igényel más nyelv ismeretét? -
dobragab
addikt
válasz
DrojDtroll
#5607
üzenetére
feof-fal óvatosan, nem jóstehetség! Nem tudja kitalálni, hogy a következő beolvasás el fog-e halni (azaz a fájl végén vagyunk-e), hanem azt adja vissza, hogy az előző beolvasás EOF miatt halt-e el. Azaz könnyű rosszul használni, így tud még egy hibás adat bekerülni a lista végére.
-
#36268800
törölt tag
válasz
DrojDtroll
#5602
üzenetére
Tulajdonképpen hetente változik a sorok száma, hiszen akkor húzzák ki az újabb számokat (manuálisan szerkesztem a fájlt).
Az oszlopok száma mindig 5, mivel ötös lottóról van szó.
-
mepet
addikt
válasz
DrojDtroll
#5460
üzenetére
Hirtelen kikopiztam egy txt olvasós progimból az ideillő részt.
lines[] tömb elemei a sorok és sepline az üres sor sorszáma.//-------------------------------------------------------
//file reading, array fulfilling, finding seperator line
//-------------------------------------------------------
if ( file != NULL )
{
char line [MAX_CHARS]; //maximum line size
for (i=0; fgets ( line, sizeof line, file ) != NULL; i++ ) // read a line
{
sprintf(lines[i], "%s", line);
//printf("%d. %s", i, lines[i]);
if (strcmp(lines[i], "\n") ==0 ) // find seperator line
sepline=i;
}
fclose ( file );
}
else
{
perror ( filename );
return 1; // why didn't the file open?
} -
axioma
veterán
válasz
DrojDtroll
#5184
üzenetére
Azt gyanitanam latatlanban, hogy nem arra gondoltak, hogy a futasnal legyen ez ellenorizve es kiabaljon ha nem jo (vagy esetleg ettol fuggoen mas modszerrel csinald tovabb), hanem arra, hogy az algoritmus maga biztositsa (a felepitesevel), hogy ez alatt marad a felhasznalas (vagy nem hasznalsz dinamikusan foglalt valtozokat, vagy ha megis, azoknak a szamara van felso korlat mar maga az algo alapjan). Illetve van me'g amikor az a cel, hogy a tomoritest oldd meg (pl. 4 db iranyt jelzo info (fel/le/jobbra/balra) egy byte-ban, vagy 30 darab 0-120 kozti egesz lista vagy tomb helyett bithellyel abrazolva 16 byte-on). A kicsit konkretabb feladatbol kiderulhetne, hogy melyik (vszinu egyszeruen kodolhato de sok memoriat hasznalo) algoritmus kizarasa miatt tettek bele a feltetelt - es valoszinuleg mert ettol lett szep es otletet igenylo a feladat
) -
EQMontoya
veterán
válasz
DrojDtroll
#5181
üzenetére
Ez a kérdés hogyan merült fel?

-
axioma
veterán
válasz
DrojDtroll
#5159
üzenetére
Te kell karban tarts egy vektort, amit veremnek hasznalsz, vagy egy valtozot ahol visszafele lepeskor is adminisztralod a valtozast, vagy lehet akar minden elorefele lepesnel megszamolni...
Az algobol eleve kiesik egy info, eleg az a-kat szamolni, mert (ha jol vettem ki) x=y+z igy b kovetkezik, sot a koztes lepeseknel is tudod, mert egy index ugyis kell hogy hol tartasz a veremben, az pont jelzi az aktualis hosszt.
De ezt en nem feltetlen igy csinalnam... ha a kerdes algoritmikus es nem programozastechnikai. Eloszor is kevesebb lepes, ha a run-length kodolas alapjan me'sz (minden lepesben nem 1 db valamelyik karaktert teszel le, hanem 1-tol az adott betubol visszalevoig barmennyit a betuket valtogatva, a legelejen megengedheto de cask ott a 0 db).
Masreszt ez az n alatt a k tipikus esete (x alatt az y), es mivel iszonyat gyorsan nonek ezek a szamok, igy ha ki kell iratni, akar arra is lehet tamaszkodni, hogy bele fog ferni egy nagyobbacska int-be a bitenkenti abrazolassal... az int-ben meg tudod szamolni - persze csak ciklusban de a stringnel joval gyorsabban - a bitek szamat, es csak ami jo azt konvertalod a-b-re.)
Valamelyik pszeudot osszedobhatom, ha gondolod, de mindet inkabb nem. -
válasz
DrojDtroll
#5144
üzenetére
Egy rekurziv megoldas lehet, pszeudokodban:
szavak_listaja = ures_lista;
fuggveny generalj_szot(szotoredek, rendelkezesre_allo_a, rendelkezesre_allo_b) {
ha szotoredek hossza = x akkor add hozza a szavak_listaja-hoz szotoredeket;
egyebkent
{
ha rendelkezesre_allo_a > 0 akkor generalj_szot(szotoredek+"a", rendelkezesre_allo_a-1, rendelkezesre_allo_b);
ha rendelkezesre_allo_b > 0 akkor generalj_szot(szotoredek+"b", rendelkezesre_allo_a, rendelkezesre_allo_b-1);
}
}Ezt at lehet alakitani rekurzio nelkulire, ha ugy tartja kedved.
-
EQMontoya
veterán
válasz
DrojDtroll
#5141
üzenetére
FILE **fin;
vs.
fin=fopen("pakol.be", "r+");Túltoltad kicsit a csillagot.

A változókat típus szerint érdemesebb lenne külön sorba deklarálni, ez így nagyon takony.
Szerk:
int** ladak
vs.
for(i=0;i<ladak_szama;i++){
if(ladak(i)>max && ladak(i)!=jel){
max=ladak(i);
maxindex=i;
}
}Itt is egydimenziósként használod a **-ot.
Szerintem némileg fogalmi zavarban vagy a pointerekkel, azt érdemes lenne tisztázni, mielőtt nekiállsz őket így használni.
-
axioma
veterán
válasz
DrojDtroll
#5135
üzenetére
A temp azert nem nullazodik, mert a j ciklusvaltozo ellenere a magban a temp[i]-be irod a 0-t.
Innen meg ertheto a mukodes (az elozo szemet ottmarad, a rovidebb inputra raragad az elozo vege). -
EQMontoya
veterán
válasz
DrojDtroll
#5135
üzenetére
Rakd be akkor az egész kódot, aztán átnézem.

-
EQMontoya
veterán
válasz
DrojDtroll
#5133
üzenetére
Nullterminálni ki fogja a stringet?

Btw a !isalpha(..) mire kell? Ha az isdigit() teljesül, akkor számjegy és kész. -
Jester01
veterán
válasz
DrojDtroll
#5130
üzenetére
Szerintem már ő is tudja

-
#34322688
törölt tag
válasz
DrojDtroll
#5086
üzenetére
Én pl a különböző parancsokra értem. printf-Console.WriteLine-stb.. ezekre értem, hogy nem ugyanaz, vagy igen? Meg nem tudom miért a C.B-ot erőltetik, amikor a V.S-is ingyenes.
-
sssirius
tag
válasz
DrojDtroll
#5080
üzenetére
Akkor jó esélyed van, hogy EOF-ot kapsz a végén.
-
sssirius
tag
válasz
DrojDtroll
#5078
üzenetére
Szia!
Ha interaktív program és a felhasználók csápolják be az inputot, akkor érdemes lehet bevezetni egy termináló karaktert/sort és egy while ciklusban figyelni, hogy megegyezik-e azzal.
Ha program adja be, akkor meg lehet próbálni EOF-ot keresni, pl. a getline függvény alkalmas lehet ebben az esetben.Ha ezek nem jönnek be, akkor a non-blocking read-et javaslom egy jól belőtt timeout-tal.
-
camillus
tag
válasz
DrojDtroll
#5069
üzenetére
Nem ez más lesz, de jobban utánanézve inkább nem kísérletezgetek.
-
sssirius
tag
válasz
DrojDtroll
#5049
üzenetére
A termios.h headerben van definiálva a termios struktúra amin keresztül be tudsz állítani mindenfélét.
-
alapz@j
tag
válasz
DrojDtroll
#5042
üzenetére
Valaki kijavít, ha tévednék, de szerintem sima getch() (már) nincs. Van a conio.h-s _getch() és van a stdio.h-s getchar().
-
alapz@j
tag
válasz
DrojDtroll
#5040
üzenetére
Nem befolyásol semmit, ez a függvény neve:
#include <conio.h>
int _getch( void );
wint_t _getwch( void ); -
Jester01
veterán
válasz
DrojDtroll
#5038
üzenetére
Ah, hát ez egyszerűbb

-
Jester01
veterán
válasz
DrojDtroll
#5036
üzenetére
Elvileg a SetConsoleMode függvénnyel ki kell kapcsolni az ENABLE_LINE_INPUT beállítást. De nem tudom, nekem linuxom van

-
Jester01
veterán
válasz
DrojDtroll
#5034
üzenetére
Szabvány C-ben nem, csak rendszerfüggő módon.
-
tototos
addikt
válasz
DrojDtroll
#5010
üzenetére
Hát mekkora méretet gondolsz a tömbnek? A foglalások számát nem közli a feladat így nem tudod mekkora tömbre van szükséged. A struktúra meg sokkal átláthatóbbá teszi a kódot, mint ha külön tömbben tárolod az összes adatot. Tehát ha már tömbbel szeretnéd megoldani akkor is inkább egy struktúra tömb a javasolt szerintem,
-
Gekkocy
csendes tag
válasz
DrojDtroll
#5003
üzenetére
Nagyon szépen köszönöm a segítséget!
-
alapz@j
tag
válasz
DrojDtroll
#4996
üzenetére
Jól megbonyolítottad a dupla tömbökkel

char string[] ="1 22 333 444 5555";
char *pch = strtok(string," ");
while (pch != NULL) {
printf("%i\n", atoi(pch));
pch = strtok(NULL, " ");
}vagy ha már belelendültem:
char *string = "1 22 333 4444 5555";
size_t i = strlen(string);
while (--i) if (string[i] == ' ') printf("%i\n", atoi(string + i));ez utóbbi jobb is, mert a strtok-al ellentétben nem módosítja a stringedet.
-
alapz@j
tag
válasz
DrojDtroll
#4988
üzenetére
char *string = "2 31 457";
int i1, i2, i3;
sscanf(string, "%d %d %d", &i1, &i2, &i3); -
don_peter
senior tag
válasz
DrojDtroll
#4993
üzenetére
Nah akkor megoldódott.
Egyébként egy for() és if() feltéttel meg lehet oldani. -
DrojDtroll
veterán
válasz
DrojDtroll
#4992
üzenetére
Irtam ra sajat fugvenyt ami szetszedi innentol mar minden megy az atoi()-val.

-
don_peter
senior tag
válasz
DrojDtroll
#4990
üzenetére
Tördeld el a stringet a szóközöknél és utána az eldarabolt stringeket már át tudod alakítani az atoi() függvénnyel.
-
don_peter
senior tag
válasz
DrojDtroll
#4988
üzenetére
atio() függvény lesz a barátod

-
bucsupeti
senior tag
válasz
DrojDtroll
#4966
üzenetére
bash scriptben akarod megtenni?
![;]](//cdn.rios.hu/dl/s/v1.gif)
-
Karma
félisten
válasz
DrojDtroll
#4962
üzenetére
Hibakeresésnél legközelebb másold ide a pontos hibaüzenetet, és hogy fordításkor vagy futáskor történt a hiba.
Egyébként szerintem az a baj, hogy egy 100^4 elemű inttömb bő 400 MB memória lenne, amit stacken nem lehet elhelyezni...
Ha ekkora memóriaterület kell, nem úszod meg a heap használatát (malloc/free), de sokkal célravezetőbb, ha újragondolod a feladatod. Több mint valószínű, hogy nincs szükséged az egész tömbre a memóriában.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Amazfit Helio Strap – képernyőmentesen
- Gumi és felni topik
- Fordulat: időben startol S26+, nézd meg, milyen lesz!
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Elektromos autók - motorok
- Azonnali alaplapos kérdések órája
- Windows 11
- Arc Raiders
- Bluetooth hangszórók
- Lexus, Toyota topik
- További aktív témák...
- L13 Yoga Gen4 13.3" FHD+ IPS érintő Ryzen 5 PRO 7530U 16GB 256GB NVMe ujjlolv IR kam gar
- Asus ROG Flow X13 GV301QC ALAPLAPHIBÁS laptop, javítandó vagy alkatrésznek
- Gigabyte G6X 9KG-43HU854SD (Bontatlan)
- Dell Latitude 7300 Touch 8 gen I5, 16GB RAM, Vil. HUN BILL. 12 HÓ GAR.
- Egyedi PC összerakás személyre szabott konfiguráció, gyors határidővel!
- Azonnali készpénzes Sony Playstation 5 lemezes és digitális felvásárlás személyesen/csomagküldéssel
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3904, 100% Akksi
- LÉZEREZÉS! külföldi billentyűzet magyarra kb. 20-30p alatt!
- HIBÁTLAN iPhone 15 Pro Max 256GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3495, 100% Akkumulátor
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest
Ez jó kezdőknek is? Nem igényel más nyelv ismeretét?




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

