- Samsung Galaxy Watch7 - kötelező kör
- Milyen okostelefont vegyek?
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Leesett a kamionról több millió eurónyi Z Fold7
- Garmin Venu X1 - vékony, virtuóz, váltságíjas
- Bemutatkozott a Poco X7 és X7 Pro
- Poco F6 5G - Turbó Rudi
- Okosóra és okoskiegészítő topik
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
- iPhone topik
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
-
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!
- Autós topik látogatók beszélgetős, offolós topikja
- Samsung Galaxy Watch7 - kötelező kör
- Milyen monitort vegyek?
- AliExpress tapasztalatok
- Robogó, kismotor
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Építő/felújító topik
- Asztalos klub
- BMW topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- GAMER AcerNitro15 FHD IPS / Intel Core i7 / 8gb ram / 128gb ssd / Nvidia GTX960 2gb dedikált
- Eladó GAMER konfig! I7-12700E 512GB SSD 1TB HDD 16GB DDR5 RTX3080 10GB!
- Dell Latitude 5521 / Nvidia 2gb dedikált / i7-11850H /32gb ram / 512gb SSD / Világitó Bill
- Dell Precision 5540 / i7-9750h / 16gb ram / 512gb SSD / Nvidia 4gb dedikált / Világitó Bill
- JÁTÉKOS Dell 15 NVIDIA 2gb Intel core i5-7200 8gb ddr4 256gb ssd win11 Magyar bill VILÁ
- GÉMER! Dell G15 5520 i7-12700H 14magos! RTX 3060 3070 szint! 32GB RAM 1000GB SSD FHD 120Hz Gar. 2026
- Nexigo PJ40 okosprojektor / Számla + Garancia /
- Telenor 5G Indoor WiFi Router (FA7550) + töltő
- Sima Vs.Windows Logitech Mx keys s plus és hagyományos Mx keys magyar bemutatása. Új videó linkel
- Xiaomi Redmi Note 13 Pro 256GB Kártyafüggetlen 1 év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest