Problem - wynik dzielenia zawsze wynosi 2

Odpowiedz Nowy wątek
2019-10-01 16:13
0

#include<iostream>
using namespace std;
int c1, liczba;
int main()
{
cin >> liczba;
c1=liczba/1000000000;
cout << c1;
}

Wytłumaczy mi ktoś dlaczego za każdym razem (niezależnie od tego co wpisze) wyjście wynosi 2?

edytowany 1x, ostatnio: Ktos, 2019-10-01 16:29
a co wpisujesz? - Azarien 2019-10-01 16:27
Postaraj się nadawać bardziej sensowne tytuły swoim wątkom w przyszłości. - Ktos 2019-10-01 16:30

Pozostało 580 znaków

2019-10-01 16:20
1

Witam.

zamień typ int na float.

A dzieje się tak pewnie dlatego że liczba wychodzi po przecinku i program zaokrągla do liczb całkowitych.

Życzę miłego dnia/wieczora.

Pozostało 580 znaków

2019-10-01 16:35
0

U mnie działa https://wandbox.org/permlink/PkghzVBaegQ9I8C1
dopóki liczby mieszczą się w zakresie int-a.


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.

Pozostało 580 znaków

2019-10-01 19:47
0
pestka12 napisał(a):

Witam.

zamień typ int na float.

A dzieje się tak pewnie dlatego że liczba wychodzi po przecinku i program zaokrągla do liczb całkowitych.

Życzę miłego dnia/wieczora.

Po zmienieniu zmiennej na float i wpisaniu 3000000000 wyjście wynosi 3e+006. Jak się pozbyć tego e+006?

edytowany 1x, ostatnio: F3MB, 2019-10-01 19:58

Pozostało 580 znaków

2019-10-02 01:16
0
#include <iomanip>

    cout.setf(ios::fixed); // raz na początku wystarczy
    cout << setprecision(0) << c1;

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0