Notacja naukowa

0

Witam! Szybkie pytanie. Mam zmienną typu float zapisaną w notacji naukowej (np. 1,23e+2) i mam problem bo z jakiegoś powodu nie mogę do tej liczby nic dodać. Jak to zrobić ? Dzięki za pomoc :D

@Edit

Link do kodu: KOD

1

A kod?

Rozumiesz DOBRZE zagadnienia liczb zmiennoprzecinkowych? Masz świadomość, ze to jest po prostu LICZBA, która czasem BYWA drukowana w postaci naukowej?
Zagadnienia dokładności i reprezentacji. https://pl.wikipedia.org/wiki/Liczba_zmiennoprzecinkowa

Ile chcesz dodać? Skąd wnioskujesz, ze nie działa?

0

zdajesz sobie sprawę, że 1,111667E-07 to 0.000000111667 (o ile się w zerach nie machnąłem). Przy współrzędnych o wartości 300 to jest "pan pikuś"

0

Warto przeczytać o liczbach zmiennoprzecinkowych : https://eduinf.waw.pl/inf/alg/006_bin/0021.php.
Każdy szanujący się programista powinien to wiedzieć .

Liczby zmiennoprzecinkowe IEEE 754 pojedynczej precyzji tak wyglądają w pamięci :

using System;
namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            float varFloat = 100f;
            Console.WriteLine(varFloat);
            int poz = 31;
            unsafe
            {
                 int*v =(int*) &varFloat;

                for (int i = 0; i < 32; i++)
                {
                    Console.CursorLeft = poz;
                    if ((*v & 1) == 1) Console.Write("1");
                    else
                        Console.Write("0");
                    *v = *v >> 1;
                    poz--;
                }
            }
            Console.WriteLine();
        }
    }
}
0

Zamykam temat. Liczba jest zbyt mała żeby można było zobaczyć efekt dodania jej do pozycji Y obiektu tak jak pisał @abrakadaber. Dziękuję za pomoc :)

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