- Megújult mobilos felület, fórumos ráncfelvarrás a PROHARDVER! lapcsaládon
- Eladhatatlannak ítélt CPU-k eladásával javult az Intel node-ok kihozatala
- Az AI átformálja a Peugeot modelljeit is
- Ráműthető a Linux PlayStation 5-re, de csak egy boot erejéig
- Mindenféle környezeti behatásnak ellenállnak az ASUS új TUF tápjai
- Mindenféle környezeti behatásnak ellenállnak az ASUS új TUF tápjai
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Milyen alaplapot vegyek?
- Samsung LCD és LED TV-k
- Azonnali VGA-s kérdések órája
- Apple MacBook
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Apple asztali gépek
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
-
5100 - 5001
6397 - 6301 6300 - 6201 6200 - 6101 6100 - 6001 6000 - 5901 5900 - 5801 5800 - 5701 5700 - 5601 5600 - 5501 5500 - 5401 5400 - 5301 5300 - 5201 5200 - 5101 5100 - 5001 5000 - 4901 4900 - 4801 4800 - 4701 4700 - 4601 4600 - 4501 4500 - 4401 4400 - 4301 4300 - 4201 4200 - 4101 4100 - 4001 4000 - 2001 2000 - 1
-
Fórumok
PROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
-
Frissítve: 2014-04-25 14:12 Téma összefoglaló
Új hozzászólás Aktív témák
-
CPT.Pirk
Jómunkásember
EM783-as prociról van szó, ami kb. az nxp 11-es szériás procijainak felel meg, kiegészítve a mérő résszel. Mi is próbáltuk az expresso-t, de nem találtuk meg benne ezt a procit, pedig 2012 decembere óta támogatja. Egyébként java részt nuvotonban nyomulunk, coocox alatt.
Szóval azt mondod, hogy feltétlen lib-el kell kezdődjön a lib? Kíváncsi leszek rá mire jutunk hétfőn ezzel.

buherton: sajnos nem Linux alatt dolgozunk, de a coocoxnak nincs is Linuxos verziója, hiába Eclipse alapú. A linkernél -DEM783.lib lesz a paraméter, amit átad a környezet. Próbáltuk megadni neki a teljes utat kézzel is több módon, de minden esetben az volt, hogy nem találja.
-
bucsupeti
senior tag
két egymásba ágyazott for ciklust használj. egyet a mátrix sorainak, másikat az oszlopok indexelésére...
pl kereszt pszeudókódban:
számolj 0-tól 20-ig (x)
számolj 0- tól 20-ig (y)
ha x=11 vagy y=11 akkor kiír("*")szerintem itt a "nehéz" az hogy hogyan rajzold ki az adott mintát. Ehhez jó ha lerajzolod a mintát, esetleg leírod egymás után sorról sorra a kiírandó karakterpozíciókat a mátrixmban.
ha kell még segítség szólj!
-
#34322688
törölt tag
Segítség kellene egy feladat megoldására.
Mátrix kiírása!
Olyan porogramot kell készíteni.mely a képernyő 21 sorszor 21 oszlopos területén csillagkarakter felhasználásával megjelentet:
1, Egy keresztet a 11.sor és 11.oszlop feltöltésével
2, A főátlót ( bal felső sorokból a jobb alsóba menőt)
3, A mellékátlót (a másik átlót)
4, Egyszerre mindkét átlót, azaz egy x-et
Kezdőként Számomra ez teljesen érthetetlen. Valaki aki jártasabb ezen a területen, ötlete.
Előre is köszönöm. -
tototos
addikt
-
buherton
őstag
Jól megkavarod a dolgot.
Nem ismerem a CooCox-ot (LPCexpresso-t használok), de projekt mappában van a lib és h? Abszolút vagy relatív path? Utóbbinál jó a változó? Jogok jól vannak beállítva (Linuxon). Ezek voltak a basic kérdések.
Advanced level: gondolom itt van is console felület, ahol kiírja, hogy a linker-t milyen arugmentumokkal hívja meg. Itt megnézd meg, hogy a lib és h (nem tudom melyiknek kellene ott lennie) benne van-e. Ha benne van, akkor passz, ha nincs akkor itt a gond. Továbbá próbálkoznék azzal is, hogy kimásolnám az egész sort és kézileg próbálnám összelinkelni. Ha eddig semmi sem volt jó, akkor indulhat a szarakodás.
Munka (nem ócó a Keil)? Milyen NXP? Mit csinálsz ezzel? Miért nem arm-none-eabi? Bár ha fontos a kód méret, akkor megértem.
-
CPT.Pirk
Jómunkásember
Talán itt a legaktuálisabb a kérdésem. Van egy problémám:
CooCox IDE (ARM-es fejlesztő környezet) alatt egy hivatalosan nem támogatott nxp procit kell életre keltenem, amiben van egy különleges mérő rész, aminek nincs nyilvános C forrása csak egy header fájl, meg .lib formában a forrás.
Ez a .lib library a KEIL környezet alá lett csinálva és ha beadom a "link library" menüben a coocoxnak, akkor csak annyit mond rá, hogy nem nem található. Szerintetek mit lehet ezzel kezdeni? A boot és egyéb fájlokat már bereszeltem, kód is fordul, ez lenne már csak vissza. -
bbenjamin
csendes tag
-
sssirius
tag
-
bbenjamin
csendes tag
Még ismerkedem a C-vel, az alábbi feladatot kellett megvalositanom.
Valamiért nem tudom kilistázni a feltöltés után a structba eltárolt adatokat,
mindenhol null -t kapok.
Hibaüzenet, figyelmezetetés nuku.
Órák óta nem tudok rájönni miért nem menti el, vagy miért nem működik a kiiratás :/#include <stdio.h>
#define MAX_KARAKTER 40
#define MAX_ARUK 30
#define MAX_PARTNEREK 30
#define MAX_SZAMLAK 100
#define MAX_TETELEK 30
struct tetel_adat {
int vonalkod;
int mennyiseg;
};
struct tetel_adat tetelbekeres() {
struct tetel_adat tetel;
printf(" Vonalkod: ");
scanf("%d", &tetel.vonalkod);
printf(" Mennyiseg: ");
scanf("%d", &tetel.mennyiseg);
return tetel;
};
struct tetelek {
struct tetel_adat tetel[MAX_TETELEK];
};
struct tetelek tetelekbekeres(int maxtetel) {
int i; struct tetelek lmk;
for(i=0;i<maxtetel; i++) {
printf(" %d. tetel adatait kerem:\n", i+1);
lmk.tetel = tetelbekeres();
}
return lmk;
};
struct szamla_adat {
int szamlaszam; int partnerkod;
int datum; int tetelekszama;
struct tetelek tetelek;
};
struct szamla_adat szamlabekeres() {
struct szamla_adat szl;
printf(" Szamlaszam (int): ");
scanf("%d", &szl.szamlaszam);
printf(" Partnerkod (int): ");
scanf("%d", &szl.partnerkod);
printf(" Datum (timestamp): ");
scanf("%d", &szl.datum);
do {
printf(" Tetelek szama: ");
scanf("%d", &szl.tetelekszama);
} while (szl.tetelekszama<0 || szl.tetelekszama>MAX_TETELEK);
szl.tetelek=tetelekbekeres(szl.tetelekszama);
return szl;
};
struct szamlak {
struct szamla_adat szamla[MAX_SZAMLAK];
};
struct szamlak szamlakbekerese(int maxdb) {
int i; struct szamlak lsz;
for(i=0;i<maxdb; i++) {
printf("%d. szamla adatait kerem:\n", i+1);
lsz.szamla=szamlabekeres();
}
return lsz;
};
struct partner {
int partnerkod; char nev[MAX_KARAKTER];
char cim[MAX_KARAKTER]; int telefonszam;
};
struct partner partnerbekeres() {
struct partner pr;
printf(" Partnerkodja (int): ");
scanf("%d", &pr.partnerkod);
printf(" Neve (max 40 karakter): ");
scanf("%s", pr.nev);
printf(" Cime (max 40 karakter): ");
scanf("%s", pr.cim);
printf(" Telefonszama (csak szam): ");
scanf("%d", &pr.telefonszam);
return pr;
};
struct partnerek {
struct partner partner[MAX_PARTNEREK];
};
struct partnerek partnerekbekerese(int maxdb) {
int i; struct partnerek lp;
for(i=0;i<maxdb;i++) {
printf("%d. partner adatait kerem:\n", i+1);
lp.partner=partnerbekeres();
}
return lp;
};
struct aru {
int vonalkod; char leiras[MAX_KARAKTER];
int ar; int keszlet;
};
struct aru arubekeres() {
struct aru la;
printf(" Vonalkodja (int): ");
scanf("%d", &la.vonalkod);
printf(" Leirasa (max 40 karakter): ");
scanf("%s", la.leiras);
printf(" Ara (Ft): ");
scanf("%d", &la.ar);
printf(" Keszlet (db): ");
scanf("%d", &la.keszlet);
printf("\n");
return la;
};
struct aruk {
struct aru aru[MAX_ARUK];
};
struct aruk arukbekeres(int maxdb) {
int i;struct aruk lak;
for(i=0;i<maxdb;i++) {
printf("%d. aru:\n", i+1);
lak.aru=arubekeres();
}
return lak;
};
struct raktar {
int max_aru; int max_partner;
int max_szamla;
struct aruk aruk;
struct partnerek partnerek;
struct szamlak szamlak;
};
struct raktar raktarbekero() {
struct raktar raktar;
int j=0;
do {
if(j) printf("A szamnak 0 es %d koze kell esnie!\n", MAX_ARUK);
printf("Hany arut szeretnenk feltolteni? ");
scanf("%d", &raktar.max_aru); j++;
} while(raktar.max_aru<0 || raktar.max_aru>MAX_ARUK);
raktar.aruk=arukbekeres(raktar.max_aru);
j=0;
do {
if(j) printf("A szamnak 0 es %d koze kell esnie!\n", MAX_PARTNEREK);
printf("\nHany partnert szeretnenk feltolteni? ");
scanf("%d", &raktar.max_partner); j++;
} while(raktar.max_partner<0 || raktar.max_partner>MAX_PARTNEREK);
raktar.partnerek=partnerekbekerese(raktar.max_partner);
j=0;
do {
if(j) printf("A szamnak 0 es %d koze kell esnie\n", MAX_SZAMLAK);
printf("\nHany szamlat szeretnenk feltolteni? ");
scanf("%d", &raktar.max_szamla); j++;
} while(raktar.max_szamla<0 || raktar.max_szamla>MAX_SZAMLAK);
raktar.szamlak=szamlakbekerese(raktar.max_szamla);
};
/* PROGRAM KILISTAZO RESZE */
void tetelkiiratas(struct tetel_adat tetel) {
printf("\t Vonalkod: %d\n", tetel.vonalkod);
printf("\n Mennyiseg: %d\n", tetel.mennyiseg);
}
void tetelekkiiratas(struct tetelek tetelek, int maxdb) {
int i; for(i=0;i<maxdb;i++) tetelkiiratas(tetelek.tetel);
}
void szamlakiiratas(struct szamla_adat szamla) {
printf("%d. szamu szamla adatai:\n", szamla.szamlaszam);
printf(" Partnerkod: %d\n", szamla.partnerkod);
printf(" Datum: %d\n", szamla.datum);
printf(" Tetelek:\n");
tetelekkiiratas(szamla.tetelek, szamla.tetelekszama);
}
void szamlakkiiratas(struct szamlak szamlak, int maxdb) {
int i; for(i=0;i<maxdb; i++) szamlakiiratas(szamlak.szamla);
}
void partnerkiiratas(struct partner partner) {
printf("%d. kodu partner adatai:\n", partner.partnerkod);
printf(" Neve: %s\n", partner.nev);
printf(" Cime: %s\n", partner.cim);
printf(" Telefonszama: %d\n", partner.telefonszam);
}
void partnerekkiiratas(struct partnerek partnerek, int maxdb) {
int i; for(i=0;i<maxdb;i++) partnerkiiratas(partnerek.partner);
}
void arukiiratas(struct aru aru) {
printf("%d kodu aru adatai:\n", aru.vonalkod);
printf(" Leirasa: %s\n", aru.leiras);
printf(" Ara: %d,-\n", aru.ar);
printf(" Keszlet: %d (db)\n", aru.keszlet);
}
void arukkiiratas(struct aruk aruk, int maxdb) {
int i; for(i=0;i<maxdb;i++) arukiiratas(aruk.aru);
}
void raktarkiiro(struct raktar raktar) {
printf("\nARUK KILISTAZASA (%d): \n", raktar.max_aru);
arukkiiratas(raktar.aruk, raktar.max_aru);
printf("\nPARTNEREK KILISTAZASA: \n");
partnerekkiiratas(raktar.partnerek, raktar.max_partner);
printf("\nSZAMLAK KILISTAZASA: \n");
szamlakkiiratas(raktar.szamlak, raktar.max_szamla);
}
/* --------------------------------------------------- */
int main() {
struct raktar raktar;
raktar = raktarbekero();
raktarkiiro(raktar);
return 0;
} -
#34322688
törölt tag
-
mepet
addikt
Ha olvasmányos, érthető könyvet keresel, ezt tudom ajánlani:
Kochan, Stephen G.: Programfejlesztés C nyelvenOnline irodalmat pedig az 1. hsz-ben, és a google segítségét igénybevéve találhatsz.
-
#34322688
törölt tag
Nem találtam semmi értelmes könyvet, leírást ami érthetően magyarázná a c-programozás alapjait. Mindegyik általam olvasott forrás eléggé számomra érthetetlenül fogalmaz. Tud valaki valami általa is használt könyvet, irományt ajánlani ezen a területen? Alap c- olvasmányra gondolok.
-
dabadab
titán
-
#34322688
törölt tag
É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.
-
DrojDtroll
veterán
-
#34322688
törölt tag
Sziasztok.
Jelentkeztem egy programozói suliba, ahol a c-kezdő nyelvhez a CodeBlocksot ajánlják. Idáig én a Visual Studioval gyakoroltam, a C#-pot. Akkor ezekszerint kezdhetek előről mindent? Újra elkezdeni tanulni a különböző parancsokat stb? -
dabadab
titán
-
alapz@j
tag
Banális kérdés, de valahogy nem egyértelmű számomra: a wide char-okból álló string lezárója a 0x0000?
-
DrojDtroll
veterán
-
sssirius
tag
Akkor jó esélyed van, hogy EOF-ot kapsz a végén.
-
DrojDtroll
veterán
-
sssirius
tag
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.
-
DrojDtroll
veterán
Hogyan lehet úgy bekérni x sort, vagy x számot az stdin-ről, hogy nem tudjuk mikor lesz vége a bemenetnek?
-
Zsolt1
tag
-
Zsolt1
tag
Sziasztok!
Egy kis segítséget szeretnék kérni kétdimenziós tömb átadása függvénynek témakörben. Gyakorlaton sajnos csak 1 dimenziós tömbbel csináltuk és sajnos úgy nem működik.Az egydimenziósnál:
void beolv(int*); //main() fv. előtt
beolv(tomb); //main() fv.-ben: tömb átadása a beolv fv.-nek
void beolv(int *t) {... //main() fv. utáni kifejtésA kétdimenziósnál (ami nem működik):
void ujadat(int*,char*,char*); //három tömböt adok majd át neki, 1 db egydimenziósat és 2 db kétdimenziósat
ujadat(azontomb,tipus,rendszam);
void ujadat(int *tomb, char *chartomb1, char *chartomb2) {...A codeblocks eltérő típusú pointerekre panaszkodik és gondolom is, hogy miért, mert kétdim. tömbnél a tomb és a tomb[] nem ugyan arra a címre mutat csak nem tudom, hogy hogy kéne megoldani azt, hogy az összesnél jó legyen az átadás.
Találtam egy ilyet: [link] és egy ilyet is:[link] ezek alapján így néz ki a kétdimenziósnál a 3. sor:
void ujadat(int *tomb, char chartomb1[][HOSSZ], char chartomb2[][HOSSZ2]) {...
Ezzel már sokkal kevesebb hibát dob a CB, de még így is eltérő típusú pointereket ír.Ha valaki tudna benne segíteni azt nagyon megköszönném, mert elég sok helyen megnéztem már és szinte sehol sem írnak ezzel kapcsolatban semmit, illetve ha írnak is, akkor sem működik.

-
kozicsd
tag
Sziasztok!
Egy beadandó feladatot kell készítenem, konkrétan egy RSA kriptorendszert C-ben. Kisebb számokra működik minden, viszont nagyobbaknál már gondok vannak. A tanár a GMP-t javasolta. Hatalmas erőfeszítés árán sikerült feltelepíteni (windows, codeblocks), de itt meg is állt a tudomány.
A sztorihoz hozzátartozik, hogy sajnos a programozás a mi szakunkon "másodlagos", tehát nem vagyok túl jó benne.
A kérdésem az lenne, hogy hogyan tovább, hogyan tudnám módosítani a programot, ha használom a gmp.h-t?
Válaszotokat előre is köszönöm
-
DrojDtroll
veterán
-
camillus
tag
Nem ez más lesz, de jobban utánanézve inkább nem kísérletezgetek.
-
sssirius
tag
C, C++, C# is van (és még amiről nem tudok...)
A C++-nak teljesen C az alapja, csak megjelenik számos új lehetőség, többek között az objektumelvű programozáshoz szükséges típusok/eljárások/technológiák. Gyakorlatilag a C nyelv bővítése.
A C# már később jött létre, ez is sokat merít a C-ből, illetve C++-ból (a C bizonyos értelemben a legtöbb ma ismert prog.nyelv alapja) -
#34322688
törölt tag
-
DrojDtroll
veterán
-
sssirius
tag
-
camillus
tag
Hi!
Ha nem írom be a forrásba, hogy milyen fejléc kell, akkor azt auto kiegészíti a gcc? Egyszer valami kiamardt az include után, dobott néhány warning-ot, de a progival nem volt semmi runtime error.
-
#34322688
törölt tag
Sziasztok.
Letöltöttem a Visual Studio 2012-tőt. Olyan kérdésem lenne, hogyan tudom beállítani így:A Visual Studio elindításakor tegyük a következőt:
1. Tools menü -> Settings
2. A Basic Settings helyett válasszuk az Expert Settings beállítást!
Nem találom, hol tudom beállítani. Nekem tools menü-options van, viszont itt nem található ez a beállítás.
Reiter István
C# programozás
lépésről lépésre , ennek a könyvnek az alapján szeretném kipróbálni. Igaz itt 2010-programot használ, lehet hogy csak abban kell?
Remélem valamennyire érthető voltam, köszi a segítséget. -
Cucuska2
addikt
Én egy állapotgépet csinálnék, a következő állapotokkal:
t, te, m, mi, miz, mizu, és "üres". Ha t-t kap, akkor elkezd figyelni, hogy e jön-e, ha nem, printf("t");, és ha pedig kap egy t-t, utána pedig e-t, akkor azokat nem írja ki, hanem csak simán kiküldi azt, amit akarsz helyette.
Ezt bedobod egy while((c = getchar) != EOF) ciklusba, meg csinálsz az állapotgépnek egy switch-case szerkezetet, osz' kalap-kabát. -
sssirius
tag
Szia!
Én a helyedben a quicksearch algoritmust használnám: link
Ha megtalálod a kihelyettesítendő szöveget, jelenleg "én" és "mizu", akkor strcpy() függvénnyel összemásolod egy újabb char*-ba a szöveg előtti részt + helyettesítést + szöveg utáni részt.
De ha úgy jobban tetszik, akkor memset-el helyben cserélheted.Szerk.: Ha nem akarsz semmi extrát implementálni, akkor van valamelyik header-ben strstr() függvény, ami segíthet.
-
emvy
félisten
-
Karma
félisten
-
lotuska
tag
sziasztok, adott az alabbi feladat:
Írjunk egy programot, amely a szöveg szavait adott hozzárendelési szabály szerint átalakítja:
pl. szöveg: “te lány, én meg fiúna mizu, mizu, mizu?”
a szabály: “te”->en “mizu”->mu
az atalakított szöveg: en lány, én meg fiú
na mu, mu, mu?
a kerdesem, az hogyan kellene az alabbi kodot valtoztassam, hogy mukodjon?
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
void main()
{
char string[255];
char uj[255];
char egy[2];
char ketto[2];
char c;
int db;
int i = 0;
int vege;
printf("kerem a szoveget\n");
gets(string);
vege = strlen(string);
uj =" ";
printf("%s", string[0]);
egy = "en";
ketto = "mu";
db = 0;
while (string[i] != '\0')
{
if ((string[i] == 't') && (string[i + 1] == 'e'))
{
strncat(uj, egy, 2);
db = 1;
}
if ((string[i] == 'm') && (string[i + 1] == 'i') && (string[i + 2] == 'z') && (string[i + 3] == 'u'))
{
strncat(uj, ketto, 2);
db = 1;
}
if (db = 0)
{
c = string[i];
strncat(uj, c, 1);
}
i++;
db = 0;
}
vege = strlen(uj);
strncopy(string, uj, vege);
printf("Az uj szoveg: %s", string);
getchar();
}[ Módosította: Karma ] -
sssirius
tag
Nem mondanám. A kolléga amit írt szerintem arra vonatkozik, hogy a VS sok mindent megcsinál helyetted. Persze abból is lehet profitálni, ha azt neked kell megcsinálnod, hiszen tanulsz belőle. Ha a C:
jobban tetszik használd azt, majd kiderül, hogy elég-e mindaz amit nyújt... szerintem. -
#34322688
törölt tag
-
alapz@j
tag
-
#34322688
törölt tag
Köszönöm mindenkinek az infót.
-
sssirius
tag
-
sztanozs
veterán
-
emvy
félisten
-
sssirius
tag
Programozást tekintve semmi különbség, ahogy notepad-ben is nyugodtan tudsz programozni. Egyéb kényelmi szolgáltatásokban szerintem a Visual Studio többet nyújt. Lévén, hogy fizetős ez el is várható.
Valójában mindenki saját szája íze szeirint eldöntheti, hogy miben programoz. Ha lehetőséged van mindkettőt kipróbálni, akkor szerintem tedd azt és egy hét használat után el tudod dönteni melyik jön be jobban.
Pl. én utoljára VS-ben grafikus alkalmazást csináltam (DirectX/OpenGL). Nem tudom, hogy a Code:
locks milyen segítséget tudott volna nyújtani benne, de a VS elég jól hozzájárult. -
#34322688
törölt tag
Nagy különbség van a Code Blocks és a Visual Studio között, programozást tekintve? Vagy a mit mondjuk a visuallal elkészítenek, az lehetséges code blockkal is?
-
DrojDtroll
veterán
-
sssirius
tag
A termios.h headerben van definiálva a termios struktúra amin keresztül be tudsz állítani mindenfélét.
-
DrojDtroll
veterán
A soros port kezeléséhez tudtok valami jó anyagot?
-
kispx
addikt
> "Valaki tudna ezzel kapcsolatos könyvet?"
A parancssorban lévő betűk nagyításával kapcsolatban?
Ha C nyelvről szeretnél könyvet akkor a téma összefoglalóban van egy pár felsorolva.
Ha az IDE használatáról keresel akkor arról csak egy wiki tudok mutatni.
-
#34322688
törölt tag
-
kispx
addikt
-
#34322688
törölt tag
Sziasztok.
Code Blocks programot kezdtem használni. Abban kérnék segítséget, hogyan lehet az elkészült program futatását jelző ablakban megjelenő szöveg nagyitását megoldani? Mert eléggé picik valamiért, és ezáltal olvashatatlan. -
DrojDtroll
veterán
kipróbáltam:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int ch;
ch=getchar();
printf("\n%c", ch);
ch=_getch();
printf("\n%c", ch);
ch=getch();
printf("\n%c", ch);
return 0;
}A getch() és a _getch() ugyan azt csinálta, beolvasta a karakter az Enter lenyomása nélkül, amíg a getchar() csak az Enter lenyomásával.
-
alapz@j
tag
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().
-
DrojDtroll
veterán
-
alapz@j
tag
Nem befolyásol semmit, ez a függvény neve:
#include <conio.h>
int _getch( void );
wint_t _getwch( void ); -
DrojDtroll
veterán
-
Jester01
veterán
Ah, hát ez egyszerűbb

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

-
DrojDtroll
veterán
-
Jester01
veterán
Szabvány C-ben nem, csak rendszerfüggő módon.
-
DrojDtroll
veterán
Lehetséges C-ben úgy beolvasni egy karaktert, vagy billentyűlenyomást, hogy nem kell hozzá Entert ütni?
-
tototos
addikt
-
bucsupeti
senior tag
-
emvy
félisten
Akinek a ternary operator bántja a szemét, az szerintem menjen el kapálni

-
alapz@j
tag
-
axioma
veterán
Hat, amint nem magadnak hanem csapatban es/vagy kesobb atadassal dolgozol, ezek a szep megoldasok adjak a karbantarthatatlansagot. Persze jo neked, ha ezzel akarsz kikerulhetetlen lenni a cegnel, de me'g akkor is, mielott azza valnal, velhetoleg egy projvez eszreveszi.
[Az meg hogy lenne mar logikus matematikailag, hogy az 1 a paros jele, 2 a paratlane???]
Persze nem arrol van szo, hogy ezt a ket sort nem kutya kotelessege barmely programozonak megfejteni tudni, hanem arrol, hogy ezt a stilust ha kicsit is nagyobb meretben is megtartod, akkor jon az hogy jol mukodik de egy rossz kod. Es most arrol nem is beszeltunk, hogy beszedesebb konstansoknal kisebb az osszekeveresi lehetoseg (ha meg hiba soran - pl. atkuldod masik gepre - modosulhat is, akkor nem art ne'mi Hamming-tavolsag, nalunk a C-sek kod.szab.-aban benne van hogy minden konstansra azt is alkalmazni kell).
Java-ban meg irtam en mar prog.verseny feladatokat is, egy darab main-nel, nem csak objektum-hegyek eseten alkalmazhato
[jo hat nem volt idealis valasztas, de abban voltam a leggyakorlottabb, es kezrealloan telepitett kornyezet is ahhoz volt]. -
alapz@j
tag
Persze szubjektív, de számomra a C éppen az ehhez hasonló okos, elegáns, tömör és hatékony megoldásokat jelenti, aminek része az interfész átgondolt felépítése is. Az e() fgv. éppen azért tud ilyen jól működni, mert az általa visszaadott értékek párhuzamban vannak a megoldás matematikai összefüggéseivel.
Ha Javában írnám, tuti én is meghívnék benne 5 Factory-t, 3 Managert-t és 4 Providert, miközben Hibernate-el pakolnám relációs adatbázisba a közben keletkező objektumok százait

-
axioma
veterán
Nem is a ternary a problemas nekem (bar egyes kodolasi szabvanyok tiltjak), hanem az hogy kihasznalod az osszefuggest. Ha ezt irtad volna tomoritesnek:
return a == 0 ? 0 :
a%2==0 ? 1 : 2;
akkor nem szoltam volna, mert tomor, pont ugyanaz mint az if-ek, es barmikor az egeszek kicserelhetoek. Persze meg jobb lenne kulon definialni a konstansokat, es utana
return a == 0 ? RESULT_0 :
a%2==0 ? RESULT_EVEN : RESULT_ODD; -
alapz@j
tag
-
bucsupeti
senior tag
-
axioma
veterán
-
alapz@j
tag
Ma reggel eszembe jutott még egy tömörítési lehetőség, de már csak haladóknak

int e(unsigned int a) {
return a == 0 ? 0 : (a % 2) + 1;
} -
kingabo
őstag
-
bladegery
senior tag
-
bucsupeti
senior tag
Pontosan erre gondoltam. Azért kérték hogy bekérés és kiiratás a main()-ban legyen és ne a függvényben, mert így csupán az infót adja vissza a függvény csak a lényeget csinálja. Az hoyg azzal mit kezdesz (pl kiiratod) az már a függvénytől független lesz.
Itt már el is lehetne kezdeni az MVC modellről, de szerintem az még nem időszerű
A két kolléga tanácsait fogadd meg! Sokkal olvashatóbbá és egyszerűbbé lehet tenni a kódot ezekkel a módszerekkel.
-
alapz@j
tag
-
alapz@j
tag
Ha elfogadsz még egy tanácsot: próbálj meg átláthatóbb forrást írni, mert hosszabb programnál el fogsz veszni a kapcsos zárójelekben

#include<stdio.h>
int e(int a) {
if (a == 0) return 0;
return (a % 2) + 1;
}
int main() {
int a;
printf("Adj meg egy szamot: \n");
scanf("%d", &a);
switch (e(a)) {
case 1:
printf("A szam paros\n");
break;
case 2:
printf("A szam paratlan\n");
break;
case 0:
printf("A szam nulla\n");
break;
}
return 0;
} -
HAX
tag
Köszönöm ez nagy segítség volt!

Most már kicsit tisztább is lett a kép közben.
Így gondoltad ugye?
#include<stdio.h>
int e(int a)
{
if (a==0)
{
return 0;
} else if (a%2==0)
{
return 1;
} else { return 2;
}
}
int main()
{
int a;
printf("Adj meg egy szamot: \n");
scanf("%d", &a);
if (e(a)==1)
{
printf("A szam paros\n");
} else if (e(a)==2)
{
printf("A szam paratlan\n");
}else
{
printf("A szam nulla\n");
}
return 0;
} -
bucsupeti
senior tag
-
HAX
tag
Köszönöm a segítséget, kijavítottam a programot így már jó.

Ez a javított függvény:
int e(int a)
{
if (a==0)
{
printf("A szam nulla\n");
} else if (a%2==0)
{
printf("A szam paros\n");
} else { printf("A szam paratlan\n");
}
return 0;
}Igazad van a kiíratással kapcsolatban is, viszont ezt a függvényes, visszatérési értékes dolgot még nem teljesen tettem magamévá. Ha nem túl nagy teher akkor megtudnád nekem írni (vagy átírni) a feladatnak megfelelő függvényt? Ez valószínűleg jó támpont lenne nekem a többi feladathoz, inkább vizuális típus vagyok így könnyebben feltudnám fogni.

-
Jester01
veterán
Azért mondja a nullára, hogy páros, mivel az
A sorrend a rossz, először a nullát ellenőrizd és csak utána a paritást.Egyébként a feladatnak nem felel meg a programod, hiszen van kiírás a (csodaszép nevű) e függvényben is. A visszatérési érték pedig mindig nulla.
Annak sem sok értelme van, hogy else if (a%2!=0), hiszen az else már magában is ezt jelenti, tekintve, hogy az előző feltétel if (a%2==0) volt.
-
HAX
tag
Sziasztok.
Most ismerkedem a C nyelvvel, előtte nagyon-nagyon kezdő szinten foglalkoztam a C++ -al (Középiskolás szint
).
Sokat gyakorolgatok itthon, most egy olyan programot szeretnék írni ami bekér egy egész számot és megállapítja, hogy páros vagy páratlan vagy nulla. A feladat kiköti, hogy a bekérés és a kiíratás a main függvényben történjék de a működés lényegi része külön függvényben történjen. (És if szerkezettel kell megoldani.)
A programot megírtam, a páros és páratlan számokat jól megállapítja de a nullát megállapítani nem sikerül.
Amit tudni kell, hogy Ubuntu-n gedit szövegszerkesztőben dolgozom és a gcc -Wall -o paranccsal fordítok (terminálban), hibát nem is dob fel, csak a nullás értékre ugyanúgy páros értéket dob mint a páros számokra.
Itt a megoldásom:#include<stdio.h>
int e(int a)
{
if (a%2==0)
{
printf("A szam paros\n");
} else if (a%2!=0)
{
printf("A szam paratlan\n");
} else { printf("A szam nulla\n");
}
return 0;
}
int main()
{
int a;
printf("Adj meg egy szamot: \n");
scanf("%d", &a);
printf("%d", e(a));
return 0;
}Nem tudom mi lehet a hiba, remélem tudtok segíteni.

-
DrojDtroll
veterán
-
tototos
addikt
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,
-
DrojDtroll
veterán
A struktura nélküli, több tömbös, megoldás sokkal nehézkesebb?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define foglalasok_max_szama 100
#define cegnev_max_hossza 100
void foglalas();
void kiiras();
void kilep();
char ch, cegnev[foglalasok_max_szama][cegnev_max_hossza];
int ev[foglalasok_max_szama], honap[foglalasok_max_szama], nap[foglalasok_max_szama], kezdo_ora[foglalasok_max_szama], zaro_ora[foglalasok_max_szama];
int ossz_foglalas_szama=0, i;
int main()
{
int lehetoseg;
do{
printf("1\tUj foglalas\n");
printf("2\tMeglevok kiirasa\n");
printf("3\tKilepes\n");
scanf("%d", &lehetoseg);
if(lehetoseg==1){
foglalas();
}
if(lehetoseg==2){
kiiras();
}
}while(lehetoseg!=3);
kilep();
return 0;
}
void foglalas(){
printf("Uj foglalas\n");
}
void kiiras(){
printf("Eddigi foglalasok kiirasa\n");
}
void kilep(){
printf("A kilepeshez nyomja meg az Enter billentyut!\n");
getch(ch);
}Eddig ennyit írtam meg belőle, de nem hiszem hogy többhöz kedvem lesz már ma este.
Ez rossz irány, és elgondolás?
Ezeket azért kérdem, mert én is még csak most tanulok, és szerintem tudni, mit hogy lehet a legjobban megvalósítani.
-
tototos
addikt
-
DrojDtroll
veterán
Én úgy csinálnám, hogy létrehoznék mindegyik adatnak egy tömböt.
Amikor új időpontot kell felvenni akkor ideiglenesen eltárolnám változókban, majd megkeresném hova kell betenni a tömbbe. A tömböt, az adott megtalált helyről egyel jobbra tolnám. pl::
j=tömb utolsó elemének indexe
t[j]=t[j+1]
j--
Természetesen ez addig míg be nem akarunk szúrni.
Betesszük az adatokat a tömbbe.Kiíratáskor csak végigfutnák tömbökön, egyetlen ciklussal és printf()-el.
-
kine
csendes tag
Sziasztok!
Szeptember óta részképzésre járok az egyetemen informatika tanári szakon. A C programozási nyelvet tanítják.Néhány óra alatt elmondták az egész programozási nyelvet, pár dolgot önállóan kellene mehtanulni, majd feladták a következő beadandó feladatot.Egy művelődési ház nagytermét számos cég szeretné lefoglalni különböző rendezvényekre.
A foglaláskor meg kell adni a kért dátumot (év, hónap, nap) és időintervallumot (órától óráig), illetve a foglaló cég nevét. A cég nevén kívül minden bekért adat egész szám.
Írjunk egy programot, mely kiírja az alábbi választási lehetőségeket és megvalósítja a hozzájuk tartozó műveleteket:
1. Új foglalás
2. Eddigi foglalások kiírása
3. Vége
Amennyiben a felhasználó az 1. vagy 2. menüpontot választja, úgy a megfelelő művelet elvégzése után a fenti menü ismételten megjelenik.
1. Új foglalás művelet leírása
a. A foglalásokat a felhasználó tetszőleges időrendi sorrendben adhatja meg.
b. Minden adatbekéréskor egyértelműen tájékoztatni kell a felhasználót arról, hogy mit, hogyan kell beírnia.
c. Minden foglaláskor ellenőrizni kell, hogy szabad-e a terem a kívánt időintervallumban, és ha nem, akkor jelezni kell a felhasználónak, hogy nem sikerült a foglalás.
d. Minden foglalás után a foglalások kezdőidőpontjuk szerinti növekvő sorrendben kell legyenek eltárolva.
2. Eddigi foglalások kiírása művelet
Kiírja a terem teljes foglaltságát időrendi sorrendben. Ez esetben a hónapot ne számmal, hanem a nevével (pl. "januar") írja ki.
A főmenü három műveletét kötelezőképpen külön függvényekben kell megvalósítani, de természetesen több függvény is használható (sőt ajánlott).
A program semmilyen angol nyelvű, vagy a felhasználó által nem érthető hibajelzést nem írhat ki.Nem azt kérem, hogy írjátok meg helyettem a programot, hanem azt, hogy merre induljak, hogyan gondolkodjam. Komolyabb előismeretekkel nem rendelkezem, nem tanultam még ilyen szintű programozást.
Ha tudtok kérlek segítsetek. Előre is köszönöm! -
Gekkocy
csendes tag
Nagyon szépen köszönöm a segítséget!
-
DrojDtroll
veterán
Nekünk, most középsuli másodikban vannak ilyenek.
Természetesen én nem itt tartok, túl unalmasak a programozás órák.
Egyetemeken nagyon nehéz a programozás, pl.: Debrecenben?
-
Ereshkigal
őstag
-
DrojDtroll
veterán
-
axioma
veterán
Na de ez azert keves, hogy nem sikerult. Hol akadtal el? Beolvasas OK? Van M hosszu tombod? Ket egymasba agyazott ciklusod?
Amugy jo ez a feladat, mert eredetileg matekfeladatkent mind az M o"r vegigmegy (vagy egy o"r M-szer, mind1), es a megoldas a negyzetszamok (azoknak van csak paratlan darab pozitiv osztoja). Felbehagyva viszont az n felettiekre mar nem ennyire egyszeruen mondhato meg, hogy mi marad. -
Gekkocy
csendes tag
Sziasztok!
Szeretnék egy kis segítséget kérni a nálam okosabbaktól.
Kaptam egy kötelező programot amivel sajnos nem nagyon tudtam mit kezdeni. Többféle módon próbáltam megírni, de kevés sikerrel.A feladat:
Egy börtönben M börtönőr van és M zárt cella. A következő műveletsor szimulálása a feladat. Az 1.
őr minden ajtót kinyit. A 2. őr minden második ajtót bezár. A 3. őr minden 3. ajtót bezár, ha nyitva volt,
és kinyit, ha zárva volt. A többi őr hasonlóan cselekszik. Kérdés, mely cellák ajtaja van nyitva, miután
az n. őr végigment a cellákon?Bemenet
A bemenet két egész szám: a börtönőrök illetve cellák száma (0 < M � 1000) és a minket érdeklő őr
sorszáma (0<n<M) egy szóközzel elválasztva.
Aki tud kérem segítsen, akár tanácsokkal, kódrészletekkel. bármivel. Minden segítségnek nagyon örülök
A segítségeteket előre is köszönöm!
Új hozzászólás Aktív témák
-
5100 - 5001
6397 - 6301 6300 - 6201 6200 - 6101 6100 - 6001 6000 - 5901 5900 - 5801 5800 - 5701 5700 - 5601 5600 - 5501 5500 - 5401 5400 - 5301 5300 - 5201 5200 - 5101 5100 - 5001 5000 - 4901 4900 - 4801 4800 - 4701 4700 - 4601 4600 - 4501 4500 - 4401 4400 - 4301 4300 - 4201 4200 - 4101 4100 - 4001 4000 - 2001 2000 - 1
-
Fórumok
PROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- PlayStation 5
- LEGO klub
- Mindenféle környezeti behatásnak ellenállnak az ASUS új TUF tápjai
- Vigneau interaktív lokálblogja
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Milyen alaplapot vegyek?
- Formula-1
- Futás, futópályák
- Samsung LCD és LED TV-k
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- További aktív témák...
- PEACH Laminálógép és vágógép (6 in 1 Laminator & Trimmer PBP350 A4)
- szinteÚJ Dell Pro 14 Ultra 7 255U 32GB DDR5 512GB AI PC FHD+ 1 év garancia
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
- Lenovo L13 Core i3-10110U / 4GB DDR4
- Honor 400 Lite / 8/256GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

locks-ban is.








