d2jsp
Log InRegister
d2jsp Forums > Off-Topic > International > Deutsch > Das Offizielle Mathe Topic
Prev1148149150151152265Next
Add Reply New Topic New Poll
Member
Posts: 40,403
Joined: Dec 3 2010
Gold: 151,820.00
Nov 23 2011 08:15pm
hab mal wieder was programmiert
der erfahrene seemann erkennt, dass ich meine c++ grundkenntniße nur nebenbei zulehgen kann
hauptberuflich bin ich nähmlich gerüstbauer und arbeite mit langen stangen :)

Code
#include <iostream>
#include <cmath>
using namespace std;

bool isprime(int n)
{
     bool prime = true;
     for (int i=1; i<=pow(n,0.5); i++)
     {
           if (n/i - floor(n/i) == 0)
           {
                 prime = false;
                 i = n;
           }
     }
     return prime;
}

int main()
{
     cout << isprime(3) << " lol ";
}
Member
Posts: 40,403
Joined: Dec 3 2010
Gold: 151,820.00
Nov 23 2011 08:26pm
so, jetzt hab ich noch ein paar zahlen gefunden, für die x^2+y^2=p gilt, wobei p eine primzahl ist:

x = 1, y = 1, p = 2
x = 1, y = 4, p = 5
x = 1, y = 16, p = 17
x = 1, y = 36, p = 37
x = 1, y = 196, p = 197
x = 1, y = 256, p = 257
x = 1, y = 576, p = 577
x = 1, y = 1296, p = 1297
x = 4, y = 1, p = 5
x = 4, y = 9, p = 13
x = 4, y = 49, p = 53
x = 4, y = 100, p = 104
x = 4, y = 289, p = 293
x = 4, y = 484, p = 488
x = 4, y = 729, p = 733
x = 4, y = 784, p = 788
x = 4, y = 1089, p = 1093
x = 4, y = 1225, p = 1229
x = 4, y = 1369, p = 1373
x = 9, y = 4, p = 13
x = 9, y = 64, p = 73
x = 9, y = 225, p = 234
x = 9, y = 441, p = 450
x = 9, y = 1024, p = 1033
x = 9, y = 1444, p = 1453
x = 16, y = 1, p = 17
x = 16, y = 25, p = 41
x = 16, y = 81, p = 97
x = 16, y = 121, p = 137
x = 16, y = 484, p = 500
x = 16, y = 676, p = 692
x = 25, y = 4, p = 29
x = 25, y = 16, p = 41
x = 25, y = 36, p = 61
x = 25, y = 64, p = 89
x = 25, y = 169, p = 194
x = 25, y = 256, p = 281
x = 25, y = 324, p = 349
x = 25, y = 576, p = 601
x = 25, y = 1024, p = 1049
x = 25, y = 1156, p = 1181
x = 25, y = 1296, p = 1321
x = 36, y = 1, p = 37
x = 36, y = 25, p = 61
x = 36, y = 121, p = 157
x = 36, y = 361, p = 397
x = 49, y = 4, p = 53
x = 49, y = 64, p = 113
x = 49, y = 100, p = 149
x = 49, y = 144, p = 193
x = 49, y = 324, p = 373
x = 49, y = 529, p = 578
x = 49, y = 625, p = 674
x = 49, y = 961, p = 1010
x = 49, y = 1444, p = 1493
x = 64, y = 9, p = 73
x = 64, y = 25, p = 89
x = 64, y = 49, p = 113
x = 64, y = 289, p = 353
x = 64, y = 400, p = 464
x = 64, y = 676, p = 740
x = 64, y = 1089, p = 1153
x = 64, y = 1225, p = 1289
x = 64, y = 1369, p = 1433
x = 64, y = 1600, p = 1664
x = 81, y = 16, p = 97
x = 81, y = 100, p = 181
x = 81, y = 196, p = 277
x = 81, y = 256, p = 337
x = 81, y = 441, p = 522
x = 81, y = 1156, p = 1237
x = 81, y = 1521, p = 1602
x = 100, y = 1, p = 101
x = 100, y = 9, p = 109
x = 100, y = 49, p = 149
x = 100, y = 81, p = 181
x = 100, y = 169, p = 269
x = 100, y = 289, p = 389
x = 100, y = 361, p = 461
x = 100, y = 400, p = 500
x = 100, y = 729, p = 829
x = 100, y = 784, p = 884
x = 100, y = 961, p = 1061
x = 100, y = 1600, p = 1700
x = 121, y = 16, p = 137
x = 121, y = 36, p = 157
x = 121, y = 196, p = 317
x = 121, y = 400, p = 521
x = 121, y = 1156, p = 1277
x = 144, y = 49, p = 193
x = 144, y = 169, p = 313
x = 144, y = 289, p = 433
x = 169, y = 4, p = 173
x = 169, y = 64, p = 233
x = 169, y = 100, p = 269
x = 169, y = 144, p = 313
x = 169, y = 400, p = 569
x = 169, y = 484, p = 653
x = 169, y = 841, p = 1010
x = 169, y = 900, p = 1069
x = 169, y = 1024, p = 1193
x = 169, y = 1444, p = 1613
x = 196, y = 1, p = 197
x = 196, y = 81, p = 277
x = 196, y = 121, p = 317
x = 196, y = 225, p = 421
x = 196, y = 361, p = 557
x = 225, y = 4, p = 229
x = 225, y = 16, p = 241
x = 225, y = 196, p = 421
x = 225, y = 484, p = 709
x = 225, y = 1024, p = 1249
x = 225, y = 1156, p = 1381
x = 225, y = 1444, p = 1669
x = 256, y = 1, p = 257
x = 256, y = 25, p = 281
x = 256, y = 81, p = 337
x = 256, y = 361, p = 617
x = 256, y = 784, p = 1040
x = 256, y = 961, p = 1217
x = 256, y = 1225, p = 1481
x = 289, y = 4, p = 293
x = 289, y = 64, p = 353
x = 289, y = 100, p = 389
x = 289, y = 144, p = 433
x = 289, y = 324, p = 613
x = 289, y = 484, p = 773
x = 289, y = 841, p = 1130
x = 289, y = 1444, p = 1733
x = 324, y = 25, p = 349
x = 324, y = 49, p = 373
x = 324, y = 289, p = 613
x = 324, y = 1225, p = 1549
x = 324, y = 1369, p = 1693
x = 361, y = 36, p = 397
x = 361, y = 100, p = 461
x = 361, y = 196, p = 557
x = 361, y = 256, p = 617
x = 361, y = 400, p = 761
x = 361, y = 576, p = 937
x = 361, y = 841, p = 1202
x = 361, y = 1296, p = 1657
x = 400, y = 1, p = 401
x = 400, y = 9, p = 409
x = 400, y = 49, p = 449
x = 400, y = 121, p = 521
x = 400, y = 169, p = 569
x = 400, y = 361, p = 761
x = 400, y = 729, p = 1129
x = 400, y = 961, p = 1361
x = 400, y = 1089, p = 1489
x = 400, y = 1600, p = 2000
x = 441, y = 16, p = 457
x = 441, y = 100, p = 541
x = 441, y = 441, p = 882
x = 441, y = 676, p = 1117
x = 441, y = 1156, p = 1597
x = 484, y = 25, p = 509
x = 484, y = 169, p = 653
x = 484, y = 225, p = 709
x = 484, y = 289, p = 773
x = 484, y = 729, p = 1213
x = 484, y = 1225, p = 1709
x = 529, y = 64, p = 593
x = 529, y = 144, p = 673
x = 529, y = 324, p = 853
x = 529, y = 400, p = 929
x = 529, y = 484, p = 1013
x = 529, y = 625, p = 1154
x = 529, y = 900, p = 1429
x = 529, y = 1024, p = 1553
x = 529, y = 1444, p = 1973
x = 529, y = 1600, p = 2129
x = 576, y = 1, p = 577
x = 576, y = 25, p = 601
x = 576, y = 361, p = 937
x = 576, y = 1225, p = 1801
x = 625, y = 16, p = 641
x = 625, y = 36, p = 661
x = 625, y = 144, p = 769
x = 625, y = 196, p = 821
x = 625, y = 256, p = 881
x = 625, y = 484, p = 1109
x = 625, y = 529, p = 1154
x = 625, y = 576, p = 1201
x = 625, y = 625, p = 1250
x = 625, y = 676, p = 1301
x = 625, y = 1444, p = 2069
x = 676, y = 1, p = 677
x = 676, y = 25, p = 701
x = 676, y = 81, p = 757
x = 676, y = 121, p = 797
x = 676, y = 784, p = 1460
x = 676, y = 961, p = 1637
x = 676, y = 1225, p = 1901
x = 729, y = 4, p = 733
x = 729, y = 100, p = 829
x = 729, y = 400, p = 1129
x = 729, y = 484, p = 1213
x = 729, y = 1024, p = 1753
x = 784, y = 25, p = 809
x = 784, y = 169, p = 953
x = 784, y = 225, p = 1009
x = 784, y = 784, p = 1568
x = 784, y = 1089, p = 1873
x = 784, y = 1369, p = 2153
x = 841, y = 16, p = 857
x = 841, y = 36, p = 877
x = 841, y = 100, p = 941
x = 841, y = 256, p = 1097
x = 841, y = 900, p = 1741
x = 841, y = 1156, p = 1997
x = 841, y = 1296, p = 2137
x = 841, y = 1600, p = 2441
x = 900, y = 121, p = 1021
x = 900, y = 169, p = 1069
x = 900, y = 961, p = 1861
x = 900, y = 1369, p = 2269
x = 961, y = 16, p = 977
x = 961, y = 36, p = 997
x = 961, y = 100, p = 1061
x = 961, y = 256, p = 1217
x = 961, y = 400, p = 1361
x = 961, y = 529, p = 1490
x = 961, y = 676, p = 1637
x = 961, y = 841, p = 1802
x = 961, y = 900, p = 1861
x = 1024, y = 9, p = 1033
x = 1024, y = 25, p = 1049
x = 1024, y = 169, p = 1193
x = 1024, y = 225, p = 1249
x = 1024, y = 729, p = 1753
x = 1024, y = 1089, p = 2113
x = 1024, y = 1369, p = 2393
x = 1089, y = 4, p = 1093
x = 1089, y = 64, p = 1153
x = 1089, y = 400, p = 1489
x = 1089, y = 1024, p = 2113
x = 1089, y = 1600, p = 2689
x = 1156, y = 25, p = 1181
x = 1156, y = 81, p = 1237
x = 1156, y = 121, p = 1277
x = 1156, y = 225, p = 1381
x = 1156, y = 1225, p = 2381
x = 1156, y = 1521, p = 2677
x = 1225, y = 4, p = 1229
x = 1225, y = 64, p = 1289
x = 1225, y = 256, p = 1481
x = 1225, y = 324, p = 1549
x = 1225, y = 484, p = 1709
x = 1225, y = 529, p = 1754
x = 1225, y = 576, p = 1801
x = 1225, y = 676, p = 1901
x = 1225, y = 1156, p = 2381
x = 1225, y = 1296, p = 2521
x = 1296, y = 1, p = 1297
x = 1296, y = 25, p = 1321
x = 1296, y = 361, p = 1657
x = 1296, y = 1225, p = 2521
x = 1369, y = 4, p = 1373
x = 1369, y = 64, p = 1433
x = 1369, y = 324, p = 1693
x = 1369, y = 625, p = 1994
x = 1369, y = 900, p = 2269
x = 1369, y = 1024, p = 2393
x = 1369, y = 1600, p = 2969
x = 1444, y = 9, p = 1453
x = 1444, y = 49, p = 1493
x = 1444, y = 169, p = 1613
x = 1444, y = 225, p = 1669
x = 1444, y = 289, p = 1733
x = 1444, y = 625, p = 2069
x = 1521, y = 100, p = 1621
x = 1521, y = 256, p = 1777
x = 1521, y = 1156, p = 2677
x = 1521, y = 1600, p = 3121
x = 1600, y = 1, p = 1601
x = 1600, y = 9, p = 1609
x = 1600, y = 121, p = 1721
x = 1600, y = 289, p = 1889
x = 1600, y = 784, p = 2384
x = 1600, y = 1089, p = 2689
x = 1600, y = 1369, p = 2969
x = 1600, y = 1521, p = 3121
Member
Posts: 10,001
Joined: Nov 28 2005
Gold: 270.00
Nov 23 2011 10:39pm
Quote (abcmaster @ 22 Nov 2011 09:56)
imo müsste (x/|x| + y/|y|) / 2 ne lösung sein
zumindest geometrisch (vllt hab ich später zeit ein bild zu malen)



jo, sowas in der Art hatte ich mir auch gedacht, war mir für einen punkt (von 23 in der ganzen übung) allerdings zuviel arbeit ^^
Member
Posts: 416
Joined: Oct 14 2011
Gold: 1.00
Warn: 10%
Nov 24 2011 04:22am
Quote (fernsehen123 @ 24 Nov 2011 03:26)
so, jetzt hab ich noch ein paar zahlen gefunden, für die x^2+y^2=p gilt, wobei p eine primzahl ist:

[...]
x = 256, y = 784, p = 1040
x = 289, y = 841, p = 1130
x = 361, y = 841, p = 1202
x = 400, y = 1600, p = 2000
x = 441, y = 441, p = 882
x = 529, y = 625, p = 1154
x = 625, y = 529, p = 1154
x = 625, y = 625, p = 1250
x = 676, y = 784, p = 1460
x = 784, y = 784, p = 1568
x = 961, y = 529, p = 1490
x = 1225, y = 529, p = 1754
x = 1369, y = 625, p = 1994
x = 1600, y = 784, p = 2384


p=1754 usw mmh ist klar offensichtliche primzahl :D

da scheint was schief zu laufen :P evtl liegts an n/i-floor(n/i) ? dachte bei n/i wird automatisch abgerundet da beide int sind (zumindest in java)



e
2000 beste primzahl :D

This post was edited by MultiKulti on Nov 24 2011 04:26am
Member
Posts: 416
Joined: Oct 14 2011
Gold: 1.00
Warn: 10%
Nov 24 2011 04:33am
Quote (fernsehen123 @ 24 Nov 2011 03:15)
hab mal wieder was programmiert
der erfahrene seemann erkennt, dass ich meine c++ grundkenntniße nur nebenbei zulehgen kann
hauptberuflich bin ich nähmlich gerüstbauer und arbeite mit langen stangen :)

Code
#include <iostream>
#include <cmath>
using namespace std;

bool isprime(int n)
{
     bool prime = true;
     for (int i=1; i<=pow(n,0.5); i++)
     {
           if (n/i - floor(n/i) == 0)
           {
                 prime = false;
                 i = n;
           }
     }
     return prime;
}

int main()
{
     cout << isprime(3) << " lol ";
}


also ich denke du könntest dir die überprüfung der teilbarkeit einfacher machen durch n % i (rest bei division). wenn das 0 ist, dann ist n durch i teilbar und nicht prim

abgesehen davon wird immer nur die teilbarkeit durch die höchste zahl überprüft, denn prime wird immer neu überschrieben (auch wenn es einmal false war kann es wieder true werden was ja keinen sinn ergibt)
da solltest du zumindest nach prime ein break einfügen (zumindest in java ^^)
oder was bewirkt pow(n,0.5)? hab ich nicht kapiert ^^
Member
Posts: 10,001
Joined: Nov 28 2005
Gold: 270.00
Nov 24 2011 04:35am
hab schon länger kein cpp mehr benutzt, aber wenn du int durch int teilst bleibt das imho ein int, ergo ergibt dein programm keinen sinn, da eh abgeschnitten wird, ein *1.0 könnte helfen. ich weiss gerade nicht was floor bei einer ganzen zahl macht, ob 3 z.B. 3 bleibt oder zu 2 wird (vermute ersteres) aber an sich sollte dein program entweder alle zahlen als primzahlen erkennen oder keine.

*edit* Returns the largest integral value that is not greater than x.


This post was edited by Necroman87 on Nov 24 2011 04:36am
Banned
Posts: 1,181
Joined: Feb 22 2011
Gold: 0.10
Warn: 40%
Nov 24 2011 04:38am
Quote (Necroman87 @ 24 Nov 2011 12:35)
hab schon länger kein cpp mehr benutzt, aber wenn du int durch int teilst bleibt das imho ein int, ergo ergibt dein programm keinen sinn, da eh abgeschnitten wird, ein *1.0 könnte helfen. ich weiss gerade nicht was floor bei einer ganzen zahl macht, ob 3 z.B. 3 bleibt oder zu 2 wird (vermute ersteres) aber an sich sollte dein program entweder alle zahlen als primzahlen erkennen oder keine.


lieber mal double oder float nehmen
Member
Posts: 10,001
Joined: Nov 28 2005
Gold: 270.00
Nov 24 2011 04:38am
Quote (MultiKulti @ 24 Nov 2011 11:33)
also ich denke du könntest dir die überprüfung der teilbarkeit einfacher machen durch n % i (rest bei division). wenn das 0 ist, dann ist n durch i teilbar und nicht prim

abgesehen davon wird immer nur die teilbarkeit durch die höchste zahl überprüft, denn prime wird immer neu überschrieben (auch wenn es einmal false war kann es wieder true werden was ja keinen sinn ergibt)
da solltest du zumindest nach prime ein break einfügen (zumindest in java ^^)
oder was bewirkt pow(n,0.5)? hab ich nicht kapiert ^^


prime wird für einen funktionsaufruf nur einmal auf true gesetzt

pow(n,0.5) berechnet n^(0.5) ergo wurzel n, das ganze soll das Heronverfahren implementieren ;)

*edit* mit der modulorechnung hast du natürlich recht, das ist einfacher und weniger fehleranfällig

This post was edited by Necroman87 on Nov 24 2011 04:39am
Member
Posts: 6,816
Joined: Sep 29 2007
Gold: 22,886.00
Nov 24 2011 07:28am
also fuer euch mal die loesung, alle primzahlen mit p kongruent zu 1 mod 4
fuer alle zahlen n aus N muss die primfaktorzerlegung so sein, dass die primzahlen 3 mod 4 in gerader ordnung vorkommen muss
Member
Posts: 40,403
Joined: Dec 3 2010
Gold: 151,820.00
Nov 24 2011 07:36am
hahaha, wie ihr alle anbeißt :D
hab halt erst nen ziemlich fehlerhaften code gepostet, das mit floor() ist voll fürn arsch^^ hab auch % benutzt nachher
außerdem habe ich die schleife von i=1 schon laufen lassen, also wären zahlen nur dann primzahlen, wenn sie nicht durch 1 teilbar sind xD
naja, der aktuelle code sieht so aus:

Code
#include <iostream>
#include <cmath>
using namespace std;

bool isprime(int n)
{
     bool prime = true;
     for (int i=2; i<=pow(n,0.5); i++)
     {
           if (n%i == 0)
           {
                 prime = false;
                 i = n;
           }
     }
     return prime;
}

int main()
{
     int n;
     cin >> n;

     for (int i=1; i<=n; i++)
     {
           for (int j=1; j<=n; j++)
           {
                 if (isprime(pow(i,2)+pow(j,2)))
                       cout << "x = " << pow(i,2) << ", y = " << pow(j,2) << ", p = " << pow(i,2)+pow(j,2) << endl;
           }
     }
}


allerdings muss da ja immer noch was falsch sein wegen 1754... mal sehen
Go Back To Deutsch Topic List
Prev1148149150151152265Next
Add Reply New Topic New Poll