Fmod ()
Ta funkcja daje resztę, gdy dwie zmienne x i y, licznik i mianownik przechodzą metodę podziału. Innymi słowy, gdy x jest podzielone przez y, zmiennoprzecinkowy punkt, resztę dziesiętną jest uzyskiwana. Ta funkcja jest również znana jako funkcja biblioteki, ponieważ używa pliku nagłówka CMATH w kodzie źródłowym. Uzyskuje się pozostałą część liczbowego licznika/ mianownika, który jest zaokrąglony w kierunku zeru.
fmod (x, y) = x - cytat * yCytat jest skróconą wartością (zaokrągloną w kierunku zera), która jest wynikiem x/y.
Składnia:
Podwójny wynik = fmod (zmienna x, zmienna y),Tutaj x i y to dwie zmienne dla różnych typów danych, które są przekazywane jako parametr z funkcji.
Prototyp fmod ()
dble fmod (dble x, dble y);
flt fmod (flt x, flt y);Funkcja przyjmuje dwa argumenty, takie jak w podwójnych, pływach, długich typach danych podwójnych, liczb całkowitych lub mieszanych. Podobnie wynikowy jest zwracany przez wartość trzech typów danych.
Implementacja funkcji FMOD ()
Aby zaimplementować FMOD () w systemie Ubuntu Linux, potrzebujemy narzędzia edytora tekstu dla kodu źródłowego i terminali Ubuntu do wykonania wartości wynikowej. W tym celu użytkownik musi mieć uprawnienia do łatwego dostępu do aplikacji.
Przykład 1
W tym przykładzie obliczona pozostała część licznika i mianownika zostanie obliczona. Aby wykonać program C ++, potrzebujemy dwóch podstawowych plików nagłówkowych, które należy uwzględnić w kodzie. Jednym z tych dwóch jest „iostream”. Ta biblioteka pozwala nam korzystać z funkcji wejściowych i wyjściowych. Na przykład, aby wyświetlić dowolną instrukcję, potrzebujesz Cout, który jest włączony z powodu tej biblioteki. Po drugie, potrzebujemy „cmath”. Jak sama nazwa wskazuje, jest ona związana z matematyką i odpowiedzialna za zapewnienie wszystkich operacji w programie.
#włączaćW programie głównym bierzemy dwie podwójne zmienne. Podejście przypisywania wartości do zmiennych i stosowania operacji na nich jest podobne do funkcji Modf ()++. Obie zmienne zawierają w nich dodatnie podwójne wartości. Wynikowa zmienna będzie również miała podwójne typ danych, ponieważ obie zmienne wejściowe zawierają podwójne wartości, więc wynik musi być podwójna wartość.
Wynik = fmod (x, y);Ta funkcja obliczy pływającą odpowiedź notacji dziesiętnej. Wynik obu wartości jest wyświetlany za pomocą cięcia „/”.
Druga instrukcja wykonuje również tę samą funkcję, ale jedna zmienna zawiera dodatnią wartość podwójną, a druga zmienna zawiera wartość ujemną. Licznik ma wartość ujemną. Teraz zapisz kod w pliku edytora tekstu, a następnie przejdź do terminalu Ubuntu w celu wykonania kodu. W systemie operacyjnym Linux potrzebujemy kompilatora do wykonania kodu C ++. Ten kompilator to G++. Potrzebuje pliku wejściowego o kodzie, pliku wyjściowym i „-o”, aby zapisać odpowiednie wyjście.
$ g ++ -o fmod fmod.CTo polecenie skompiluje kod i teraz użyje polecenia wykonania, aby zobaczyć wyniki.
$ ./fmodPo wykonaniu zobaczysz, że w pierwszym przykładzie uzyskano prostą podwójną wartość. Podczas gdy w drugim przypadku, przy użyciu licznika ujemnego, da to ujemną podwójną wartość. Ponadto przeprowadzimy niektóre eksperymenty dotyczące zmiennych wejściowych w dalszej części przykładu.
Przykład 2
Jak w poprzednim przykładowym kodzie, wzięliśmy jedną pozytywną i ujemną wartość tego samego typu danych, który był podwójny. Ale w tym przykładzie jedna zmienna będzie miała typ danych liczb całkowitych, podczas gdy druga będzie miała podwójny typ danych. Zmienna typu danych liczb całkowitych będzie zawierać wartość ujemną. To będzie mianownik. Powstała zmienna będzie miała podwójne typ danych, ponieważ odpowiedź liczby całkowitej i podwójnej wartości ma podwójną wartość.
Spowoduje to dodatnią podwójną wartość. W drugim przypadku wartość x, wartość licznika, jest taka sama, jak w pierwszym fmod () w przykładzie. Ale wartość y, mianownik, jest traktowany jako „0”.
Teraz wykonaj ten kod za pomocą tego samego kompilatora i zobacz, jakie są wyniki pokazane w terminalu.
W pierwszym wierszu wynik będzie wartością dodatnią. Ale w drugim przypadku, gdy użyliśmy wartości zerowej w mianowniku, odpowiedź będzie „nan” (nie liczba). Może to być wartość śmieci. Ogólnie rzecz biorąc, jak wiemy, że wszystko podzielone przez „0” daje wartość 0, więc to samo jest tutaj stosowane.
Przykład 3
Wejście zostanie przejęte zewnętrznie w tym przykładzie. Po wykonaniu programu kompilator wyświetla wiadomość dla użytkownika, aby mógł wprowadzić dane. Ale zarówno wartości licznika, jak i mianownika muszą być w podwójnym typu danych. Funkcja fmod () zostanie zastosowana zarówno do wprowadzonych wartości.
Teraz użytkownik jest proszony o dostarczenie danych. Obie wartości, które wprowadził użytkownik, są dodatnie, więc odpowiedź będzie dodatnią wartością zmiennoprzecinkową. Zastosowaliśmy różne warunki liczb wejściowych, aby zobaczyć wynikową wartość. Po raz pierwszy użytkownik wprowadził większą wartość licznika niż mianownik. Wartość funkcji FMOD () leży od 0 do 1.
A jeśli użytkownik dostarcza wartość wejściową zarówno w wartościach dodatniach, mniejszej wartości licznika, jak i większego mianownika, wartość jest większa w porównaniu z mniejszą wartością mianownika.
Z drugiej strony, jeśli licznik ma wartość ujemną, wynik jako całość będzie wartością ujemną. Ale jeśli zastosujemy wartość ujemną dla mianownika, nie wpływa ona na wyniki, będzie to dodatnie.
Oznacza to, że dodatnia/ ujemna wartość wynikowa FMOD () zależy od wartości licznika.
Wniosek
Pozostała część zmiennoprzecinkowa dwóch wartości, licznika lub mianownika, jest uzyskiwana za pomocą funkcji FMOD (). Ta funkcja nie tylko zwraca wartość dodatnią, ale także wartość ujemna jest uzyskiwana w zależności od wartości licznika. Niepewny nie uzyskano wartości liczbowej, mając mianownik „0”. Stąd obie zmienne, które są przekazywane jako parametr, muszą być prawidłową liczbą dowolnego typu danych. Wartość typu danych zwracania jest głównie w podwójnej lub float.