Sunteți pe pagina 1din 5

//6.

Sa se calculeze aria unui triunghi, cunoscandu-se marimea laturilor


//sale. Numerele care reprezinta marimile laturilor vor fi introduse de
//utilizator. Se va testa mai intai daca cele 3 numere reprezentand
//marimea laturilor pot forma un triunghi (a<=b+c, b<=c+a, c<= a+b).
//Formula ariei este urmãtoarea:
//aria = radical( p( p - a)( p - b)( p - c) ) , unde p este
//semiperimetrul: p = (a + b + c) / 2

#include <iostream>
#include <math.h>

using namespace std;

int main()
{
float a, b, c, p, A;
//declaram 5 variabile reale ce vor reprezenta laturile triunghiului
//(a, b, c), semiperimetrul (p) si aria (A)

cout<<"Prima latura: ";


cin>>a;
cout<<"A doua latura: ";
cin>>b;
cout<<"A treia latura: ";
cin>>c;

//in continuare, daca cele 3 numere introduse respecta conditia pentru a


//fi laturile unui triunghi (orice latura este mai mica sau egala decat
//sume celorlalte doua), se va calcula si afisa aria in caz contrar, vom
//afisa un mesaj de eroare
if (a<=b+c && b<=a+c && c<=a+b)
{
p = (a+b+c)/2;
A = sqrt(p*(p-a)*(p-b)*(p-c));
cout<<"\nAria trunghiului este: "<<A;
}
else
cout<<"Laturile introduse nu pot forma un triunghi";
}
//7. Sa se rescrie urmatoarea secventa, folosind o singura instructiune
//if.
//if (n>-90)
// if (n<=90)
// if (x!=0)
// int b= n/x;

#include <iostream>

using namespace std;

int main()
{
int n, x;
//mai intai trebuie sa citim n si x de la tastatura

cout<<"n=";
cin>>n;
cout<<"x=";
cin>>x;

//vom combina cele 3 instructiuni if intr-una singura combinand


//conditiile cu ajutorul operatorului si logic (&&)
if (n>-90 && n<=90 && x!=0)
{
int b = n/x;
cout<<"b="<<b;
}
else
cout<<"Conditii neindeplinite";
}

//8. Sa se citeasca un numar natural n. Sa se scrie un program care


//afiseaza daca numarul n citit reprezinta sau nu, un an bisect (anii
//bisecti sunt multipli de 4, exceptand multiplii de 100, dar incluzand
//multiplii de 400).

#include <iostream>

using namespace std;

int main()
{
int an;

cout<<"Introduceti anul: ";


cin>>an;

//daca un numar este multiplu de alt numar, atunci restul impartirii


//celor doua numere este 0. daca nu este multiplu, restul impartirii va
//fi diferit de 0
if ((an%4==0 && an%100!=0) || an%400==0)
cout<<"Anul "<<an<<" este bisect";
else
cout<<"Anul "<<an<<" nu este bisect";
}
//9. Fie functia
//f(q)= e^(q-3), pentru q intre [0, 1)
// sin q + cos q, pentru q intre [1, 2)
// 0,9 ln(q+3), pentru q intre [2, 100]
//Sa se calculeze f(q), q real, citit de la tastatura.
//Functiile care se vor utiliza sunt urmatoarele:
// exp(x) – pentru e^x,
// sin(x) – pentru sin x,
// cos(x) – pentru cos x,
// log(x) – pentru ln x.
//avand prototipurile in header-ul math.h

#include <iostream>
#include <math.h>

using namespace std;

int main()
{
float q, f;

cout<<"q=";
cin>>q;

if (q>=0 && q<1)


f = exp(q-3);
if (q>=1 && q<2)
f = sin(q) + cos(q);
if (q>=2 && q<=100)
f = 0.9 * log(q+3);

if (q<0 || q>100)
cout<<"q in afara intervalului";
else
cout<<"f("<<q<<")="<<f;
}
//10. Sa se scrie un program care calculeaza si afiseaza maximul
//a 3 numere reale (a, b si c) citite de la tastatura.

#include <iostream>

using namespace std;

int main()
{
float a, b, c, max;

cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
cout<<"c=";
cin>>c;

if (a>b && a>c)


max=a;
else if (b>c)
max=b;
else
max=c;

cout<<"Maxiumul este: "<<max;


}

//11. Sa se citeasca 2 caractere care reprezinta 2 litere mari.


//Sa se afiseze caracterele citite in ordine alfabetica.

#include <iostream>

using namespace std;

int main()
{
char a, b;

cout<<"Introduceti primul caracter: ";


cin>>a;
cout<<"introduceti al doilea caracter: ";
cin>>b;

if (a<b)
cout<<"Ordinea alfabetica a caracterelor: "<<a<<" "<<b;
else
cout<<"Ordinea alfabetica a caracterelor: "<<b<<" "<<a;
}
//12. Sa se scrie un program care citeste o cifra. In functie de valoarea
//ei, sa se faca urmatorul calcul: daca cifra este 3, 5 sau 7 sa se
//afiseze patratul valorii numerice a cifrei; daca cifra este 2, 4 sau 6
//sa se afiseze cubul valorii numerice a cifrei; daca cifra este 0 sau 1
//sa se afiseze mesajul "Valori mici"; altfel, sa se afiseze mesajul
//"Caz //ignorat!"

#include <iostream>

using namespace std;

int main()
{
char c;
int n;

cout<<"Introduceti o cifra: ";


cin>>c;

n = (int)c - 48;
//n reprezinta valoarea numerica a cifrei, scazandu-se 48 din codul ASCII
//asociat cifrei (cifra 0 are codul ASCII 48, 1 -> 49, etc.)

switch(c)
{
case '3':
case '5':
case '7': cout<<"Patratul cifrei: "<<n*n;
break;
case '2':
case '4':
case '6': cout<<"Cubul cifrei: "<<n*n*n;
break;
case '0':
case '1': cout<<"Valori mici";
break;
default: cout<<"caz ignorat!";
}
}