Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Rätselecke » Befreundete Zahlen

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 ] [ 2 ] > 3 <
020
20.12.2007, 12:29 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


gib mir mal wer nen Tipp wie ich die 2. for Schleife spare
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
021
20.12.2007, 13:52 Uhr
Bruder Leif
dances with systems
(Operator)


Zwei Variablen, eine Schleife
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
022
20.12.2007, 14:00 Uhr
firefoxxi



Ich glaub ich bekomm hier nix mehr raus. Naja vll bin ich auch blind. Hier mal mein code:


C++:
bool IsFriend(int i, int j)
{
    int a,l;for(a=l=i+j;l>0;a+=i%l?0:l,l--)a-=j%l?0:2*l;return!a;
}


Edit: 61 wusste net das ich das leerzeichen zwischen return und ! weglassen kann ^^
--
Gruß
firefoxxi

http://firebird-browser.de/

Dieser Post wurde am 20.12.2007 um 14:24 Uhr von firefoxxi editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
023
20.12.2007, 14:15 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


hmm nett auch wenn ichs noch nicht ganz verstehe...

@Bruder Leif
ich hab sogar 2 UND 2 Schleifen

C++:
int a=i,b=j;for(;--a>0;i%a?a:j-=a);for(a=b;--a>0;b%a?a:i-=a);return!(j|i);


ist halt die billige Variante...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
024
20.12.2007, 14:33 Uhr
firefoxxi



Mit dem Trick das l-- in den Vergleich zu schreiben komm ich sogar auf 59. Den Trick kannte ich noch net ^^.


C++:
int a,l;for(a=l=i+j;--l>0;a+=i%l?0:l)a-=j%l?0:2*l;return!a;

--
Gruß
firefoxxi

http://firebird-browser.de/
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
025
20.12.2007, 14:43 Uhr
~Apokalypse
Gast


Hi bin neu hier und hier ist mein Code
Finde diese Idee mit den Golf Rätseln echt Klasse


Code:

bool IsFriend(int i, int j)
{int t=0,v=1;do{t+=(i%v==0)?v:0;}while(i-1>v++);return i!=j&&t==j;};



An die beiden vor mir euer Code funzt nur teilweise
Bei eurem Code sind 28 und 28 befreundet
Gruß Apo
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
026
20.12.2007, 14:57 Uhr
firefoxxi



@Apokalypse: Stimmt. Gut aufgepasst. Ok somit bekomm ich natürlich 5 Zeichen für den Vergleich am Ende dazu. Macht 64.


C++:
int a,l;for(a=l=i+j;--l>0;a+=i%l?0:l)a-=j%l?0:2*l;return!a&&i^j;


Edit: Allerdings is dein Code auch fehlerhaft. Er liefert für 71 und 1 auch true.
--
Gruß
firefoxxi

http://firebird-browser.de/

Dieser Post wurde am 20.12.2007 um 15:01 Uhr von firefoxxi editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
027
20.12.2007, 17:45 Uhr
Bruder Leif
dances with systems
(Operator)


Was haltet Ihr davon?


C++:
int IsFriend(int i, int j) {
int a=i+j,s=a,t=a;for(;--a;s-=i%a?0:a)t-=j%a?0:a;return!s&!t;
}


--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
028
21.12.2007, 11:38 Uhr
firefoxxi



Auch nicht schlecht. Enthält allerdings auch den Fehler den Apokalypse bei mir angemerkt hat. Dein Programm gibt für zwei gleiche, vollkommene Zahlen auch true aus. Zwei befreundete Zahlen sind aber nach Definition verschieden. Also bekommst du auch noch 5 Zeichen dazu, womit wir gleich auf wären.

Da fällt mir auf (dank deinem code ;-) ) das sich mein code noch um 2 Zeichen von --l>0 auf --l verkürzen lässt.


C++:
int a,l;for(a=l=i+j;--l;a+=i%l?0:l)a-=j%l?0:2*l;return!a&&i^j;


Aber im Grunde genommen sind unsere Ansätze doch recht ähnlich, außer das du eine Variable mehr verwendest.
--
Gruß
firefoxxi

http://firebird-browser.de/

Dieser Post wurde am 21.12.2007 um 11:39 Uhr von firefoxxi editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] > 3 <     [ 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: