Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Rätselecke » Weiss ich vievieltes Windalfrätsel

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
26.09.2003, 23:34 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


also zu schreiben ist ein Programm das eine integerzahl i übergeben (also Kommandozeilenparamter) bekommt und diese als römische Zahl ausgibt
für i soll gelten 0<i<10000;

für die, die es vergessen haben
M=1000, D=500, C=100, L=50, X=10, V=5, I=1;

als zweites soll dann dasselbe Programm in umgekehrter Richtung geschrieben werden

Par für virtual und beefy ist 10 weniger als ich
für alle anderen sind 30 mehr erlaubt
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 26.09.2003 um 23:40 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
27.09.2003, 11:38 Uhr
0xdeadbeef
Gott
(Operator)


OK, mein erster Anlauf wären 224 + newlines.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 27.09.2003 um 11:40 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
27.09.2003, 11:42 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


hab auch gerade meinen ersten Anlauf fertig
sieht so aus

C++:
char c[99],r[]={'M','D','C','L','X','V','I'};
int i,j,k,z=1000;
main(int x,char**a){
for(x=atoi(a[1]);i<x/z;c[i++]=77);
x%=z;
z/=10;
for(;z;x=x%z,z=z/10,k++)
if(x<9*z)for(c[i++]=r[2*k+1],j=i;i<j+x/z-5;c[i++]=r[2*k+2]);
else{c[i++]=r[2*k+2];c[i++]=r[2*k];}
puts(c);
}


da sollte noch ne menge zu kürzen drin sein
hab allerdings heute wahrscheinlich kein zeit mehr dafür
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
27.09.2003, 12:58 Uhr
0xdeadbeef
Gott
(Operator)


Das läuft nicht richtig. Ich krieg zum Beispiel:

C++:
$ ./a.out 123
DLV


Ich bin übrigens bei 213.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 27.09.2003 um 13:10 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
27.09.2003, 13:34 Uhr
0xdeadbeef
Gott
(Operator)


So aus dem Stand komm ich im Moment nicht mehr weiter, vielleicht fällt mir später noch was ein. Das ist mein Code:

C++:
char*l={"M\0CM\0D\0CD\0C\0XC\0L\0XL\0X\0IX\0V\0IV\0I"},b[16],*p=b;int n
[]={999,899,499,399,99,89,49,39,9,8,4,3,0},j;main(x,s)int*s;{for(x=atoi
(s[1]);x;++j)for(;x>n[j];x-=n[j]+1,p+=j%2+1)strcpy(p,l+j*5/2);puts(b);}


--edit: i heißt jetzt j
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 27.09.2003 um 13:35 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
27.09.2003, 15:42 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@beefy ja hast recht
hab beim schnellen zusammenschmiessen ein paar bugs reingehauen
Schlagen tu ich dich eh nicht mehr. Ich könnte höchsten versuchen noch code von dir zu klauen und hier und da ein arsemliges zeichen rauszuholen. Auf jeden fall habe ich auf Anhieb keinen ansatz mit dem ich deinen unterbieten könnte.
Fehlt also noch von römisch nach arabisch
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
27.09.2003, 16:22 Uhr
0xdeadbeef
Gott
(Operator)


Mag sein . Trotzdem bin ich manchmal echt blind...207:

C++:
char*l="M\0CM\0D\0CD\0C\0XC\0L\0XL\0X\0IX\0V\0IV\0I",b[16],*p=b;n[]={
999,899,499,399,99,89,49,39,9,8,4,3,0},j;main(x,s)int*s;{for(x=atoi(s
[1]);x;++j)for(;x>n[j];x-=n[j]+1,p+=j%2+1)strcpy(p,l+j*5/2);puts(b);}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 27.09.2003 um 16:22 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
30.09.2003, 09:57 Uhr
0xdeadbeef
Gott
(Operator)


Manchmal bin ich auch noch blinder...seufz. 193:

C++:
char*l="M\0CM\0D\0CD\0C\0XC\0L\0XL\0X\0IX\0V\0IV\0I"
,b[16];n[]={999,899,499,399,99,89,49,39,9,8,4,3,0},j
;main(x,s)int*s;{for(x=atoi(s[1]);x;++j)for(;x>n[j];
x-=n[j]+1)strcat(b,l+j*5/2);puts(b);}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ Rätselecke ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: