| Teodora206454 a întrebat:

Incerc sa fac un program in c++, dar nu pot calcula modulul.
Am scris include si am incercat sa fac abs(a-b), dar imi scrie ca abs nu a fost declarat. Care ar putea fi problema?

Răspuns Câştigător
suntserios
| suntserios a răspuns:

Nu fi chiar 100% sigur ca de fapt este in stdlib.h (cstdlib)

im math.h (cmath) e suprascrisa varianta pentru numere tipurile float double.

7 răspunsuri:
| sltlp a răspuns:

Pentru ca functia abs e in biblioteca math
adauga la inceput
#include
sau
#include
depinde de compilator.
sau incearca folosind
#include
#include

suntserios
| suntserios a răspuns:

Vezi tutorialul

http://www.cplusplus.com/reference/cstdlib/abs/

| CinevaNou a răspuns:

Mie imi merge asta:
#include < iostream>
#include < math.h>

using namespace std;

int main()
{
int a=5, b=9;
cout<< abs(a-b);

}

| TeodorL a răspuns:

Functia pentru modul are nevoie de biblioteca math.h. 100% este in math.h ( 4 ani Informatica intensiv)

| suntserios a răspuns (pentru TeodorL):

Nu fi chiar 100% sigur ca de fapt este in stdlib.h (cstdlib)

im math.h (cmath) e suprascrisa varianta pentru numere tipurile float double.

| vally98 a răspuns:

Pai orice progam in C++ e de forma:
#include
using namespace std;
int main()
{
int?,?,?;
}
iar unde am pus "?" tu trebuie sa declari variabilele(cum e la tine abs)...
Si apropo, in C++ nu se scrie abs(a-b) ci intotdeauna trebuie sa iti apara semnele, adica abs*(a-b).
Sper ca ti-am fost de folos, dar oricum, daca mai ai vreo nelamurire ma poti intreba.Sau daca vrei imi poti da problema si eu sa incerc sa o rezolv.

| Teodora206454 explică (pentru vally98):

Abs nu e variabila, e o functie. Daca o declar variabila nu ajung nicaieri. La chestia cu semnul ai dreptate ca am uitat sa il pun, dar tot acelasi rezultat imi apare. Multumesc oricum ca ai incercat sa ma ajuti.

| suntserios a răspuns (pentru vally98):

Aoleu, nu te mai baga sa dai sfaturi cand esti total pe alaturi.

abs e o FUNCTIE din libraria stdlib.h nu o variabila.