Witam
Mam takie pytanko, mam liczbę 0.1234 lub też -0.1234. Co muszę zrobić żeby po pobraniu tej liczby wypisywało mi .1234 i -.1234, ma usunąć zero.
Dzięki
Witam
Mam takie pytanko, mam liczbę 0.1234 lub też -0.1234. Co muszę zrobić żeby po pobraniu tej liczby wypisywało mi .1234 i -.1234, ma usunąć zero.
Dzięki
pobierz ją jako napis (string, tablicę charów itp) i usuń pierwszy (zerowy) znak ew nie wyświetlaj go.
zamień na stringa i w stringu szukaj kropki. Nie znalazłem nic o tym by się dało tak formatować tekst printfem czy coutem jak byś chciał
#include <iostream>
#include <string>
using namespace std;
int main()
{
string zmienna = "3.14159";
cout << zmienna.c_str() + zmienna.find(".");
}
tylko musisz mieć pewność że ta kropka występuje. Jeżeli nie wiesz to musisz najpierw to sprawdzić wcześniej przed wyświetleniem
char s[10];
float val = 0.23;
if ( val < 0 && val > -1)
{
sprintf(s, "%f", -val);
s[0] = '-';
}
else
sprintf(s, "%f", val);
printf("%s", (s[0] == '0' && val >= 0 ? s + 1 : s ));