- Dlaczego jak we floacie pomnożę 1/10 * 1 000 000 to nie dostane 100 000?
- Stos – które wywołanie funkcji jest najszybsze?
Dwa pytania z teorii
- Rejestracja: dni
- Ostatnio: dni
- Postów: 3
- Rejestracja: dni
- Ostatnio: dni
- Postów: 607
- bez jej wywoływania - inline. A tak na prawdę to nie wiadomo bo zależy to od implementacji
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Warszawa
- Postów: 535
1:
(1/10/*tutaj masz 0*/)*1000000/*tutaj też masz 0*/
- Rejestracja: dni
- Ostatnio: dni
1./10*1000000- Jeżeli próbujesz coś optymalizować, to zostaw w spokoju konwencje wywołania i optymalizuj co trzeba.
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Warszawa
- Postów: 535
float a=1/10*1000000;//0
float b=1;
b/=10;
b*=1000000;//100000
- Rejestracja: dni
- Ostatnio: dni
- Postów: 3
Ehh, nie pamiętam kodu, ale po operacji 1/10 * 1000000 można otrzymać liczbę zbliżoną do 100000. Jak ktoś zna odpowiedź na to pytanie, mógłby się to wiedzą podzielić...
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Space: the final frontier
- Postów: 26433
@forqed ech liczba 0.1 jest ułamkiem okresowym w systemie o podstawie 2.
Twoje pytanie jest równoważne pytaniu: dlaczego jak zrobie 3*0.(3) to nie wyjdzie mi 1 tylko 0.99999999....
Komputer zwyczajnie nie potrafi zapisać liczby 0.1 dokładnie na skończonej liczbie bitów jaką ma na reprezentacje tej liczby, w efekcie zapisuje tyle ile może, a to będzie za mało.
- Rejestracja: dni
- Ostatnio: dni
@forqed http://4programmers.net/Forum/1222300 1
jeżeli kompletnie nie chcesz zmieniać kodu: http://4programmers.net/Forum/1222283
- Rejestracja: dni
- Ostatnio: dni
- Postów: 3
Może odpowiem tak: nie znam się na programowaniu, ale to mój przechodni przedmiot na studiach, którego muszę znać podstawy. Mam kilka pytań na które nie potrafię sobie odpowiedź - pytam na forum o tematyce programistycznej. Oczekuję odpowiedzi prostej, bez zadawania kolejnych pytań. Wybaczcie, ale jeżeli ktoś nie zna odpowiedzi to nie jest zmuszony do jakiejkolwiek odpowiedzi. Wydaje mi się, że @Shalom odpowiedział dobrze na moje pytanie, takiej formy oczekwiałem.
Ja jestem tylko biednym studentem, który chcę przebrnąć przez ten przedmiot i nie mam czasu na analizowanie artykułów itp. Sesja...