Új hozzászólás Aktív témák
-
mm00
aktív tag
válasz
Bettina87
#376
üzenetére
Na összehoztam neked, szerintem ez meg fog felelni

#include<stdio.h>
#include <ctype.h>
#define HSZ sizeof(int)/sizeof(short)*5
int getch(void);
void ungetch(int);
int getint(int *);
int main(int argc, char *argv[]) {
int i = 0;
int dec;
char rom[50];
getint(&dec);
printf("%d\n\n", dec);
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);
}
int getint(int *pn)
{
int c=0, sign, ok=0, numdb;
double d;
while(!ok && c!=EOF)
{
while(isspace(c=getch()));
sign = 1;
if(c=='+'||c=='-')
{
sign=(c=='+')?1:-1;
c=getch();
}
for(d=0., numdb=HSZ; numdb-->0&&isdigit(c);c=getch())
{
d=10.*d+c-'0';
ok = 1;
}
d*=sign;
while(!isspace(c)&&c!=EOF)
{
c=getch();
ok = 0;
}
else
*pn=d;
}
if(c!=EOF)ungetch(c);
return(c);
}
Ú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!
- Megérkezett a Samsung Galaxy A37 és Galaxy A57
- Milyen egeret válasszak?
- Kertészet, mezőgazdaság topik
- Milyen billentyűzetet vegyek?
- Építő/felújító topik
- Apple MacBook
- Mibe tegyem a megtakarításaimat?
- Visszatérhet a csepp notch és a 90 Hz
- Harmadával megvághatja a Switch 2 gyártását a Nintendo
- Tőzsde és gazdaság
- További aktív témák...
- HyperX Predator 2x8GB 3200mhz DDR4 ram CL 16 !!!! - RGB !!!!
- IdeaPad 3 15ARH05 15.6" FHD IPS Ryzen 5 4600H GTX 1650 16GB 512GB NVMe magyar vbill gar
- i7-8700K / ASUS Z370-E / GTX 1080 Ti komplett gép
- PNY GeForce RTX 4070 Ti SUPER 16GB XLR8 Gaming VERTO EPIC-X RGB
- Samsung Galaxy S25 eladó, független, garanciális (ses.hu, 2028 júniusig)
- ÁRGARANCIA!Épített KomPhone i5 14600KF 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Részletfizetés. BankMentes. Kamatmentes. Új noblechairs EPIC műbőr FEKETE - FEKETE. 3 év garancia!
- Dell Wyse 5470,14",FHD,Touch,N4100 CPU,8GB DDR4,128GB SSD,WIN11
- Dell Inspiron 15 3520 - 15.6"FHD IPS - i7-1255U - 8GB - 512GB - Win11 - MAGYAR - 1,5 év garancia
- 27% - ASUS TUF Gaming VG28UQL1A Monitor! 3840x2160 / 1ms / 144Hz / G-Sync / FreeSync BeszámítOK!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


. Nem tudom megfelel-e a Kernighan-Ritchie parancsoknak 
