Wie code ich "(-1) hoch i"



  • Bashar schrieb:

    Potenzen mit negativer Basis und nicht-ganzem Exponenten, soso. Da bewegst du dich mathematisch auf dünnem Eis...

    mathematisch ist sowas durchaus erlaubt.
    🙂



  • mathe-freak schrieb:

    Bashar schrieb:

    Potenzen mit negativer Basis und nicht-ganzem Exponenten, soso. Da bewegst du dich mathematisch auf dünnem Eis...

    mathematisch ist sowas durchaus erlaubt.
    🙂

    aber nicht eindeutig.



  • echter Freak schrieb:

    mathe-freak schrieb:

    Bashar schrieb:

    Potenzen mit negativer Basis und nicht-ganzem Exponenten, soso. Da bewegst du dich mathematisch auf dünnem Eis...

    mathematisch ist sowas durchaus erlaubt.
    🙂

    aber nicht eindeutig.

    Hä???? was soll denn nicht eindeutg beim negativen und nicht-ganzen Exponenten sein? Das musst du erst mal erklären.



  • supertux schrieb:

    echter Freak schrieb:

    mathe-freak schrieb:

    Bashar schrieb:

    Potenzen mit negativer Basis und nicht-ganzem Exponenten, soso. Da bewegst du dich mathematisch auf dünnem Eis...

    mathematisch ist sowas durchaus erlaubt.
    🙂

    aber nicht eindeutig.

    Hä???? was soll denn nicht eindeutg beim negativen und nicht-ganzen Exponenten sein? Das musst du erst mal erklären.

    Ist (-1)^(1/2) jetzt +i oder -i? usw. Wenn der Exponent rational mit Nenner q > 0 in gekürzter Schreibweise ist, dann gibt es q Lösungen der Wurzelgleichung und keine kanonische Wahl. Wenn der Exponent nicht mehr rational ist, gibt es sogar unendlich viele Wurzeln.



  • res schrieb:

    Die funktioniert aber leider nur genau für diesen einzelnen Spezialfall.

    Dieser Spezialfall ist doch das Thema des Threads, bzw. das Anliegen von bimbambino.
    Und weil er ja gern eine Funktion implementieren möchte, kann ich ja mal nen Vorschlag posten:
    ( mit demo main 🙂 )

    int _1expI( int I )
    {
    	return I%2?-1:1;
    }
    int main()
    {
    	int i;
    	for ( i = -3; i<4; i++ )
    		printf("-1^%2d = %2d\n", i, _1expI(i));
        return 0;
    }
    


  • proggingmania schrieb:

    int _1expI( int I )
    {
    	return I%2?-1:1;
    }
    

    das mit den branches hatten wir doch schon. wie wärs mal zur abwechslung mit einem berechneten ergebnis?

    #define _1expI(I) (-((I)&1)|1)
    

    🙂



  • bitbastel-freak schrieb:

    #define _1expI(I) (-((I)&1)|1)
    🙂

    Ja, das Macro ist super 👍

    Aber branches ? Was sind branches, hatten wir die schon ? Hab ich was verpasst ? 😕





  • Habe die Anweisungen von Bashar
    genommen. Die schwebten mir auch im Kopf rum,
    dachte aber, dass man es noch irgendwie anderes machen kann.

    Egal.
    Vielen dank.



  • br schrieb:

    http://en.wikipedia.org/wiki/Branch_(computer_science) 🙄

    Ach das. Sag das doch gleich, das hatten wir doch schon 🙄

    :p



  • echter Freak schrieb:

    Ist (-1)^(1/2) jetzt +i oder -i? usw. Wenn der Exponent rational mit Nenner q > 0 in gekürzter Schreibweise ist, dann gibt es q Lösungen der Wurzelgleichung und keine kanonische Wahl. Wenn der Exponent nicht mehr rational ist, gibt es sogar unendlich viele Wurzeln.

    Klar, im |R gibt es keine Lösungen dafür, aber in |C und dort ist es wohldefiniert.



  • supertux schrieb:

    echter Freak schrieb:

    Ist (-1)^(1/2) jetzt +i oder -i? usw. Wenn der Exponent rational mit Nenner q > 0 in gekürzter Schreibweise ist, dann gibt es q Lösungen der Wurzelgleichung und keine kanonische Wahl. Wenn der Exponent nicht mehr rational ist, gibt es sogar unendlich viele Wurzeln.

    Klar, im |R gibt es keine Lösungen dafür, aber in |C und dort ist es wohldefiniert.

    Hast du meinen Beitrag verstanden? Welche der verschiedenen Wurzeln willst du nehmen?


Anmelden zum Antworten