702 Stimmen

Teilen Sie eine Zahl durch 3, ohne * , / , + , - , % Operatoren zu verwenden

Wie würden Sie eine Zahl durch 3 teilen, ohne die *, /, +, -, % Operatoren zu verwenden?

Die Zahl kann positiv oder negativ sein.

2 Stimmen

Dies ist schwer, da Sie + oder - nicht verwenden können. Sie könnten technisch gesehen einen Addierer nur unter Verwendung von logischen Operatoren implementieren...

1 Stimmen

Sind Sie zu 100% sicher, dass + in der Liste der nicht verwendbaren Elemente stand?

0 Stimmen

Ist der unäre +, - erlaubt?

-2voto

Adnan Zahid Punkte 563

Hier ist eine Methode, die mir mein Großvater beigebracht hat, als ich ein Kind war. Es erfordert die Verwendung von + und / Operatoren, macht aber Berechnungen einfach.

Addiere die einzelnen Ziffern zusammen und prüfe dann, ob es ein Vielfaches von 3 ist.

Diese Methode funktioniert jedoch für Zahlen über 12.

Beispiel: 36,

3+6=9, was ein Vielfaches von 3 ist.

42,

4+2=6, was ein Vielfaches von 3 ist.

2 Stimmen

Wie bestimmen Sie, was die Ziffern ohne Division durch 10 sind? Wie fügen Sie sie ohne Verwendung von + hinzu?

2 Stimmen

Außerdem bestimmt dies, ob eine Zahl ein Vielfaches von 3 ist, es sagt Ihnen nicht, von welcher Zahl es ein Vielfaches ist. In Ihrem Beispiel erhalten Sie keine 12 oder 14.

-2voto

Lee Netherton Punkte 19699

Gutes altes bc:

$ num=1337; printf "scale=5;${num}\x2F3;\n" | bc
445.66666

-2voto

Eight Punkte 4174

Verwendung eines Linux-Shell-Skripts:

#include 
int main()
{
    int number = 30;
    char command[25];
    snprintf(command, 25, "echo $((%d %c 3)) ", number, 47);
    system( command );
    return 0;
}

Siehe meine andere Antwort.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X