Informatică, întrebare adresată de micumanuela, 9 ani în urmă

Va rog ajutati-ma!. Programele trebuie rezolvate in c++.
1.Valoarea absolută a unui număr întreg – abs().
2.Rotunjirea unei valori reale în virgulă mobilă –ceil() şi floor()
3.Un program care sa contina toate functiile trigonometrice: sinus,cosinus,tangenta,cotangenta,arcsinus,arccosinus,arctangenta.
4.Funcţia exponenţială - e^x.
5.Restul împărţirii unui real la un număr real fmod().
6.Calculul rădăcinii pătrate a unei valori sqrt().


blindseeker90: Tu vrei sa ai propriile tale functii matematice pentru fiecare dintre aceste cerinte? Sau vrei doar sa ai niste exemple facute folosind libraria cmath?
micumanuela: Am nevoie de niste exemple.
blindseeker90: Deci vrei doar ca aceste functii sa fie folosite in niste exemple, in program, atat
micumanuela: da

Răspunsuri la întrebare

Răspuns de blindseeker90
2
Ti-am facut un program interactiv care iti arata exemple din toate aceste operatii:
#include <iostream>
#include <cmath>
using namespace std;


int main(){
double a,b;
int opt,opt_n,c,d;
cout<<"Operatii numerice, apasa 1\nOperatii trigonometrice apasa 2:";
cin>>opt;
if(opt==1){
cout<<"Introduceti primul numar real: ";
cin>>a;
cout<<"Introduceti al doilea numar real: ";
cin>>b;
//operatiunea de obtinere valoare absoluta
cout<<"Valoarea rotunjita pozitiv pentru primul: "<<ceil(a)<<endl;
cout<<"Valoarea rotunjita pozitiv pentru al doilea: "<<ceil(b)<<endl;
cout<<"Valoarea rotunjita negativ pentru primul: "<<floor(a)<<endl;
cout<<"Valoarea rotunjita negativ pentru al doilea: "<<floor(b)<<endl;
cout<<"Exponentiala prim numar: apasa 1\nExponentiala al doilea numar: apasa 2: ";
cin>>opt_n;
cout<<"Exponentiala numar: ";

if(opt_n==1){
cout<<exp(a)<<endl;
}
else{
cout<<exp(b)<<endl;
}
cout<<"Radical prim numar: apasa 1\nExponentiala al doilea numar: apasa 2: ";
cin>>opt_n;
cout<<"Radical numar: ";
if(opt_n==1){

cout<<sqrt(a)<<endl;
}
else{
cout<<sqrt(b)<<endl;
}
cout<<"Restul in virgula mobila la impartirea lui "<<a<<" la "<<b<<" este "<<fmod(a,b)<<endl;
cout<<"Vrei sa afli restul impartirii intre numerele intregi rotunjite pozitiv sau negativ?\nPozitiv 1\nNegativ 2:";
cin>>opt_n;
if(opt_n==1){
cout<<"Restul impartirii de intregi este:"<<(int)(ceil(a))%(int)(ceil(b));
}
else{
cout<<"Restul impartirii de intregi este:"<<(int)(floor(a))%(int)(floor(b));
}
//exemplu folosire abs
cout<<"Exemplo folosire abs pe primul numar rotunjit "<<" este "<<abs(ceil(a));
}
else{
//operatiunile trigonometrice au ca argument valoarea in radiani, nu in grade
//deci o sa fac eu conversia pentru tine 
cout<<"Introduceti valoarea unghiului in grade: ";
cin>>a;
//conversie din grade in radiani
b=(a/180)*M_PI;
cout<<"Sinusul unghiului este:"<<sin(b)<<endl;
cout<<"Cosinusul unghiului este:"<<cos(b)<<endl;
cout<<"Tangenta unghiului este:"<<tan(b)<<endl;
cout<<"Cotangenta unghiului este:"<<1/tan(b)<<endl;
cout<<"Tangenta unghiului este:"<<tan(b)<<endl;
cout<<"Arcsinusul sinusul unghiului  este:"<<asin(sin(b))<<endl;
cout<<"Arccos unghiului este:"<<acos(b)<<endl;
cout<<"Arctan unghiului este:"<<atan(b)<<endl;
}
return 0;
}

micumanuela: Multumesc!
Alte întrebări interesante