- Luck Dragon: Asszociációs játék. :)
- Meggyi001: RTX 5060 - Az új népkártya?
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- eBay-es kütyük kis pénzért
- sziku69: Szólánc.
- pr1mzejEE: Viszlát CoD2, CoD4, CS:GO!
- Magga: PLEX: multimédia az egész lakásban
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Új hozzászólás Aktív témák
-
kiskatus
csendes tag
válasz
babyanigirl #714 üzenetére
Hali!
Debug_Build mappába raktam a két txt-t és működik. Nagyon köszönöm! -
válasz
babyanigirl #714 üzenetére
Hali!
Szívesen!
Egyetértek veled(amit kiskatusnak írtál, hogy egy könyvtárt létre kellene hozni, és abba pakolni mindent...
Fire.
-
válasz
babyanigirl #689 üzenetére
Hali!
Na csak meg lett. Olyan kód volt a forrásba, amit a PH is használ formázásra...
#include <stdio.h>
#include <stdlib.h>
//ha többször használod ugyanazt az értket, akkor azt célszerű így definiálni
//így megelőzhető az elgépelésekből adodó hibák
#define MAXCHAR 256
int CharCounter[MAXCHAR];
int main()
{
int i;
//a karakterek(így a betűk, számok, stb) egy byte-on tárolódnak az értékük 0-255 lehet
//ezért nem int típust, hanem unsigned char típust deklarálunk
unsigned char ch;
FILE * TextFileAsBinary;
FILE * OutputTextFile;
printf("Karakter-szamlalo\n\n");
//kinullázzuk a tömbünket. ez azonban jelen esetben teljesen felesleges
//mivel a fórdító automatikusan elvégzi ezt a feladatot. Természetesen ha
//többször kellene használni a tömböt, akkor szükséges lehet az "újranullázás"
for (i=0;i<MAXCHAR;CharCounter[i++]=0);
//minden fájl megnyitásakor kötelező a hibaellenőrzés!
if (!(TextFileAsBinary = fopen("input.txt","rb"))) {
fprintf(stderr,"Nem lehet megnyitni a fajlt...");
exit(-1);
}
//az fread függvény (jelen esetben) 1 darab, 1 byte hosszú adatot olvas be ch-be
//a korábban megnyitott "input.txt" fájlból
//a visszatérő értéke olvasás esetén mindig annyi, amennyit megadtunk neki
//jelen esetben 1. Ha nem ennyivel tér vissza, az azt jelenti, hogy a fájl végére értünk
//vagy valamilyen fájlolvasási hiba lépett fel
while (fread(&ch,1,1,TextFileAsBinary)==1) CharCounter[ch]++;
fclose(TextFileAsBinary);
//kimeneti fájl megnyitása, mindig kérdés nélkül felülírodik!
if (!(OutputTextFile = fopen("output.txt","wt"))) {
fprintf(stderr,"Nem lehet irni a fajlt...");
exit(-1);
}
//itt azért 16-ról indítom a ciklust, mert ez alatt többnyire karakteres vezérlőkódok
//találhatók(return, tab, sipolás, visszatörlés stb), amikor ezeket beleírnád a fájlba
//akkor furcsán mutatna
for (i=16;i<MAXCHAR;i++) {
//csak akkor írok fájlba, ha előfordult az 'i' karakter, ha nem akkor felesleges
if (CharCounter[i]) {
fprintf(OutputTextFile,"Gyakorisága a(z) %c karakternek: %d\n",i,CharCounter[i]);
}
}
fclose(OutputTextFile);
return 0;
}Fire.
-
válasz
babyanigirl #689 üzenetére
Hali!
Jó pár hozzáfűzni valóm lett volna, ezért inkább megírtam és a kommentekben elolvashatod.
Ha valami nem érthető, vagy más kérdésed is lenne, akkor nyugodtan írj, ahogy időm engedi válaszolok. (meg biztosan mások is)
Bocs de nem tudom berakni a kódot csak valami maszat lesz, még próbálkozom.
Fire.
-
Benmartin
senior tag
válasz
babyanigirl #680 üzenetére
szia!
először is deklarálj egy darab tömböt, mondjuk úgy 100 elemet, de még annyi sem kell, ezután olvasd be soronként az inputot (fgets), mert így kevesebb a függvényhívás, majd iterálj végig a sor minden karakterén, vond le belőlük a nullás karaktert és növeld a darab tömb ezen indexét (darab[sor[i]-'0']++).
majd kiírásnál, ahol nem nulla a tömb értéke hozzáadod az indexhez a nullás karaktert és kiíratod a tömb értékét.
valahogy így.
Ú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!
- Profi stratégiára vált a Galaxy S26
- Eldőlt, hogy lesz-e céges internetadó az EU-ban
- Kerékpárosok, bringások ide!
- PlayStation 3
- World of Tanks - MMO
- Samsung Galaxy A54 - türelemjáték
- Gitáros topic
- Milyen billentyűzetet vegyek?
- Samsung Galaxy Watch7 - kötelező kör
- Linux kezdőknek
- További aktív témák...
- AKCIÓ!!! GAMER PC: RYZEN 5 4500-5600X +RX 9060XT/9070/9070XT +16-64GB DDR4! GAR/SZÁMLA!!!
- AKCIÓ!!! DDR5 GAMER PC: RYZEN 5 8400F/9600X +RX 9060XT/9070/9070XT +16-64GB DDR5! GAR/SZÁMLA!!!
- Asus X299 TUF / Beszámítás OK!
- AKCIÓ!!! GAMER PC: RYZEN 7 5700/5800X +RX 9060XT/9070/9070XT +16-64GB DDR4! GAR/SZÁMLA!!!
- HP ChromeBox G2, olcsó pici gép internetezésre.
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3060, 94% Akkumulátor
- LG 25GR75FG - E-Sport Monitor - FHD 360Hz 1ms - NVIDIA Reflex + G-sync - AMD FreeSync - HDR 400
- HP Victus 15-fb1002AX - 15,6"FHD IPS - Ryzen 5 7535HS - 8GB - 512GB SSD - RTX 2050 - Win11
- HIBÁTLAN iPhone 13 mini 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3041, 96% Akkumulátor
- Lenovo LEGION Pro 5 / Pro 7, Lenovo Yoga Pro gépek (RTX 4060 / 4070 / 4080 / 4090)
Állásajánlatok
Cég: FOTC
Város: Budapest