- hcl: Eszelős szívatás : kijelzőtükrözés 2026
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- mefistofeles: Az elhízás nem akaratgyengeség!
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- MasterDeeJay: i7 4980HQ asztali gépben (vs i7 4770)
- GoodSpeed: Te hány éves vagy?
- tordaitibi: Moltbook- az AI közösségi platformja
- Gurulunk, WAZE?!
- Luck Dragon: Asszociációs játék. :)
Új hozzászólás Aktív témák
-
Iolé
csendes tag
Sziasztok!
Szeretném a segítségeteket kérni! Lenne egy program, amit nem egészen értek, főleg utolsó rész nem tiszta. Esetleg valaki tudna egy kis kommentet írni hozzá, hogy hogyan működik, meg mikor mit csinál, nagyon fontos lenne!
Ez volta feladat: A parancs a parancs sorban egy decimális számot (vagy decimális számokszóközökkel elválasztott sorozatát) vár(ja), amely(ek)nek kiírja római
szám megfelelőjét az stdout-ra.
Hibásan megadott parancs esetén a programnak rövid diagnosztikai
üzenetben informálnia kell a felhasználót arról, hogy a parancsot
hogyan kell használni. A diagnosztikai üzenetet az stderr-re kell
küldeni.
És a program:
#include <stdio.h>int main(argc, argv)
int argc;
char *argv[];
{
int i = 0, x=0;
int dec;
char rom[50];
if(argc == 1){
fprintf(stderr, "Hianyzik a parameter!");
exit( 1 );
}for(x=1;x<argc;x++){
if(egesze(argv[x])){
dec = atoi(argv[x]);
}else{
fprintf(stderr, "A parameterlistaban nem megfelelo az egyik ertek!");
exit( 1 );
}while(dec>=1000){
dec -= 1000;
rom[i] = 'M';
i++;
}
if (dec>=900){
dec-=900;
rom[i] = 'C';
i++;
rom[i] = 'M';
i++;
}
if(dec>=500){
dec -= 500;
rom[i] = 'D';
i++;
}
if (dec>=400){
dec -= 400;
rom[i] = 'C';
i++;
rom[i] = 'D';
i++;
}
while(dec>=100){
dec = dec-100;
rom[i] = 'C';
i++;
}
if(dec>=90){
dec -= 90;
rom[i] = 'X';
i++;
rom[i] = 'C';
i++;
}
if(dec>=50){
dec -= 50;
rom[i] = 'L';
i++;
}
if(dec>=40){
dec -= 40;
rom[i] = 'X';
i++;
rom[i] = 'L';
i++;
}
while(dec>=10){
dec -= 10;
rom[i] ='X';
i++;
}
if(dec == 9){
rom[i] = 'I';
i++;
rom[i] = 'X';
i++;
}
else{
if(dec >= 5){
dec -= 5;
rom[i] = 'V';
i++;
}
if(dec == 4){
rom[i] = 'I';
i++;
rom[i] = 'V';
i++;
}
else{
while(dec > 0){
dec -= 1;
rom[i] = 'I';
i++;
}
}
}
rom[i]='\0';
printf(" %s", rom);
}
exit(0);
}int egesze(s)
char *s[];
{
int i=0, kezd;
while (s[i]==' ' || s[i]=='\n' || s[i]=='\t')++i;
if(s[i]=='+' || s[i]=='-')++i;
kezd=i;
while(s[i]>='0' && s[i]<='9')++i;
if(i==kezd || s[i]!=' ' && s[i]!='\t' && s[i]!='\n' && s [i]!=0) return 0;
else return 1;
}int atoi(s)
char s[];
{
int i, n;
n = 0;
for (i = 0; s[i] >= '0' && s[i] <= '9'; ++i)
n = 10 * n + (s[i] - '0');
return n;
}
Ú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!
- Metal topik
- Milyen videókártyát?
- Nem akármilyen új GeForce jöhet idén
- EarFun Air Pro 4+ – érdemi plusz
- A Huawei február 26-án globálisan is bemutatja a Mate 80 Prót
- DUNE médialejátszók topicja
- Google Pixel topik
- Mibe tegyem a megtakarításaimat?
- War Thunder - MMO Combat Game
- A fociról könnyedén, egy baráti társaságban
- További aktív témák...
- Lenovo ThinkCentre M93p Tiny - Core i5-4570T/16GB RAM/0 SSD
- GYÖNYÖRŰ iPhone 15 Pro Max 256GB Fekete Titán - 12 hónap JÓTÁLLÁS - Kártyafüggetlen, 100% Aksi
- GYÖNYÖRŰ iPhone 15 Pro Max 256GB Fehér Titán - 12 hónap JÓTÁLLÁS - Kártyafüggetlen, 100% Aksi
- Precision 5570 27% 15.6" FHD+ IPS i7-12800H RTX A1000 16GB 512GB NVMe ujjlolv gar
- Gamer PC-Számítógép! Csere-Beszámítás! R5 3600 / RX 5700 8GB / 16GB DDR4 / 256SSD + 2TB HDD
- Xiaomi 13 Pro 12/256GB Ceramic Black használt 6 hónap garancia
- HIBÁTLAN iPhone 14 Pro 256GB Gold- 1 ÉV GARANCIA - Kártyafüggetlen, MS4514
- Huawei Free Clip 2 - Hüvely a füledre, de a füled a hüvelye
- BESZÁMÍTÁS! MSI B450M R5 5600X 16GB DDR4 512GB SSD Strix RTX 2060 6GB Rampage SHIVA CM 650W
- HP 150W töltők (19.5V 7.7A) kis kék, kerek, 4.5x3.0mm
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

