hat jemand eine idee...?
-
ich habe diese aufgabe und hab diese code geschrieben:
#include <cstdlib>
#include <iostream>using namespace std;
int main(int argc, char *argv[])
{
/Schreiben Sie ein Programm, welches prüft, ob in einer
einzulesenden Zahl n des Typs unsigned int das an der
einzulesenden Position p (ebenfalls vom Typ unsigned int)
befindliche Bit gesetzt ist. Wenn ja, wird true ausgegeben,
andernfalls false. Zu Beginn gibt das Programm den für p
zulässigen Wertebereich aus./
unsigned int n ,p;
cout << " n:" ;
cin >>n;
cout << "p:";
cin >> p;
cout << (n >> p ) << endl;system("PAUSE");
return EXIT_SUCCESS;
}wäre sehr dankbar für jede antwort.
mfg toni
-
((n >> p) & 1)
-
hast du die aufgabe gelesen?
ich habe noch mal geschrieben und klapt wieder nicht
#include <cstdlib>
#include <iostream>using namespace std;
int main(int argc, char *argv[])
{
/Schreiben Sie ein Programm, welches prüft, ob in einer
einzulesenden Zahl n des Typs unsigned int das an der
einzulesenden Position p (ebenfalls vom Typ unsigned int)
befindliche Bit gesetzt ist. Wenn ja, wird true ausgegeben,
andernfalls false. Zu Beginn gibt das Programm den für p
zulässigen Wertebereich aus./
unsigned int n ,p;
cout << " n:" ;
cin >>n;
cout << "p:";
cin >> p;
cout <<boolalpha
<< n << " n:" << p <<((n >> p )& 1 ) << endl;system("PAUSE");
return EXIT_SUCCESS;
}
-
das << ist mehrdeutig.
das ((n >> p) & 1) sagt dir, ob an bit p der zahl n ein bit gesetzt ist.
und ja, ich habe die aufgabe gelesen.
-
compielirst du bitte den code und dann wirds du mich recht geben
e geht nicht so ammindesten glaube ich.mfg toni
-
ich hab doch gesagt, dass das << mehrdeutig ist. hast du das ueberhaupt wahrgenommen?
so gehts:
cout << "n: "; cin >> n; cout << "p: "; cin >> p; cout << boolalpha; cout << "n: " << n << endl; cout << "p: " << p << endl; cout << "gesetzt? " << ((n >> p) & 1) << endl;wenn programmierer reden, dann sagen sie auch was.
-
aber die zeigr immer den wert 0
und das ist nicht inordnung mein freund...mfg toni
-
das stoert dich? omg ich fass es nicht...
cout << "gesetzt? " << !!((n >> p) & 1) << endl;