Jak podzielić dwie liczby całkowite i uzyskać odpowiedź podwójną lub zmienną w C?Jak uzyskać ułamki w liczbie całkowitej?
Odpowiedz
Musisz rzucić jeden lub drugi na float
lub .
int x = 1;
int y = 3;
// Before
x/y; // (0!)
// After
((double)x)/y; // (0.33333...)
x/((double)y); // (0.33333...)
Oczywiście, upewnij się, że jesteś zapisać wynik podziału w double
lub float
! Nie ma to żadnego znaczenia, jeśli przechowujesz wynik w innym int
.
chodzi @ komentarzu Czadu ("[tailsPerField setIntValue:tailsPer]
"):
Nie przechodzą podwójny lub unosić się setIntValue
gdy masz setDoubleValue
itd dostępny. Jest to prawdopodobnie ten sam problem, o którym wspomniałem w komentarzu, w którym nie używasz jawnej obsady, a otrzymujesz nieprawidłową wartość, ponieważ double jest czytany jako int.
Na przykład w moim systemie, plik:
#include <stdio.h>
int main()
{
double x = 3.14;
printf("%d", x);
return 0;
}
wyjścia:
1374389535
ponieważ dwukrotnie próbowano odczytać jako int.
Dobrze. Konwertuj liczby całkowite przed wykonaniem podziału. – DOK
podwójne tp; podwójne x; x = tn; // (tn jest int) zwykle 10 tp = x/fn; // fn jest również int (zwykle 5), ale nadal otrzymuję 0 –
@Chad: Kod wygląda dobrze. Jak ustaliłeś, że wynik wynosi zero? Czy robisz coś w stylu 'printf ("% d ", tp)'? To próbuje wydrukować zawartość podwójnego jako int, a nie uzyskasz poprawnych wyników. Twój kompilator powinien był Cię ostrzec, jeśli to zrobiłeś. Dla podwójnego ciągu formatu jest '% lf'. –
Użyj odlewania typu. Przykładowo
main()
{
float a;
int b=2, c= 3;
a=(float)b/(float)c; // This is type-casting
printf("%f",a);
}
- 1. Jak rozbroić określony bit w liczbie całkowitej
- 2. Jak konwertować ułamki dziesiętne na ułamki szesnastkowe?
- 3. Modyfikuj bity w liczbie całkowitej w Pythonie
- 4. Jak najlepiej zaokrąglić ułamki dziesiętne w C#
- 5. Iterowanie za pomocą cyfr w liczbie całkowitej w C
- 6. Nadpisywanie zakresu bitów w liczbie całkowitej w sposób ogólny
- 7. Czy istnieje sprytny sposób na "podwajanie" bitów w liczbie całkowitej?
- 8. Liczba bitów reprezentacji wartości w liczbie całkowitej, zgodnie z normą?
- 9. Wykonanie funkcji opartej na liczbie całkowitej na podstawie parametru wykonawczego
- 10. Jak mogę pobrać integer z NSDictionary i umieścić go w liczbie całkowitej?
- 11. Jak usunąć ".0" w liczbie całkowitej podczas używania podwójnego w java?
- 12. Jak wybrać n-tą cyfrę w dużej liczbie całkowitej w javascript?
- 13. Jak czytać bajt i zapisać wartość ASCII w liczbie całkowitej w C++
- 14. W Pythonie, jak policzać końcowe zera w łańcuchu lub liczbie całkowitej?
- 15. Wykonaj moduł w ogromnej liczbie?
- 16. Jak uzyskać dane bitowe od wartości całkowitej w C?
- 17. Jak uzyskać 0-padded reprezentacji binarnej liczby całkowitej w java?
- 18. Jak posortować cyfry w liczbie?
- 19. Czy istnieją jakieś implementacje C z bitem wypełnienia w (nie) reprezentowanej liczbie całkowitej?
- 20. Ciągi konkatenacji w mniejszej liczbie
- 21. Jak sprawić, aby plik wsadowy czekał na ułamki sekundy?
- 22. najlepsza praktyka (y) w liczbie pojedynczej lub liczbie mnogiej?
- 23. Skonfiguruj android EditText, aby zezwalać na ułamki dziesiętne i negatywy.
- 24. Jak zapobiec największej liczbie oszustów w ankietach?
- 25. Jak złączyć $ 1 Przy liczbie w regex
- 26. Czy podwójna wartość równa liczbie całkowitej będzie zawsze rzutowana na tę liczbę całkowitą?
- 27. Jak sprawdzić, czy podane słowo jest w liczbie mnogiej lub w liczbie pojedynczej?
- 28. Jak zaokrąglić do liczby całkowitej w R?
- 29. Jak uniknąć przepełnienia liczby całkowitej?
- 30. Jak do wielkości całkowitej tablicy
„dziesiętną” jest reprezentacją (jako „szesnastkowym” „”, „ósemkowej binarnej”), który stosuje się do całkowitej lub numery liczbami całkowitymi. Masz na myśli, jak sądzę, "uzyskaj wynik nie będący liczbą całkowitą". – leonbloy
W ten sposób uzyskuje się ułamki (liczby wymierne) z podziałem całkowitym 'printf ("% d% d /% d "x/y, x% y, y);'. Czy na pewno nie chcesz uzyskać wyniku niecałkowitego? – Brendan