- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- Gurulunk, WAZE?!
- bambano: Bambanő háza tája
- MasterDeeJay: Noname 1TB-os SATA SSD teszt
- Mr Dini: Mindent a StreamSharkról!
- Hieronymus: A németországi vasúthálózat
- ldave: New Game Blitz - 2025
Új hozzászólás Aktív témák
-
cellpeti
nagyúr
Sziasztok!
Elkezdtem olvasni az ajánlott irodalmat:
Brian W, Kernghan és Dennis M. Ritchie: A C programozási nyelv
Értehetően írja le meg minden,de a fejezetek végén vannak feladatok és azokat nem tudom,hogy kéne megoldani.
Ötltetem van,de lehet nagy baromság. Nincs ehhez valami CD a neten esetleg,nem tudja valaki,vagy megoldás?? -
TomBoy1986
veterán
válasz
TomBoy1986 #548 üzenetére
Már rájöttem mi volt a gond. Rossz típusú projektet nyitottam. Szóval tárgytalan.
-
TomBoy1986
veterán
Sziasztok!
Egy kis segítséget szeretnék kérni, mert új felületen kellene programoznom, de valahogy sehogy sem tudok rájönni arra, hogy miképp is kellene működésre bírni.
Szóval, Visual Studio 2008 Exp. Edit. feltelepítve. Szeretnék egy egyszerű hello-t kiiratni, hogy lássam miben is különbözik a régitől, de sajnos ez olyan sokban, hogyha csak egy cpp-t nyitok, akkor le sem tudom fordítani
(vagy pedig ha mégis lehet, akkor nem tudom hogyan - tehát valami menüpont, hasonló kellene).
Maradt a projektes megoldás, amelynél pedig hiába addolok hozzá cpp-t és írom bele a main fgv.-t tojik a fejemre, s azt mondja, hogy nincs programkód.
Tehát szeretném megkérni, valamely hozzáértő kollégát, hogy az elindulásról világosítson fel, legyen szíves. Köszönöm szépen előre is!
-
sghc_toma
senior tag
válasz
Benmartin #546 üzenetére
Szia!
Igazad van, beadandóimban én sem mindig csinálok teljes input-validációt, mert minek. Viszont ez tudatos. Azért említettem meg a dolgot, mert ha a kezdő programozóba belerögzül, hogy gets, és nem ismeri annak veszélyeit, akkor simán elképzelhető, hogy production code-ban is használni fogja.
-
Benmartin
senior tag
-
sghc_toma
senior tag
válasz
Fire/SOUL/CD #544 üzenetére
Hello!
Semmi gond, én is találkoztam már beszólogató emberkékkel
Tény, hogy lehet szívni az stdin-nel, amíg az ember nem tudja, hogyan is működik az a fránya input buffer. Az a baj, hogy a gets-el akkor is szívhatsz, ha tisztában vagy a dolgok működésével - ugyanis semmilyen lehetőséged nincs biztosan elkerülni a túlcsordulást.
Azzal érvelsz, hogy a programozást oktató tanárok ezt nem tanítják. Ellopom az érvedet, és felhasználom
A tanárok pl. a gets veszélyeire sem hívják fel a figyelmet.
Azért nem tartom jó ötletnek a gets használatát példakódban, mert akkor a programozópalánta azt ismeri meg, azt fogja használni, pedig van biztonságos(abb) megoldás is. Persze ahhoz többet kell tanulnia, meg pötyögnie, de potenciális b0f-t nem szabad benthagyni egy programban. Szerintem.
-
válasz
sghc_toma #543 üzenetére
Hali!
Elöször is bocsesz a "költői visszakérdezésért", de már előfordult, hogy valaki minden szakmai alapot nélkülöző hozzászólással gazdagított, amikor meg visszakérdeztem, hogy hát azért mégis elmagyarázhatná nekem(amúgy nem kellett volna) hogy hogyis van az, na azóta nem hallottam felőle.
Való igaz (ahogy Te illetve dabadab kolléga is írta) a GETS magában rejti ezt a fajta hibalehetőséget, de csak ezt, és ez jól látható(money[255]). Nyílván nem létezik olyan bankautomata amibe be lehet írni 255 számjegyből álló összeget, hogy adja ki 20ezresekbe, vagy ha igen szóljatok, mert kérek kölcsön egy MTZ traktort azt elhozzuk, mert akkor k... sok pénz van benne...Azért nem szeretem a pl SCANF-t, mert az viszont rejtett "hibákat" tartalmaz és aki most ismerkedik a C-vel(lásd CELLPETI) azt nem tudhatja(mert sajnos a informatika vagy prográmozást oktató tanárbácsik is gyakran megfeletkeznek ennek elmagyarázásáról). Mire gondolok? Hát például Te is említést teszel ama bizonyos STDIN-ről ugyebár, amit a SCANF is "használ". Ha valaki tényleg korrekt INPUT-ot akar írni, annak erre oda kell figyelni. egy példával illusztrálom:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main()
{
int n1,n2;
do {
printf("Enter 2 numbers [num1,num2]: ");
if (scanf("%d,%d",&n1,&n2)!=2) {
printf("Bad INPUT, try again or * to EXIT...\n");
continue;
}
printf("SUM(%d,%d) = %d\n",n1,n2,n1+n2);
} while (getch()!='*');
return 0;
}Nos, első ránézésre hibátlan, de mégsem. A következőképp működik az adott értékek mellett:
ha 5,7 akkor hibátlanul fut
ha 12345678901,12345678901, akkor hibás eredmény
ha a,b akkor hibás működés
ha 5.0,7.0 akkor hibás működésA hibás értékkel nem kell foglalkozni, az nyílvánvaló, azonban mi okozza a hibás működést? Nos annyit elárulok hogy a STDIN.
Természetesen nem Tőletek kérdem a megoldást(hisz biztosan tudjátok), hanem azoktól a leendő programozópalántáktól akik most ismerkednek a C-vel, és remélhetőleg elolvassák mások szakmai hozzászólását.
Szóval ezzel csak azt akartam illusztrálni, hogy kézenfekvő alap C input fx-ek is megtudják nehezíteni az ember életét, és ráadásul ezt úgy teszik hogy amúgy a kód hibátlan(vagy annak tűnik)Nos ezért szoktam kezdő programozóknál inkább a GETS-et alkalmazni.
Fire.
-
sghc_toma
senior tag
válasz
Fire/SOUL/CD #541 üzenetére
hello!
ahogy dabadab mondja, egy túl hosszú input csinálhat gonosz dolgokat.. próbáld ki mondjuk 300-400 számjeggyel, úgy tuti felülírod a return address-t a stack-en valami hülyeséggel, és kapsz egy segfault-ot.. persze a mai fordítókban vannak mindenféle védelmek overflow-k ellen, de azért nem szabad csak azokra támaszkodni..
-
dabadab
titán
válasz
Fire/SOUL/CD #541 üzenetére
Egyszeruen stdinen be kell adni a programnak. Semmi ellenorzes nincs arra nezve, hogy nem jon be 255-nel tobb karakter, siman felul lehet irni az egesz stacket.
-
-
sghc_toma
senior tag
válasz
Fire/SOUL/CD #539 üzenetére
egy tanács: a gets függvényt érdemes elásni.. jó mélyre.. olyan gyönyörű buffer overflow-t lehet vele gyártni, hogy ihaj.. ott van helyette pl. az fgets: harmadik paraméter stdin, és ugyanazt csinálja, mint a gets, csak kultúráltabban..
-
válasz
cellpeti #538 üzenetére
Hali!
Gyorsan megcsináltam(több megoldás is létezik persze), mielött ellépek itthonról. Ha valami nem tiszta írj. Késő este vagy holnap leszek majd.
(mivel ez csak példa, nem foglalkoztam azzal hogy kitudja mekkora számot lehessen beírni, ezért 2 gigánál nagyobbat ne írj be, mert hibásan fog működni. Bár kipróbálhatod)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define C_Y 14
int cimlet[C_Y] = {20000,10000,5000,2000,1000,500,200,100,50,20,10,5,2,1};
int hanyszor[C_Y] = {0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0,0,0};
int main()
{
long int i, cash;
char money[255];
printf("Enter money: ");
if (!strlen(gets(money))) {
printf("\n\nMoney not found...EXIT");
return -1;
}
printf("\n\n");
for (i=0;i<strlen(money);i++)
if(money[i]<'0' || money[i]>'9') {
printf("Is NAN [Not A Number]...\nEXIT");
return -1;
}
cash=atoi(money);
for (i=0;i<C_Y;i++) {
hanyszor[i]=cash / cimlet[i];
cash-=hanyszor[i]*cimlet[i];
if (hanyszor[i]) printf("%5d db\t %d\n",hanyszor[i],cimlet[i]);
}
return 0;
}Fire.
-
dabadab
titán
-
PazsitZ
addikt
válasz
cellpeti #527 üzenetére
Azért írtam oda, hogy "letárolod a címletet"
Bár osztással tényleg gyorsabb.
Megtaláltam egy régi pascalos forráskódom.
Ez bankautomata és csak pár értékes, de hátha segít:write('K‚rt ”sszeg:');readln(be);
x:=be mod 1000;
if x<=0 then begin
y:=(be div 1000);
if y mod 10>=0 then begin
ossz10:=y div 10;
be:=y mod 10;
end;
if y mod 5>=0 then begin
ossz5:=be div 5;
y:=be mod 5;
end;
if y mod 1>=0 then begin
ossz1:=y div 1;
be:=y mod 5;
end;
writeln('kiadand˘ cˇmletek:');
writeln('10000ft-os cˇmlet:',ossz10:8:0);
writeln('5000ft-os cˇmlet:',ossz5:8:0);
writeln('1000ft-os cˇmlet:',ossz1:8:0);
end
else begin
writeln('Minimum 1000,5000,10000ft-os cˇmletek vehet‹ ki');
end; -
cellpeti
nagyúr
Hogyan kell bekérni a billről számokat?
Hogyan töltök fel tömböt C-ben?? -
PazsitZ
addikt
válasz
cellpeti #525 üzenetére
Haladsz a legnagyobb címlettől a legkisebbig. Ezeket berakhatod egy tömbbe. [20000,10000,5000...]
Ha az összeg nagyobb, mint a címlet: kivonod a címletet a pénzösszegből, letároloda címletet majd újravizsgálod.
Ha kisebb: kisebb címletre lépsz.
Ha a pénzösszeg nulla kiírod a letárolt címleteket.Szvsz ha aktualizálni akarod beolvasásnál szabd ki, hogy 5-re vagy nullára végződjön a pénzösszeg.
-
cellpeti
nagyúr
Sziasztok!
Van egy ilyen feladat,hogy:
Adott egy pozitív egész szám, mint forintban kifizetendő pénzösszeg. Fizessük ki a legkevesebb címlet felhasználásával!Tehát,ha jól értem a feladatot,akkor:
Be kell kérni egy összeget a billentyűzetről és azt felbontani,ugye?
Mivel pozitív egész számról van szó,ezt rakhatom nyugodtan "int" változóba,majd be kell kérnem a billről egy összeget. majd maradékos osztással kell kiszámolnom? Vagy sima osztással? -
speedtouch
csendes tag
válasz
Fire/SOUL/CD #523 üzenetére
Hali!
Uhh isten vagy. Köszi nagyon.
Prímán működik -
válasz
speedtouch #522 üzenetére
Hali!
A kód Code::blocks-ban íródott, sima Ansi C. Ha valami nem érthető esetleg, akkor írj nyugodtan.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define CS_Y 38
#define CS_X 5
int LCD_Digits[CS_X][CS_Y]={
{0x20,0xC9,0xCD,0xBB, 0x20,0xCB, 0x20,0xCD,0xCD,0xBB, 0x20,0xCD,0xCD,0xBB, 0x20,0xCB,0x20,0xCB, 0x20,0xC9,0xCD,0xCD, 0x20,0xC9,0xCD,0xCD, 0x20,0xCD,0xCD,0xBB, 0x20,0xC9,0xCD,0xBB, 0x20,0xC9,0xCD,0xBB},
{0x20,0xBA,0x20,0xBA, 0x20,0xBA, 0x20,0x20,0x20,0xBA, 0x20,0x20,0x20,0xBA, 0x20,0xBA,0x20,0xBA, 0x20,0xBA,0x20,0x20, 0x20,0xBA,0x20,0x20, 0x20,0x20,0x20,0xBA, 0x20,0xBA,0x20,0xBA, 0x20,0xBA,0x20,0xBA},
{0x20,0xBA,0x20,0xBA, 0x20,0xBA, 0x20,0xC9,0xCD,0xBC, 0x20,0xCD,0xCD,0xB9, 0x20,0xC8,0xCD,0xB9, 0x20,0xC8,0xCD,0xBB, 0x20,0xCC,0xCD,0xBB, 0x20,0x20,0x20,0xBA, 0x20,0xCC,0xCD,0xB9, 0x20,0xC8,0xCD,0xB9},
{0x20,0xBA,0x20,0xBA, 0x20,0xBA, 0x20,0xBA,0x20,0x20, 0x20,0x20,0x20,0xBA, 0x20,0x20,0x20,0xBA, 0x20,0x20,0x20,0xBA, 0x20,0xBA,0x20,0xBA, 0x20,0x20,0x20,0xBA, 0x20,0xBA,0x20,0xBA, 0x20,0x20,0x20,0xBA},
{0x20,0xC8,0xCD,0xBC, 0x20,0xCA, 0x20,0xC8,0xCD,0xCD, 0x20,0xCD,0xCD,0xBC, 0x20,0x20,0x20,0xCA, 0x20,0xCD,0xCD,0xBC, 0x20,0xC8,0xCD,0xBC, 0x20,0x20,0x20,0xCA, 0x20,0xC8,0xCD,0xBC, 0x20,0xCD,0xCD,0xBC}
};
int main()
{
int i,j,LCD_Digit_Index,LCD_Digit_Width,k;
char num[255];
printf("Type INTEGER number: ");
if (!strlen(gets(num))) {
printf("\n\nINTEGER not found...\nShow all LCD digits and EXIT\n\n");
for (i=0;i<CS_X;i++) {
for (j=0;j<CS_Y;j++)
printf("%c",LCD_Digits[i][j]);
printf("\n");
}
return -1;
}
printf("\n\n");
for (i=0;i<strlen(num);i++)
if(num[i]<'0' || num[i]>'9') {
printf("Is NAN [Not A Number]...\nEXIT");
return -1;
}
for (i=0;i<CS_X;i++) {
for (j=0;j<strlen(num);j++) {
LCD_Digit_Index = num[j]-'0'>1 ? (num[j]-'0')*4-2 : (num[j]-'0')*4;
LCD_Digit_Width = num[j]-'0'==1 ? 2 : 4;
for (k=0;k<LCD_Digit_Width;k++)
printf("%c",LCD_Digits[i][LCD_Digit_Index+k]);
}
printf("\n");
}
return 0;
}Fire.
-
speedtouch
csendes tag
Bocsi a helytelen leírásért, még korán volt, mikor írtam
Bármilyen segítségnek nagyon örülnék, hátha el tudok indulni utánna -
válasz
speedtouch #520 üzenetére
Hali!
Így már más, LCD nem LDC, így érthető....NET-be sajna nem tudok segíteni(ezért most nem pakolom fel a VS-t), de ha sima C megfelel, akkor oké.
Fire.
-
speedtouch
csendes tag
http://e-oktat.pmmf.hu/webgui/www/uploads/images/677/hf2.pdf
Itt a 9-es feladat. (lehet, hogy rosszul fogalmaztam az előbb)
-
válasz
speedtouch #518 üzenetére
Hali!
Sajna VS-ben nem dolgozom, de ha egy példával illusztrálnád, hogy VS-ben mi is az a LDC formátum, az sokat segítene...
pl: 1234567 a szám és ebből lesz 1980.01.01 vagy valami
Fire.
-
speedtouch
csendes tag
Hali!
Lenne egy olyan gondom, hogy visual studioban olyan programot kell írnom, ami ha bekér egy számot, akkor azt LDC-el formátumban mutassa majd ki. Az lenne a probléma, hogy nem tudom, hogy állítsam be ezt a formát hozzá.
-
!wannabe
tag
válasz
Fire/SOUL/CD #516 üzenetére
Szerintem ez érdekli. Jaja ez a páratlan-páros dolog, viszont header file-okkal, szóval teljes kód az igény ha jól értelmezem.
-
-
ltz400
csendes tag
Nekem nem tudtok segíteni?
-
válasz
Fire/SOUL/CD #513 üzenetére
Hali!
Küldtem privbe.
Fire.
-
-
válasz
rothkrisz #511 üzenetére
Hali!
Kellemes feladatokat kaptok, nekem is jó, mert "retrózhatok".
Nos, több megoldása is lehet a feladatnak, Én az alábbi módszert választottam, elsősorban mert x64 Vista alatt ne futnak a DOS-os c/cpp editorok, ebből adódóan a kurzorpozicíóval, assembly betéttel, megszakításokkal nem tudok mit kezdeni.(ugyanis úgy is meg lehetett volna oldani, hogy egyből megjelenik a tábla, és egyből megjelenik rajt a bevitt mezőn az "érme"....)Lesz bent egy teljesen kikommentezett rész, azt csak azért hagytam bent, hogy még egy mátrix definíciót is láss. Sajna ott viszont már "keményen" mútatókkal lehet volna csak operálni, és ha valaki nincs tisztában velük, akkor tényleg nem fog érteni belőle semmit....
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define CB_XY 17
/*
unsigned char ChessBoard_Matrix[][CB_XY]={
"╔","═","╦","═","╦","═","╦","═","╦","═","╦","═","╦","═","╦","═","╗",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╠","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╬","═","╣",
"║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║"," ","║",
"╚","═","╩","═","╩","═","╩","═","╩","═","╩","═","╩","═","╩","═","╝"
};
*/
int ChessBoard_Matrix[CB_XY][CB_XY]={
{0xC9,0xCD,0xCB,0xCD,0xCB,0xCD,0xCB,0xCD,0xCB,0xCD,0xCB,0xCD,0xCB,0xCD,0xCB,0xCD,0xBB},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xCC,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xCE,0xCD,0xB9},
{0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA,0x20,0xBA},
{0xC8,0xCD,0xCA,0xCD,0xCA,0xCD,0xCA,0xCD,0xCA,0xCD,0xCA,0xCD,0xCA,0xCD,0xCA,0xCD,0xBC}
};
int main()
{
int i,j,k;
char str[256];
while(0==0) {
printf("Enter coordinate and value: ");
strupr(gets(str));
if (str[0]=='*') { printf("\nGenerating Chessboard\n\n"); break; }
if (!strlen(str) || strlen(str)>3) { printf("Bad SIZE found [%s=>%d], skipped...\n",str,strlen(str)); continue; }
if (str[0]<'A' || str[0]>'H') { printf("Bad COLUMN found [%c], skipped...\n",str[0]); continue; }
if (str[1]<'1' || str[1]>'8') { printf("Bad ROW found [%c], skipped...\n",str[1]); continue; }
if (str[2]!='1' && str[2]!='2' && str[2]!='5') { printf("Bad VALUE found [%c], skipped...\n",str[2]); continue; }
ChessBoard_Matrix[('8'-str[1])*2+1][(str[0]-'A')*2+1]=str[2];
}
for(i=0,k=8;i<CB_XY;i++) {
if ((i % 2)) printf("%d ",k--);
else printf(" ");
for(j=0;j<CB_XY;j++)
printf("%c",ChessBoard_Matrix[i][j]);
printf("\n");
}
for(printf(" "),i=0;i<8;printf("%c ",'A'+i),i++);
printf("\n\n");
return 0;
}Fire.
UI: remélem jól értelmeztem a feladatot...
-
rothkrisz
csendes tag
Sziasztok segítséget szeretnék kérni.
Sakktáblarajzoló programot kellen írnom ami a megrajzolt sakktáblán 1,2,5 ös számokat helyez el pl.A32(A oszlop 3 sor egy 2 érme kerül.)
a bekérés * jelig tart.
Remélem érthető
előre is Köszönöm
-
amargo
addikt
válasz
Fire/SOUL/CD #505 üzenetére
Jogos!
Én csak alakiságot figyeltem. -
doc
nagyúr
válasz
Fire/SOUL/CD #505 üzenetére
ja, kozben utananeztem hogy mit is csinal, de sosem volt ra szuksegem
ltz400: ez nem teljes program, csak egy fuggveny, ha mindenaron modf-et akarsz hasznalni, akkor meghivhatod a megadott szammal mint parameterrel -
Hali!
Hát szomorú ha nem hallottál róla, a MATH.H-ban van. Egy lebegőpontos számot "oszt" két részre, egész ill törtrészre. (vagy egyszerűbben a tizedespont jobb oldalára ill bal oldalára)
persze abban egyetértek, hogy eldönteni egy számról, hogy páros vagy páratlan tök felesleges használni(de lehet)Fire.
UI: amargo kódja, már kerekítéssel is foglalkozik(0,5-től felfelé kerekítünk, egyébként meg lefeleé)
Annyi "kritika", ha valami NEM NAGYOBB EGYENLŐ MINT 0,5, akkor felesleges az ELSE után az összehasonlítás....(Amargo kódjáról van szó)
-
amargo
addikt
A moduló jobb erre, de Te ezt kerested:
//------------------------------------------
int rounder(double pix)
{
double egesz = 0, tort = 0;
tort = modf(pix,&egesz);
if(tort >= 0.5)
{
pix = ceil(pix);
}
else if(tort < 0.5)
{
pix = floor(pix);
}
return pix;
}//int rounder
//------------------------------------------Szerk:
Kódba raktam -
ltz400
csendes tag
Sziasztok!
Még kezdő vagyok programozás terén.C nylvet kezdtem el tanulni.Segítségeteket szeretném kérni.Kellene egy olyan program amely bekér két számot majd eldönti páros vagy páratlan.Asszem modf-el kéne valamit ügyeskedni hogy ha elosszuk a számot 2-vel és nincs maradék páros ha van páratlan.
Ú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!
- Magas AI-költségek, csökkenő létszám: dolgozók ezreit rúgja ki a Microsoft
- exHWSW - Értünk mindenhez IS
- Lakáshitel, lakásvásárlás
- Napelem
- AMD vs. INTEL vs. NVIDIA
- Vélemény: nem úgy tűnik, de Lip-Bu Tan most menti meg az Intelt
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Trollok komolyan
- Így nézz tévét 2025-ben: új ajánlások, régi szabályok
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- T14s Gen2i 14" FHD IPS i5-1135G7 16GB 256GB NVMe magyar vbill ujjlolv IR kam gar
- Új Poco F7 Ultra 512/16GB Black 3év garancia!
- Samsung Galaxy Watch Ultra 2év garancia!
- Újszerű Apple MacBook Air 13.6" (2024) - M3 - 68 Ciklus- 8GB/256GB (MRXN3MG/A) Asztroszürke - MAGYAR
- G.SKILL 32GB Trident Z5 DDR5 6400MHz CL32 KIT F5-6400J3239G16GX2-TZ5S
- Laptop felvásárlás , egy darab, több darab, új , használt ! Korrekt áron !
- Azonnali készpénzes INTEL CPU NVIDIA VGA számítógép felvásárlás személyesen / postával korrekt áron
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RX 9070 XT GAMER PC termékbeszámítással
- AKCIÓ! Gigabyte H610M i5 12400F 16GB DDR4 512GB SSD RX 6700XT 12GB Zalman S2 TG Seasonic 650W
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest