Funcții matematice în C

Calculele matematice nu se limitează la operațiile aritmetice. Pe lângă acestea, puteți găsi rădăcini, module, logaritme, funcții trigonometrice etc. Să învățăm să folosim funcții similare în programele noastre.







Pentru a utiliza funcții matematice, trebuie să includeți fișierul header mateh.h. Există multe funcții diferite definite în ea, dar pentru moment vom lua în considerare următoarele:

Unele funcții matematice

fabs (x) modulul numărului x
sqrt (x) este rădăcina pătrată a numărului x
sin (x) sinusul numărului x (x în radiani)
cos (x) este cosinusul numărului x (x în radiani)
(x, y) computere x y
exp (x) calculul e x
log (x) este logaritmul natural al numărului x
log10 (x) logaritmul zecimal al numărului x

Două puncte importante.
  • Toate funcțiile returnează o valoare dublă.
  • Parametrii funcției sunt numere reale (duble), dar puteți trece și numere întregi. Aceasta va cauza o conversie de tip implicită. Un compilator cu un număr întreg, de exemplu 3, va face un real 3.0.

Exemple.
Se dau lungimile picioarelor unui triunghi drept. Calculați lungimea hypotenuse. O simplă problemă privind cunoașterea teoremei pitagoreene.







Calculați sinusul unghiului introdus de la tastatură. Unghiul este introdus în grade.

Acest program are ceva de spus. Funcțiile trigonometrice definite în lucrarea math.h cu o măsură radiantă a unghiului. Oamenii sunt mai obișnuiți să lucreze cu grade. Prin urmare, în acest program, am tradus anterior valoarea de la grade la radiani. Dacă nu, rezultatul este greșit. Verifică-l pentru tine.

Conversia de tip implicită

Cu o conversie de tip explicită, am indicat în paranteze, înainte de valoare, tipul la care trebuie adusă valoarea dată. Într-o transformare implicită, acest lucru nu este necesar. Compilatorul va selecta automat tipul de care aveți nevoie.

Conversiile de tip implicit sunt efectuate în următoarele cazuri:

  1. înainte de a trece argumentele la această funcție (ca în exemplul nostru rădăcină: Lista 1.)
  2. Efectuați operații aritmetice cu diferite tipuri de argumente
  3. înainte de alocare

Reguli de conversie de tip implicită

  • dacă se efectuează operații aritmetice cu diferite tipuri de argumente. Ambele argumente conduc la un tip mai mare.
    Comanda tip: int
  • la alocare. Valoarea din dreapta operatorului de alocare este convertită la tipul variabilei din stânga operatorului de atribuire. În acest caz, dacă un tip mai mare este atribuit unui mai mic, atunci poate apărea o pierdere de precizie.

int + float va fi automat convertit la float + float
float / int va fi automat convertit în float / float
dublu * float va fi convertit în dublu * dublu
int = duble duble vor fi convertite la int cu pierderea părții fracționare
float = int int va fi convertit în float







Articole similare

Trimiteți-le prietenilor: