Post view

Faktorisierungsfunktion Dev c++ Programm

Voila hier ein kleines Programm, um die Faktorisierungsfunktion anzuwenden.

Die Größen der Laufvariablen können noch erweitert werden, x ist aber meistens ziemlich klein !

Das Programm funktioniert wie folgt:.

y = Die Hälfte der Basis der Quadratzahl, die direkt über der zu faktorisierenden Zahl liegt. Im Beispiel (Z = 1047) darüberliegende Quadratzahl: 1089 = 33^2, also y = 33-1/2 = 16

Bei ungeraden Quadratbasen also minus 1 geteilt 2!!! Sonst einfach geteilt 2.

AD = Die Differenz zwischen dieser Quadratzahl und der zu faktorisierenden Zahl

Im Beispiel: 1089 - 1047 = 42

Das Programm gibt mit n die Quadratbasis aus, zu der Z addiert wird, sodass ein weiteres Quadrat entsteht und Z durch diese Quadratdifferenz faktorisiert werden kann. 

Im Beispiel n= 173

Außerdem benennt es den Wert x, der zum vorgegebenen y addiert werden muss, damit 2*(y+x) oder 2*(y+x)+1 die Basis des Quadrats ergeben, von dem Z abgezogen wird, um zum n^2 zu führen:

Beispiel x = 72, also (2*y+x) = 2*(16+72) = 2*88 = 176 und

LÖSUNG 176^2 - 173^2 = 1047  = 349*3

 zudem die triviale Lösung 524^2 - 523^2 = 1* 1047

Das Programm: 

 

int main(void)

{int x;

int y;

int z;

int bingo1q;

int n;

int bingo1;

int AD;

int ADmin;

int c;

int b;

int a;

int d;

int count;

 

 

 

std::cout<< "  Zahl mit FF analysieren y eingeben  \n";

std::cin >> y;

std::cout<< "  Zahl mit FF analysieren AD eingeben  \n";

std::cin >> AD;

 

 

x=1;

while(x<1000){

 

a=4*x*x;  

b=8*y*x; 

ADmin=AD-1;

c=4*y-ADmin;

 

bingo1=((a+b)-c); 

 

 

for(n=1;n<1000;n++)

{

bingo1q=n*n;

 

if(bingo1==bingo1q)

{

std::cout << " \n Bingo1q: x    "<<x<< "    und Quadratbasis n   " << n <<"  \n \n";

std::cout<< "  Fortsetzen? Ergebnisnummer eingeben  \n";

std::cin >> count;

}

 

 

else

 continue;

}

x++;

 

}}

ZifferZahlZitat 27.01.2019 0 83
Comments
Order by: 
Per page:
 
  • There are no comments yet
Rate
1 votes
Actions
Recommend
Categories
Books (14 posts)
Entertainment Blogs (28 posts)
Tech News (1 posts)