Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Rätselecke » 3. O-rätsel: Primfaktoren

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 ]
010
29.09.2003, 14:34 Uhr
kronos
Quotenfisch
(Operator)



Zitat:
2 = 2 * 2

soll das so implementiert werden???
--
main($)??<-$<='?'>>2?main($-!!putchar(
(("$;99M?GD??(??/x0d??/a:???;a"+'?'/4)
??($??)+'?'/3-2-1+$%2)??''?')):'?';??>
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
29.09.2003, 14:43 Uhr
Pablo
Supertux
(Operator)



Zitat:
kronos postete
[quote]2 = 2 * 2

soll das so implementiert werden???[/quote]
Das ist ja komisch, vielleicht sollte es Z_2 sein, und dort gilt es auf jeden Fall!
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
29.09.2003, 15:32 Uhr
Oliver
S2-Pixelgeneral


Schusselfehler , ich hab nur die von 4 -10000 gemacht, die andern hat ich manuell ergänzt.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
03.10.2003, 12:21 Uhr
Oliver
S2-Pixelgeneral


Da ja irgendwie keiner so richtig eine Lösung bringt, post ich mal meine:


C++:

#include <fstream>

using namespace std;

bool Primzahl(const unsigned int &zahl)
{
    if(zahl==2)return 1;
    if(!(zahl&1)||zahl==1) return 0;

    for(unsigned int i=3;i<zahl;++i)
        if(!(zahl%i)) return 0;

    return 1;
}



int main()
{
    
    ofstream ofs;
    unsigned  i;

    ofs.open("Primfaktorenzerlegungen.txt",ios::out);

    for(unsigned ir = 2; ir< 10000;++ir)
    {
        i=ir;
        if(Primzahl(i)) {
            ofs << i << " = Primzahl\n";


            goto next;
        }

        ofs << i << " = ";
        while(1)
        {
        for(unsigned i2 =2;;++i2)
        {
            if(!(i%i2))
            {
                ofs<< i2 << " * ";
                i/=i2;
                if(Primzahl(i))
                {

                    ofs << i <<'\n';

                    goto next;
                }
                break;
            }
        }
        
        }
next:
    }

    return 0;
}


--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )

Dieser Post wurde am 03.10.2003 um 12:23 Uhr von Oliver Müller editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
03.10.2003, 13:58 Uhr
0xdeadbeef
Gott
(Operator)


Ich hab mich nur vornehm zurückgehalten, weil ich virtuals Code nicht mehr so einfach wesentlich toppen konnte (bzw. keine Idee dazu hatte), und es mir ein bisschen zu arm war, dasselbe nochmal zu schreiben.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
03.10.2003, 14:29 Uhr
Oliver
S2-Pixelgeneral


meiner ist sicher auch nicht so perfekt...
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
016
06.10.2003, 09:45 Uhr
virtual
Sexiest Bit alive
(Operator)


@Oliver

Wir wärs mit

C++:
bool Primzahl(const unsigned int &zahl)
{
    if (zahl<2) return false;
    if(zahl==2 || zahl==3) return true;
    if (zahl%2==0) return false;
    for(unsigned int i=3;i*i<=zahl;i+=2)
        if(zahl%i==0) return false;
    return true;
}


--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
017
06.10.2003, 23:42 Uhr
~(un)wissender
Gast


@Oliver Müller
Ahhhhhh, ich sehe gotos, zur Hölle damit!
Dir schicke ich keine Weihnachtskarte mehr, dass hast du jetzt davon!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
018
12.10.2003, 12:10 Uhr
Oliver
S2-Pixelgeneral


Ich hab's mir schon gedacht, dass die Primzahlfunktion nicht die beste ist, aber ich hatte auch keine Lust lange daran rumzuwerkeln.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
019
13.10.2003, 07:11 Uhr
~(un)wissender
Gast


@virtual
Die Methode bool Primzahl ist schon fast perfekt, du kannst aber noch was an Performace rausholen, indem du i*i durch sqrt((foat)zahl) ersetzt. Damit du nicht durch Rundungsfehler eine Primzahl unterschlägst muss sqrt((foat)zahl) immer aufgerundet werden, auch bei weniger als .5 (obere Gaussklammer?)
 
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: