Operator konwersji unsigned int

Operator konwersji unsigned int
  • Rejestracja: dni
  • Ostatnio: dni
1

Mam taki tekst zadania [jeden podpunkt]
Do struktury LiczbaDwucyfrowa dodaj implementację operatora konwersji na unsigned int. Definicję umieść poza strukturą.
Z tego co wiem unsigned int przyjmuje wartości nieujemne <0, ileśtam>
Jak niby mam napisać ten operator konwersji ? Ma on działać na zasadzie wartości bezwzględnej ? Trochę byłoby to bez sensu, skoro jest funkcja abs.
Może rzutowanie ? Tylko że z rzutowania na unsigned int z liczby np -557 wychodzi 474726276[itp]

Czyli zasadnicze pytanie. Na czym ma polegać operator konwersji na usigned int ?

DA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 25
0

Tak jak napisałeś - wartość bezwzględna raczej...

Kopiuj
int a = 0;
unsigned int x;
if(a>0) x=a; else x = a-(a<<1);
cout<<x;
byku_guzio
  • Rejestracja: dni
  • Ostatnio: dni
0

O to już musisz zapytać nauczyciela czego on oczekuje, możesz np. przyjąć, że wartości < 0 po konwersji to będzie 0.

@darkfucker: ten kod jest okrutny - strasznie nieczytelny.

Kopiuj
... else x = -a; ...

krócej, czytelniej, sensowniej.

  • Rejestracja: dni
  • Ostatnio: dni
0

ok dzieki, nie mam sie jak zapytać [chyba że mail] bo to zdaania z neta

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.