0% found this document useful (0 votes)
138 views

Programe C++

The document contains C++ code snippets for various math and logic problems. There are over 30 code snippets included that demonstrate solutions to problems such as: finding the maximum of two numbers, calculating the area of a triangle, determining if a number is prime, solving quadratic equations, and more. The code snippets range from a few lines to over a dozen lines and include basics of C++ like input/output streams, conditional statements, loops, and functions.

Uploaded by

lucia_ivan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
138 views

Programe C++

The document contains C++ code snippets for various math and logic problems. There are over 30 code snippets included that demonstrate solutions to problems such as: finding the maximum of two numbers, calculating the area of a triangle, determining if a number is prime, solving quadratic equations, and more. The code snippets range from a few lines to over a dozen lines and include basics of C++ like input/output streams, conditional statements, loops, and functions.

Uploaded by

lucia_ivan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 10

//maximul a doua numere a si b;

#include<iostream.h>
void main()
{
int a,b;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
if (a>b)
cout<<"Maximul este="<<a;
else
cout<<"Maximul este="<<b;
}
//aria unui triunghi cu baza b si
inaltimea h;
#include<iostream.h>
void main()
{
int b,h;
double a;
cout<<"dati baza=";
cin>>b;
cout<<"dati inaltimea=";
cin>>h;
a=(b*h)/2;
cout<<"aria="<<a;
}
//maximul a trei numere a,b si c;
#include<iostream.h>
void main()
{
int a,b,c,max;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati c=";
cin>>c;
max=a;
if (b>max)
max=b;
if (c>max)
max=c;
cout<<"Maximul este="<<max;
}
//suma de bani, monede de tipul
t1,t2,t3
#include<iostream.h>
void main()
{int t1,t2,t3,s,max,min,med,m1,m2,m3;
cout<<"t1=";
cin>>t1;
cout<<"t2=";
cin>>t2;
cout<<"t3=";
cin>>t3;

cout<<"s=";
cin>>s;
max=t1;
if (t2>max)
max=t2;
if (t3>max)
max=t3;
min=t1;
if (t2<min)
min=t2;
if (t3<min)
min=t3;
if ((min<t1) && (t1<max))
med=t1;
if ((min<t2) && (t2<max))
med=t2;
if ((min<t3) && (t3<max))
med=t3;
m1=s/max;
m2=(s%max)/med;
m3=((s%max)%med)/min;
cout<<m1<<"monede de
"<<max<<";";
cout<<m2<<" monede de
"<<med<<";";
cout<<m3<<" monede de
"<<min<<";";
}
//functia f;
#include<iostream.h>
void main()
{
int fct,x;
cout<<"dati x=";
cin>>x;
if (x<=-3)
fct=x*x+1;
else
if (x>-3 && x<3)
fct=x-2;
else
fct=x*x-4*x+5;
cout<<"Valoarea functiei este="<<fct;
}
//x divizibil cu y;
#include<iostream.h>
void main()
{
int x,y;
cout<<"dati x=";
cin>>x;
cout<<"dati y=";
cin>>y;
if (x%y==0)
cout<<"x divizibil cu y";
else
cout<<"x nu este divizibil cu y";
}
1

//fractia a/b se simplifica prin k;


#include<iostream.h>
void main()
{
int a,b,k;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati k=";
cin>>k;
if (a%k==0 && b%k==0)
cout<<a/k<<"/"<<b/k;
else
cout<<"fracti ireductibila";
}
//an bisect;
#include<iostream.h>
void main()
{
int an;
cout<<"dati anul=";
cin>>an;
if (an%400==0)
cout<<"este bisect";
else
cout<<"nu este bisect";
}
//a,b,c,sunt laturi triunghi;
#include<iostream.h>
void main()
{
int a,b,c;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati c=";
cin>>c;
if (a>0 && b>0 && c>0 && a+b>c &&
a+c>b && b+c>a)
cout<<"este triunghi";
else
cout<<"nu este triunghi";
}
//a,b,c,sunt laturi triunghi de tipul;
#include<iostream.h>
void main()
{
int a,b,c;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati c=";
cin>>c;
if (a>0 && b>0 && c>0 && a+b>c &&
a+c>b && b+c>a)

{cout<<"este triunghi"<<endl;
if (a==b && b==c)
cout<<"echilateral";
else
if (a==b || a==c || b==c)
cout<<"isoscel";
else
cout<<"oarecare";}
else
cout<<"nu este triunghi";
}
//a,b,c,numere reale. daca sunt
unghiuri triunghi;
//natura triunghiului;
#include<iostream.h>
void main()
{
double a,b,c;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati c=";
cin>>c;
if (a>0 && b>0 && c>0 &&
a+b+c==180)
{cout<<"da si este ";
if (a>90 || b>90 || c>90)
cout<<"obtuzunghic";
else
if (a==90 || b==90 || c==90)
cout<<"dreptunghic";
else
cout<<"ascutitunghic";}
else
cout<<"nu";
}
//a,b,c,numere intregi; daca sunt
progresie aritm;
#include<iostream.h>
void main()
{
int a,b,c;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati c=";
cin>>c;
if (a==(b+c)/2 || b==(a+c)/2 ||
c==(a+b)/2)
cout<<"da";
else
cout<<"nu";
}
//ecuatia de gradul 2;
#include<iostream.h>
#include<math.h>
2

void main()
{
double x1,x2,delta,a,b,c;
cout<<"dati a=";
cin>>a;
cout<<"dati b=";
cin>>b;
cout<<"dati c=";
cin>>c;
if (a==0)
if (b==0)
cout<<"nu se rezolva ecuatia";
else
cout<<-c/b;
else
{delta=b*b-4*a*c;
if (delta<0)
cout<<"nu are solutii reale";
else
{x1=(-b+sqrt(delta)/(2*a));
x2=(-b-sqrt(delta)/(2*a));
cout<<"x1="<<x1<<endl;
cout<<"x2="<<x2;
}
}
}

#include<iostream.h>
void main()
{
int n,k,s=0;
cout<<"dati n=";
cin>>n;
k=1;
while (k<=n)
{s=s+k*(2*k+1);
k++;}
cout<<"s="<<s;
}

//se citesc n numere intregi;


//se cere suma lor;
#include<iostream.h>
void main()
{
int n,x,i,s=0;
cout<<"dati n=";
cin>>n;
for (i=1;i<=n;i++)
{ cout<<"dati numarul x =";
cin>>x;
s=s+x;//s+=x; }
cout<<"suma="<<s;
}

//suma nr pana la citire 0;


#include<iostream.h>
void main()
{
int x,s=0;
cout<<"dati x=";
cin>>x;
while (x!=0)
{ s=s+x;
cout<<"x=";
cin>>x;
}
cout<<"s="<<s;
}

//se citesc n numere intregi;


//se cere suma lor;
#include<iostream.h>
void main()
{
int n,x,i,s=0;
cout<<"dati n=";
cin>>n;
i=1;
do
{cout<<"dati numarul x =";
cin>>x;
s=s+x;//s+=x;
i++;}
while (i<=n);
cout<<"suma="<<s;
}

//maximul nr pana la citire 0;


#include<iostream.h>
void main()
{
int x,max;
cout<<"dati x=";
cin>>x;
max=x;
while (x!=0)
{ if (x>max)
max=x;
cout<<"x=";
cin>>x;
}
cout<<"max="<<max;
}

//s=1*3+2*5+3*7...;

//p=1*3*5*7...;
#include<iostream.h>
void main()
{
int n,k,p=1;
cout<<"dati n=";
cin>>n;
k=1;
while (k<=n)
{p=p*k;
k=k+2;}
cout<<"p="<<p;
}

//suma cifrelor;
#include<iostream.h>
3

void main()
{
int x,s=0;
cout<<"dati x=";
cin>>x;
while (x!=0)
{ s=s+x%10;
x=x/10;
}
cout<<"suma="<<s;
}
//suma cifrelor pare;
#include<iostream.h>
void main()
{
int x,s=0;
cout<<"dati x=";
cin>>x;
while (x!=0)
{if (x%2==0)
s=s+x%10;
x=x/10;
}
cout<<"suma="<<s;
}
//suma cifrelor pare de pe pozitii
impare;
#include<iostream.h>
void main()
{
int x,s=0,i=0;
cout<<"dati x=";
cin>>x;
while (x!=0)
{i++;
if (x%2==0 && i%2!=0)
s=s+x%10;
x=x/10;
}
cout<<"suma="<<s;
}
//inversul(oglinditul) unui numar
intreg;
#include<iostream.h>
void main()
{
int ogl=0,x;
cout<<"dati x=";
cin>>x;
while (x!=0)
{
ogl=ogl*10+x%10;
x=x/10;
}
cout<<"inversul="<<ogl;
}

//un numar intreg este palindrom;


#include<iostream.h>
void main()
{
int ogl=0,x,cop;
cout<<"dati x=";
cin>>x;
cop=x;
while (cop!=0)
{
ogl=ogl*10+cop%10;
cop=cop/10;
}
if (ogl==x)
cout<<"DA";
else
cout<<"NU";
}
//c m m d c;
#include <iostream.h>;
void main()
{
int a,b;
cout << "a=" ;
cin >> a;
cout << "b=";
cin >> b;
while (a!=b)
if (a>b)
a=a-b;
else
b=b-a;
cout << "cmmdc=" <<a;
}
//numar prim;
#include<iostream.h>
void main()
{
int x,bec,d;
cout<<"dati x=";
cin>>x;
bec=1;
for (d=2;d<=x/2;d++)
if (x%d==0)
bec=0;
if (bec==1)
cout<<"DA";
else
cout<<"NU";
}
//numar prim;
#include<iostream.h>
#include<math.h>
void main()
{
int x,bec,d;
cout<<"dati x=";
cin>>x;
4

bec=1;
for (d=2;d<=floor(sqrt(x/2));d++)
if (x%d==0)
bec=0;
if (bec==1)
cout<<"DA";
else
cout<<"NU";
}
//numar prim;
#include<iostream.h>
#include<math.h>
void main()
{
int x,bec,d;
cout<<"dati x=";
cin>>x;
bec=1;
d=2;
while (d<=floor(sqrt(x/2)) && bec==1)
if (x%d==0)
bec=0;
else
d=d+1;
if (bec==1)
cout<<"DA";
else
cout<<"NU";
}
//numar prim;
#include<iostream.h>
#include<math.h>
void main()
{
int x,bec,d;
cout<<"dati x=";
cin>>x;
if (x%2==0)
if (x==2)
cout<<"DA";
else
cout<<"NU";
else
{bec=1;
d=2;
while (d<=floor(sqrt(x/2)) && bec==1)
if (x%d==0)
bec=0;
else
d=d+1;
if (bec==1)
cout<<"DA";
else
cout<<"NU";
}
}
//palindroame <= n,numar intreg;
#include<iostream.h>

void main()
{
int ogl,n,i,cop;
cout<<"dati n=";
cin>>n;
i=1;
while (i<=n)
{ogl=0;
cop=i;
while (cop!=0)
{ogl=ogl*10+cop%10;
cop=cop/10;
}
if (ogl==i)
cout<<i<<",";
i++;
}
}
//sirul lui fibonacci (1 1 2 3 5 8 13...);
//sa se afiseze primii n termeni;
#include<iostream.h>
void main()
{
int n,i,ultim,penultim,fib;
cout<<"dati n=";
cin>>n;
ultim=1;
penultim=1;
cout<<ultim<<","<<penultim<<",";
for (i=3;i<=n;i++)
{fib=penultim+ultim;
cout<<fib<<",";
penultim=ultim;
ultim=fib;
}
}
//descompunerea unui numar in
factori primi
#include<iostream.h>
void main()
{int x,fact,putere;
cout<<"dati numarulx=";
cin>>x;
fact=2;
while (x>0)
{ putere=0;
while (x%fact==0)
{x=x/fact;
putere++;}
if (putere!=0)
cout<<"factorul "<<fact<<"la
puterea "<<putere<<endl;
fact++;
}
}
//e=(1+3+5+...)/(2*4*6*...)
#include<iostream.h>
void main()
5

{int n,i;
long p=1,s=0;
cout<<"n=";
cin>>n;
for (i=1;i<=n;i++)
{s=s+2*i-1;
p=p*(2*i);}
cout<<"expresia e="<<(double)s/p;
}
//sir de numere pana se citeste 4
//cate numere sunt mai mari decat o
val a
#include<iostream.h>
void main()
{int x,nr=0,a;
cout<<"a=";
cin>>a;
do
{cout<<"dati numarul x=";
cin>>x;
if (x>a)
nr++;
}
while (x!=4);
cout<<"sunt "<<nr<<" numere mai
mari decat "<<a;
}
//sir de numere pana se citeste 4
//media aritmetica a numerelor din
[a,b]
#include<iostream.h>
void main()
{int x,nr=0,a,b,s=0;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
do
{cout<<"dati numarul x=";
cin>>x;
if (x>=a && x<=b)
{s=s+x;
nr++;}
}
while (x!=4);
cout<<"media aritmetica=
"<<(float)s/nr;
}
//sir de numere pana se citeste 4
//afisare numere care au penultima
cifra 0
#include<iostream.h>
void main()
{int x;
do
{cout<<"dati numarul x=";
cin>>x;
cout<<endl;

if ((x/10%10==0) && (x>9))


cout<<x<<"are penultima cifra 0
"<<endl; }
while (x!=4);
}
//sir de numere pana se citeste 4
//verificare sir crescator
#include<iostream.h>
void main()
{int a,b,ok=1;
cout<<"a=";
cin>>a;
do
{cout<<"b=";
cin>>b;
if (a>b)
ok=0;
a=b;
}
while (b!=4);
if (ok==1)
cout<<"crescator";
else
cout<<"nu este crescator";
}
//sir de numere pana se citeste 4
//verificare toate pare
#include<iostream.h>
void main()
{int x,ok=1;
do
{cout<<"x=";
cin>>x;
if (x%2==1)
ok=0;
}
while (x!=4);
if (ok==1)
cout<<"toate pare";
else
cout<<"nu sunt toate pare";
}
//se citesc n numere intregi
//se afiseaza palindroamele;
#include<iostream.h>
void main()
{
int ogl,x,cop,n,i;
cout<<"dati n=";
cin>>n;
for (i=1;i<=n;i++)
{ cout<<"dati x=";
cin>>x;
cop=x;
ogl=0;
while (cop!=0)
{ogl=ogl*10+cop%10;
cop=cop/10;
6

}
if (ogl==x)
cout<<"numarul "<<x<<" este
palindrom"<<endl;
}
}
//se afiseaza primele n cuburi
#include<iostream.h>
#include<math.h>
void main()
{int n,i=1;
cout<<"n=";
cin>>n;
while (i<=n)
{cout<<pow(i,3)<<endl;
i++;
}
}
//afisati numerele prime de 3 cifre
//care citite invers sunt tot numere
prime
#include<iostream.h>
void main()
{
int i,bec,d,ogl,cop,ok;
for (i=100;i<=999;i++)
{bec=1;
for (d=2;d<=i/2;d++)
if (i%d==0)
bec=0;
if (bec==1)
{cop=i;
ogl=0;
while (cop>0)
{ogl=ogl*10+cop%10;
cop=cop/10;}
ok=1;
for (d=2;d<=ogl/2;d++)
if (ogl%d==0)
ok=0;
if (ok==1)
cout<<i<<" "<<ogl<<endl;
}
}
}
//operatii cu vectori
#include <iostream.h>
void main()
{int v[25],i,n,s=0,max,k,gasit,j,aux;
cout<<"n=";
cin>>n;
//citirea elementelor vectorului v
for (i=1;i<=n;i++)
{cout<<"v["<<i<<"]=";
cin>>v[i];}
//afisarea elementelor vectorului v
for (i=1;i<=n;i++)
cout<<v[i]<<" ";

//suma elementelor vectorului


for (i=1;i<=n;i++)
s+=v[i];
cout<<"suma="<<s<<endl;
//maximul elementelor vectorului
max=v[1];
for (i=2;i<=n;i++)
if (v[i]>max)
max=v[i];
cout<<"maximul="<<max<<endl;
//cautarea unui numar in vector
cout<<"dati valoarea cautata=";
cin>>k;
gasit=0;
i=1;
while ((i<=n) && (gasit==0))
if (v[i]==k)
gasit=1;
else
i++;
if (gasit==1)
cout<<"valoarea se gaseste in
sir"<<endl;
else
cout<<"valoarea nu se gaseste in
sir"<<endl;
//sortarea crescatoare a elementelor
vectorului
for (i=1;i<=n-1;i++)
for (j=i+1;j<=n;j++)
if (v[i]>v[j])
{aux=v[i];
v[i]=v[j];
v[j]=aux;
}
//afisarea elementelor vectorului v
for (i=1;i<=n;i++)
cout<<v[i]<<" ";
}
//aplicatii fisiere
//citire vector din fisier
//suma elementelor din vector
#include<iostream.h>
#include<fstream.h>
void main()
{
int v[10],n,i,s=0;
ifstream f;
ofstream g;
f.open("date.txt");
g.open("iesire.txt");
f>>n;
for (i=1;i<=n;i++)
{
f>>v[i];
s=s+v[i];}
g<<"suma="<<s;
f.close();
g.close();
7

}
//citire matrice din fisier
//afisare matrice in fisier
#include<iostream.h>
#include<fstream.h>
void main()
{int a[10][10],i,j,n;
ifstream f;
ofstream g;
f.open("matrice.txt");
g.open("iesire.txt");
f>>n;
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
f>>a[i][j];
for (i=1;i<=n;i++)
{
for (j=1;j<=n;j++)
g<<a[i][j]<<" ";
g<<endl;}
f.close();
g.close();
}
//Rotire 90 grade matrice
Matricee.txt
34
1234
5678
9 10 11 12
Iesire.txt
123
456
789
10 11 12
**************************
3 6 9 12
2 5 8 11
1 4 7 10
#include<iostream.h>
#include<fstream.h>
void main()
{int a[10][10],i,j,n,b[10][10],m;
ifstream f;
ofstream g;
f.open("matricee.txt");
g.open("iesire.txt");
f>>n;
f>>m;
for (i=1;i<=m;i++)
for (j=1;j<=n;j++)
f>>a[i][j];
for (i=1;i<=m;i++)
{
for (j=1;j<=n;j++)
g<<a[i][j]<<" ";
g<<endl;}

g<<"**************************"<<endl;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
b[i][j]=a[j][n+1-i];
for (i=1;i<=n;i++)
{
for (j=1;j<=m;j++)
g<<b[i][j]<<" ";
g<<endl;}
f.close();
g.close();
}
//subprogram modul
#include<iostream.h>;
float x;
float modul(float x)
{if (x>0)
return x;
else
return -x;}
void main()
{cout<<"x=";
cin>>x;
cout<<"modul="<<modul(x);
}
//subprogram cmmdc
#include<iostream.h>
int a,b;
int cmmdc(int a, int b)
{ while (a!=b)
if (a>b)
a=a-b;
else
b=b-a;
return a;}
void main()
{
cout << "a=" ;
cin >> a;
cout << "b=";
cin >> b;
cout << "cmmdc=" <<cmmdc(a,b);
}
//subprogram cmmdc
#include<iostream.h>
int n,i;
int prim(int x)
{int d,p;
p=1;
for (d=2;d<=x/2;d++)
if (x%d==0)
p=0;
if (p==0)
return 0;
else
return 1;}
8

void main()
{
cout << "n=" ;
cin >> n;
for (i=1;i<=n;i++)
if (prim(i)==1)
cout <<i<<" ";
}
//fisa 56(fise de lucru cls 11)
//siruri de caractere perechi cuvinte
//unul este subsirul celuilalt
#include<iostream.h>
#include<string.h>
#include<fstream.h>
void main()
{
char v[20][30];
int n,i,j,bec=0;
ifstream f;
ofstream g;
f.open("cuvinte.in");
g.open("cuvinte.out");
f>>n;
for (i=1;i<=n;i++)
f>>v[i];
for (i=0;i<=n-2;i++)
for (j=i+1;j<=n-1;j++)
if (strstr(v[i],v[j])!=NULL ||
strstr(v[j],v[i])!=NULL)
{ g<<v[i]<<" "<<v[j]<<endl;
bec=1;}
if (bec==0)
cout<<"Nu exista perechi";
else
cout<<"Perechile au fost afisate in
fisierul cuvinte.out";
f.close();
g.close();
}
//siruri din fisier (fisa 56) (fise de
lucru cls 11)
//linie de lungime maxima
#include<iostream.h>
#include<string.h>
#include<fstream.h>
#include<stdio.h>
void main()
{
char l[20][30],*s;
int n,i,j,max=0;
ifstream f;
f.open("linii.txt");
i=1;
while (f.getline(l[i],30))
i++;
for (j=1;j<=i-1;j++)
if (strlen(l[j])>max)
max=strlen(l[j]);

cout<<"Liniile de lungine maxima


sunt="<<endl;
for (j=1;j<=i-1;j++)
if (strlen(l[j])==max)
cout<<l[j]<<endl;
f.close();
}
include <iostream.h>
#include <math.h>
#include<conio.h>
include <iomanip.h> pentru a scrie un numar cu
format
void main()
{ float nr,rad;
long x,y;
nr=3.561456;
int z=144;
x=ceil(nr);
y=floor(nr);
rad=sqrt(z);
clrscr();
cout<<"numarul de test="<<nr<<endl;
cout<<"functia ceil- rotunjire in sus= "<<x<<endl;
ceil() va afisa 4- primul numar intreg >=nr
daca nr= 3.012... va afisa tot 4
daca nr=3.0 => va afisa 3 daca partea
fractionara =0
cout<<"functia floor- partea intreaga a numarului
(rotunjire in jos)= "<<y<<endl; floor() va afisa 3
cout<<"functia sqrt- radical="<<rad<<endl;
cout<<" pentru a afisa un numar cu format se
foloseste functia setw(nr_total_caractere)"<<endl;
cout<<"pentru a seta numarul de zecimale se
foloseste functia setprecision(nr_zecimale)"<<endl;
cout<<setw(5)<<setprecision(2)<<nr<<endl;// va
afisa 3.56
8aa39de0481717

double fabs(double x);

valoare

absoluta
double floor(double x);

parte

ntreaga inferioara
double ceil(double x);

parte

ntreaga superioara
double sqrt(double x);
double sin(double x);

sin(x)

double cos(double x);

cos(x)

double tan(double x);

tg(x)

double asin(double x);

arcsin(x)

double acos(double x);

arccos(x)

double atan(double x);

arctg(x)

double sinh(double x);

sinh(x)

double cosh(double x);

cosh(x)

double tanh(double x);

tgh(x)

[-pi/2,pi/2]
double atan2(double y, double x);
arctg(y/x)

n [pi,pi]

double ldexp(double x, int e);


x *2^e

double exp(double x);

e^x

double log(double x);

ln(x)

double fmod(double x, double y);


y

x modulo

double pow(double x, double y);


x^y

10

You might also like