Informatică · Matematică · Proiecte automatizare — materiale pentru liceu
Teme1InfoInformatică · Matematică · Automatizări

Maxim Suma

Sa se afișeze suma elementelor matricei  de pe  o coloana aleasa și valoarea maxima de pe o coloana aleasă.
Dispaly: the amount of matrix elements and the maximum values of the  selected column .


#include <iostream>

using namespace std;
int i,j,a[10][10],n,b[10][10];
void citire(int x[10][10])
{
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
       {
        cout<<"a["<<i<<"]["<<j<<"]=";
        cin>>a[i][j];}
}
int maximc(int x[10][10])
{  int maxc;
    for(j=1;j<=n;j++)
       {

        maxc=a[1][j]; for(i=1;i<=n;i++)


       if (maxc<a[i][j])
           maxc=a[i][j];
      }
       return maxc;}
int sumac(int x[10][10])
{  int sc;
    for(j=1;j<=n;j++)
      {

       sc=a[1][j];
        for(i=1;i<=n;i++)

          sc=sc+a[i][j];

       }
       return sc;}
 void afisare(int x[10][10])
{
for(i=1;i<=n;i++)
{
 for(j=1;j<=n;j++)
 cout<<a[i][j]<<" ";
 cout<<"\n";
 }
}

void inlocuire(int x[10][10])
{
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            {
            if(a[i][j]==maximc(a))
                a[i][j]=sumac(a);
            }

}
void afisareb(int x[10][10])
{
    for(i=1;i<=n;i++)
      {
        for(j=1;j<=n;j++)
          cout<<a[i][j];
        cout<<"\n";}
}

int main()
{cout<<"Numarul de linii si coloane este =";cin>>n;
citire(a);afisare(a);
 cout<<"Valoarea sumei de pe coloana "<<j<<" este "<<sumac(a)<<endl;
 cout<<"Valoarea max de pe coloana "<<j<<" este "<<maximc(a)<<endl;
inlocuire(a);
afisare(a);


    return 0;
}


Eliminarea coloanei unei matrice


#include <iostream>

using namespace std;
int i,j,n,a[10][10],c;

void citire()
{
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            {cout<<"a["<<i<<"]["<<j<<"]=";
             cin>>a[i][j];
            }

}
void coloana()
{
  cout<<"Coloana pe care trebuie s-o elimin=";cin>>c;
  for(i=1;i<=n;i++)
     {for(j=1;j<=n;j++)
         if(j!=c)
             cout<<a[i][j];
       cout<<"\n";}
}

int main()
{
    cout<<"Numarul de linii si coloane este=";cin>>n;
    citire();
    coloana();

    return 0;
}

Suma a doua matrice

Suma  matricilor

Sum of matrix


        #include <iostream>

        using namespace std;
        int i,j,n,a[10][10];
        float b[10][10];
        void citire()
        {
    |    for(i=1;i<=n;i++)
    |        for(j=1;j<=n;j++)
    |            {
    ||             cout<<"a["<<i<<"]["<<j<<"]=";
    ||             cin>>a[i][j];
    |            }
    }

        void matb()
        {
    |    for(i=1;i<=n;i++)
    |        for(j=1;j<=n;j++)
    |            b[i][j]=(a[i][j]+a[j][i])/2;
        }

        void afisare()
        {
    |    for(i=1;i<=n;i++)
    |        {
    ||            for(j=1;j<=n;j++)
    ||            cout<<b[i][j];
    ||            cout<<"\n";
    |        }
        }
        int main()
        {
    |    cout<<"Numarul de linii si coloane este=";cin>>n;
    |    citire();
    |    matb();
    |    afisare();
    |
    |    return 0;
        }

Valoarea minima si maxima din matrice

Min and Max element of the matrix


    #include <iostream>

    using namespace std;
    int n,m,i,j;
    float a[10][10];
    void citire()
        {
    |    for(i=1;i<=n;i++)
    |        for(j=1;j<=m;j++)
    |    {
    ||        cout<<"a["<<i<<"]["<<j<<"]=";
    ||       cin>>a[i][j];
    |    }
        }
    
        void compare()
       {
    |    float min,max;
    |    min=a[1][1];
    |    max=a[1][1];
    |    for(i=1;i<=n;i++)
    |        for(j=1;j<=m;j++)
    |       {
    ||        if(min>a[i][j])
    ||            min=a[i][j];
    ||        if(max<a[i][j])
    ||           max=a[i][j];
    |       }
    |    
    |    cout<<"Valoarea maxima este="<<max<<endl;
    |    cout<<"Valoarea minima este="<<min<<endl;
       }
    
       int main()
    |    {
    |    cout<<"Numarul de linii  este ";cin>>n;
    |    cout<<"Numarul de coloane este ";cin>>m;
    |    citire();
    |    compar();
    |
    |    return 0;
        }

Elementele matricei pe coloana principala si secundara 0

Se dă o matrice pătratică A. Să se înlocuiască elementele sale situate pe diagonala principală şi pe diagonala secundară cu valoarea 0 (zero).

Rezultatele traducerii

    #include <iostream>
    using namespace std;
    int i,j,n,a[10][10];

   void citire()
   {
|     for(i=1;i<=n;i++)
|       for(j=1;j<=n;j++)
     {
| |       cout<<"a["<<i<<"]["<<j<<"]=";
| |       cin>>a[i][j];    
     }
   }

    void diag_princ_si_sec()
   {
|       for(i=1;i<=n;i++)
|           for(j=1;j<=n;j++)
|
         {
||           if(i==j)
||               a[i][j]=0;
||           if(i+j==n+1)
||               a[i][j]=0;
|
          }
  }

    void afisare()
 
   {
 |      for(i=1;i<=n;i++)
 |
     {
 ||      for(j=1;j<=n;j++)
 ||
        { 
 |||        cout<<a[i][j];
 |||        cout<<"\n";
 ||       }
 |      }
   }

   int main()
 
 {
 |  cout<<"Nr. de linii si coloane este=";
 |  cin>>n;
 |  citire();
 |  diag_princ_si_sec();
 |  afisare();
 
 }

Ultima cifra

//Se citeste o matrice de lini n si coloane m . Sa se afiseze ultima cifra a fiecarui element  din matrice .
Display the last digit of each element of matrix.


#include <iostream>

using namespace std;
int i,j,m,n,a[10][10];
void citire()
{
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            {cout<<"a["<<i<<"]["<<j<<"]=";
            cin>>a[i][j];}
}
void ultima_cifra()
{
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
           cout<<"Ultima cifra de pe coloana "<<j<<" si linia "<<i<<" este="<<a[i][j]%10<<endl;
}

int main()
{
    cout<<"Numarul de linii este =";cin>>n;
     cout<<"Numatrul de coloane este =";cin>>m;
     citire();
     ultima_cifra();
}

Minimul fiecarei coloane din matrice

//Se dă un tablou bidimensional B cu n linii şi m coloane de componente întregi. Să se determine minimul fiecărei coloane şi minimul lui B. //


#include <iostream>

using namespace std;
int i,j,m,n,a[10][10];
void citire()
{
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            {cout<<"a["<<i<<"]["<<j<<"]=";
            cin>>a[i][j];}
}
void min_coloana()
    {
       int minc,b;

       cout<<"Numarul coloanei de pe care sa calculez minimul este =";cin>>b;
       if(b<=i)
            {for(j=1;j<=m;j++)
                 if(a[b][j]<minc)
                     minc=a[b][j];
       cout<<"Elementele de pe coloana "<<b<<" este="<<minc<<endl;}
       else
          cout<<"Nu ai tastat un numar valid";
    }
 void min_matrice()
  {
      int min;
      min=a[1][1];
      for(i=1;i<=n;i++)
         for(j=1;j<=m;j++)
           if(min>a[i][j])
                min=a[i][j];
      cout<<"Elementul minim din matricea a este ="<<min;
  }

int main()
{
    cout<<"Numarul de linii este =";cin>>n;
     cout<<"Numatrul de coloane este =";cin>>m;
     citire();
     min_coloana();
     min_matrice();
}

Matrice formata din multiplii lui 2

#include <iostream>

using namespace std;
int i,j,n,a[10][10],q;
int main()
{
    int a[10][10],i,j,n;
    q=1;
    cout<<"Numarul de linii si coloane este =";cin>>n;
    for(i=1; i<=n; i++)
   {for(j=1; j<=n; j++)
         {cout<<q*2<<" ";
          q=q+1;}
          cout<<endl;}
  return 0;


}

Sa dispara coloana m

#include <iostream>using namespace std;int i,j,n,a[10][10];void citire(int n){    for(i=1;i<=n;i++)    {        for(j=1;j<=n;j++)          {cout<<"a["<<i<<"]["<<j<<"]=";           cin>>a[i][j];}    }}void coloana(int n){    int m;    cout<<"Numarul coloanei este =";cin>>m;    cout<<"Matricea fara coloana "<<m<<" este "<<endl;    for(i=1;i<=n;i++)       {        for(j=1;j<=n;j++)            if(j!=m)               cout<<a[i][j]<<" ";         cout<<endl;}}int main(){    cout<<"Numarul de linii si coloane este=";cin>>n;    citire(n);    coloana(n);
    return 0;}

Matrice patratica , element de diag==0

#include <iostream>

using namespace std;
int i,j,n,a[10][10];
void citire(int n)
{
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=n;j++)
          {cout<<"a["<<i<<"]["<<j<<"]=";
           cin>>a[i][j];}
    }
}
void ediagsec (int n)
{
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
           if(i+j==n+1)
              if(a[i][j]==0)
                 cout<<"a["<<i<<"]["<<j<<"] ";

}

int main()
{
    cout<<"Numarul de linii si coloane este=";cin>>n;
    citire(n);
    cout<<"Elementele de pe diag sec egale cu 0 sunt :";
    ediagsec(n);
    return 0;
}

Sizeof

Afișază  utilitatea funcției sizeof.
Display  the utility of function sizeof.

#include <iostream>

using namespace std;
int main()
{
    int a,b,c;
    cout<<"a= ";cin>>a;
    cout<<"Cati octeti ocupa variabila a: "<<endl;
    cout<<sizeof(a)<<endl;
    cout<<"Cati octeti ocupa tipul de date int: "<<endl;
    cout<<sizeof(int)<<endl;
    cout<<"Cati octeti ocupa tipul de date long int: "<<endl;
    cout<<sizeof(long int)<<endl;
    cout<<"Cati octeti ocupa tipul de date short int: "<<endl;
    cout<<sizeof(short int)<<endl;
    cout<<"Cati octeti ocupa tipul de date long double: "<<endl;
    cout<<sizeof(long double)<<endl;
    cout<<"Cati octeti ocupa tipul de date char: "<<endl;
    cout<<sizeof(char)<<endl;
      return 0;

}

Subprogram nr , prim , suma .

 Afisaza  suma elementelor unui numar , numarul cifrelor si testeaza daca numarul este prim.

#include <iostream>
using namespace std;
long int n;
void suma(int n)
{int s;
 s=0;
  while(n!=0)
  {
      s=s+n%10;
      cout<<n%10<<" se adauga la suma "<<s<<endl;
      n=n/10;

  }
  cout<<" Suma cifrelor este "<<s<<endl;

}
int nrcifre(long int n)
{
    int nr;
    nr=0;
    while(n!=0)
    {
        n=n/10;
        nr=nr+1;
    }
    cout<<"Numarul de cifre ale lui "<<n<<" este ="<<nr<<endl;
    return nr;
}
int prim(long int n)
{
    int prim,d;
    prim=0;
    for(d=1;d<=n;d++)
    {
        if(n%d==0)
            prim=1;
    }
    if(prim==1)
        cout<<"Numarul nu este prim \n";
    else
        cout<<"Numarul este prim \n";
    return prim;


}
int nr()
{
    int prima,c,i;
    i=1;
    while(i<=n)
   {
      for(c=1;c<=i/2;c++)
    {
        if(i%c==0)
            prima=0;
    }
    if(prima=0)
        cout<<i<<",";
    i++;
   }
   return prima;
}

int main()
{
  cout<<"Numarul este =";cin>>n;
  suma(n);
  nrcifre(n);
  prim(n);
  cout<<"Numnerele prime pana la "<<n<<" sunt:";
  nr(n);
    return 0;
}

Min si Max

Afișaza minimul și maximul valorilor citite   din vector.
Display : minimum and maximum elemnt from vector.

#include <iostream>
#include <string.h>
using namespace std;
int n,b,i,a[10];
void citire()
 {  char v[100];
    int a[10];
        {
            b=1;
        for(i=1;i<=n;i++)
           {cout<<"Luna in care se  inregistreaza temperatura este ";cin>>v[100];
             cout<<"Temperatura este de ";cin>>a[i];
            cout<<endl;}}
 }
 void minma()
      {  int min,max;
           min=a[1];
           max=a[1];
          for(i=1;i<=n;i++)
          {
              if(min>a[i])
                  min=a[i];
              if(max<a[i])
                  max=a[i];
          }
      }
int main()
{
 cout<<"Numarul de luni este de ";cin>>n;
 cout<<"Valorile de pe luni sunt\n";
 citire();
 minma();



}









Subprograme cu mai multe nr

Citeste o matrice ,  o afișază si realizeaza suma elementelor din matrice .

#include <iostream>

using namespace std;
int x[30][30],n,m,i,j,s=0;

void citire(int x[10][10],int y)
{
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
    for(j=1;j<=n;j++)
    {cout<<"x["<<i<<"]["<<j<<"]=";
    cin>>x[i][j];
    }
}
void afisare()
{
for( i=1;i<=n;i++)
{
    for( j=1;j<=n;j++)
    cout<<x[i][j]<<" ";
    cout<<"\n";
    }
}
void suma(int x[10][10],int y)
{
for(int i=1;i<=n;i++)
    for(int j=1;j<=n;j++)
      if(i+j=n+1)
          s=s+x[i][j];
cout<<"suma elementelor din matrice="<<s<<endl;
}

int main()
{ int a[10][10],b[10][10],c[10][10],d[10][10],e[10][10];
    cout<<"se citeste matricea: "<<endl;
    citire(a,3);
    citire(b,3);
    citire(c,3);
    citire(d,3);
    citire(e,3);

cout<<"matricea este\n";
afisare();

    return 0;
}

SUBPROGRAME CLASA

#include <iostream>

using namespace std;
int x[30][30],n,m,i,j,s=0;

void citire()
{
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
    for(j=1;j<=n;j++)
    {cout<<"x["<<i<<"]["<<j<<"]=";
    cin>>x[i][j];
    }
}
void afisare()
{
for( i=1;i<=n;i++)
{
    for( j=1;j<=n;j++)
    cout<<x[i][j]<<" ";
    cout<<"\n";
    }
}
void suma()
{
for (int i=1;i<=n;i++)
    for (int j=1;j<=n;j++)
    s=s+x[i][j];
cout<<"suma elementelor din matrice="<<s<<endl;
}

int main()
{cout<<"se citeste matricea: "<<endl;
    citire();
cout<<"matricea este\n";
afisare();
suma();
    return 0;
}

Subprograme

Citete o matrice , o afisaza , realizeaza suma elementelor matricei  si suma elementelor de pe diagonala principală.

#include <iostream>

using namespace std;
int x[30][30],n;
void citire()
    {
       int i,j;
       cout<<"Numarul de linni si coloane este =";cin>>n;
       for(int i=1;i<=n;i++)
            for(int j=1;j<=n;j++)
          {
           cout<<"x["<<i<<"]["<<j<<"]=";
           cin>>x[i][j];

          }
    }
void afisare()
    {
        for(int i=1;i<=n;i++)
            for(int j=1;j<=n;j++)
               cout<<x[i][j]<<" ";
        cout<<"/n";
    }
 void suma ()
   {
       int s=0;
       for(int i=1;i<=n;i++)
         for(int j=1;j<=n;j++)
             s=s+x[i][j];
       cout<<"suma elementelor din matrice este ="<<s<<endl;
   }
  int suma_pe_diagonala_principala()
    { int s=0;
     for(int i=1;i<=n;i++)
        for(int j=1;j<=n;j++)
           s=s+x[i][j];
       return s;
    }
 int main()
 {
        citire();
        cout<<"matricea este\n";
        afisare();
        suma();
        cout<<" Suma de pe diagonala principala este ="<<endl;
        cout<<suma_pe_diagonala_principala();
 }


Minim , nr de linii

Afisaza minimul matricelor A și B și  realizează  suma  acestora  în matricea C.
Display  the minimum elements of matrix and  make sums up the elements of matrix A and B in  another matrix C .


#include <iostream>

using namespace std;

int main()
{  int i,j,n,min,min1,a[20][20],b[20][20],c[20][20],max;
cout<<"Numarul de linii si coloane pt matricele A si B este egal cu =";cin>>n;

   for(i=1;i<=n;i++)
     for(j=1;j<=n;j++)
     {
         cout<<"a["<<i<<"]["<<j<<"]=";
         cin>>a[i][j];
     }
   for(i=1;i<=n;i++)
      for(j=1;j<=n;j++)
   {
       if(min>a[i][j])
           min=a[i][j];
   }
   cout<<"Minimul matricei a este="<<min<<endl;

     for(i=1;i<=n;i++)
     for(j=1;j<=n;j++)
     {
         cout<<"b["<<i<<"]["<<j<<"]=";
         cin>>b[i][j];
     }
   for(i=1;i<=n;i++)
      for(j=1;j<=n;j++)
   {
       if(min1>b[i][j])
           min1=b[i][j];
   }
   cout<<"Minimul matricei b este="<<min1<<endl;
   for(i=1;i<=n;i++)
      for(j=1;j<=n;j++)
   {
       c[i][j]=a[i][j]+b[i][j];
   }
   cout<<" Matrice nou formata este ";
   for(i=1;i<=n;i++)
     {
       for(j=1;j<=n;j++)
         cout<<c[i][j];
         cout<<endl;}

}

Media valorilor pare, valoare maxima coloana

#include <iostream>
#include <math.h>
using namespace std;


int main()
{  int n,i,j,p,a[20][20],b,prim,max,min,nr,in;
   cout<<"Numarul de linii si coloane pentru matricea patratica este ="; cin>>n;
   for(i=1;i<=n;i++)
      for(j=1;j<=n;j++)
        {cout<<"a["<<i<<"]["<<j<<"]=";
         cin>>a[i][j];}
p=1;
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)

    {   if(i+j>=n+2)
             if(a[i][j]%2==0)
                   p=p*a[i][j];

    }
    cout<<"Media valorilor pare este ="<<sqrt(p)<<endl;

    cout<<" Vlorile prime de deasupra diag sec sunt= ";
    for(i=1;i<=n;i++)
       for(j=1;j<=n;j++)
    {
        if(i+j<=n)
            {prim=0;
             for(b=2;b<=a[i][j]/2;b++)
                  {if(a[i][j]%b==0)
                      prim=1;}
             if(prim==0)
                 cout<<a[i][j]<<endl;}

    }
    j=3;
    max=a[1][3];
    for(i=1;i<=n;i++)
        if(max<a[i][j])
            max=a[i][j];
    cout<<"Valoarea maxima de pe coloana 3 este "<<max<<endl;

    min=a[1][2];
    j=2;
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
           {if(min>a[i][j])
                min=a[i][j];}
     max=nr;
     while(max!=0)
     {
         in=in*10+max%10;
         max=max/10;
     }
     if(in==nr)
              cout<<"Vloarea minima de pe coloana 2 este palindrom";
     else
        cout<<"Vloarea minima de pe coloana 2 nu este palindrom";


    return 0;

}

Problema dreptunghiuri

#include<iostream>
#include<math.h>
using namespace std;
int main()

{ struct  dreptunghi
{
  int l,L,A,P;
  float dia;
};
 dreptunghi d[20];
 int n , v[100],i,max,min;
 cout<<"Cate dreptunghiuri sunt " ;cin>>n;
 for(i=1;i<=n;i++)
 {
     cout<<"Pt dreptunghiul "<<i<<" sunt"<<endl;
     cout<<" Lungimea=";cin>>d[i].L;
     cout<<"Latimea=";cin>>d[i].l;
     d[i].A=d[i].L*d[i].l;
     d[i].P=d[i].L*2+d[i].l*2;
     d[i].dia=sqrt(d[i].L*d[i].L+d[i].l*d[i].l);


 }
 max=d[1].A;
 min=d[1].P;
 for(i=1;i<=n;i++)
 {
     if(max<d[i].A)
         max=d[i].A;
     if(min>d[i].P)
            min=d[i].P;

 }
 for(i=1;i<=n;i++)
 {
     if(max==d[i].A)
     {
         cout<<" Dreptunghiul "<<i<<endl;
         cout<<" Are suprafata cea mai mare " <<d[i].A<< "diagonala este = "<<d[i].dia<<endl;


     }
     if(min==d[i].P)
     {
         cout<<" Dreptunghiul "<<i<<endl;
         cout<<" Are perimetrul cel mai mic " <<d[i].P<<endl;}
 }

return 0;
}

Șiruri de caractere cu funcții

ȘIRURI DE CARACTERE


Funii care lucrează cu șiruri de caractere (#include<string.h>)

1. Functia strlen.

Are rolul de a returna lungimea unui şir(fără a lua în considerare caracterul nul). Forma generală : strlen(nume sir);
Exemplu: Se citește un şir de caractere şi se afișează numărul de caractere a șirului

#include<iostream.h>
#include<string.h>
int main()
{
char s1[100];
cout<<”tasteaza o fraza:  ”;
cin.get(s1,100)
cin.get();
cout<<"Sirul citit este : "<<s1<<"  si are "<<strlen(s1)<<"caractere";
}


2 Functia strcpy.

Forma generală: strcpy(destinatie,sursa)

Funcția are rolul de a copia (inlocuieste ) șirul de la adresa sursa la adresa destinație.

#include <iostream>
#include<string.h>
using namespace std;
int main()
{
   char s1[100],s2[100];           //se declara doua siruri
cout<<"tasteaza o fraza:  ";  //
cin.get(s1,100);                    //
cin.get();                               // s-a citit un sir
cout<<"tasteaza o alta fraza :  ";
cin.get(s2,100);
cin.get();
strcpy(s1,s2);
cout<<s1;
    return 0;
}
3. Functia strcat.

Forma generală:         strcat(destinație,sursă)

Funcţia are rolul de a adăuga șirului de la adresa destinație șirul de la adresa sursă.
#include <iostream>
#include<string.h>
using namespace std;
int main()
{
char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o alta fraza :  ";
cin.get(s2,100);
cin.get();
strcat(s1,s2);
cout<<s1;
 return 0;
}

4. Functia strncat

Forma generală:   strncat(destinație,sursă,n)

Funcția adaugă șirului destinație primii n octeți ai șirului sursă

#include <iostream>
#include<string.h>

using namespace std;

int main()
{
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o alta fraza :  ";
cin.get(s2,100);
cin.get();
strncat(s1,s2,5);  
cout<<s1;

    return 0;
}



5. Functia strchr

Forma generală strchr(nume şir, 'caracter' )

Functia căută în șirul nume şir caracterul caracter şi returnează subșirul care începe cu prima apariție a caracterului citit
#include <iostream>
#include<string.h>

using namespace std;

int main()
{
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<strchr(s1,'t');
cout<<s1;

    return 0;
}

6. Functia strrchr

Returnează adresa ultimei apariții a caracterului căutastrrchr(şir, 'caracter' )

#include <iostream>
#include<string.h>

using namespace std;

int main()
{
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<strrchr(s1,'u')-s1;  returneaza nr octetului unde se afla caracterul ‘ u’
   return 0;
}

7. Functia strcmp

Forma generală strcmp(sir1, sir2 )

Funcția are rolul de a compara 2 șiruri de caractere şi va returna valoarea:

< 0 dacă sir1<sir2

= 0 dacă sir1=sir2

> 0 dacă sir1>sir2


Exemplu Se compa șirul a cu șirul b şi se listează relația dintre cele 2 șiruri astfel:
- da primele n caractere sunt identice se compară caracterele n+1
- da caracterul n+1 al șirului a este situat alfabetic înaintea caracterului n+1 al șirului b se afișează a<b
- da caracterul n+1 al șirului a este situat alfabetic după caracterul n+1 al șirului b se afișează a>b
- da primul caracter al șirului a este situat alfabetic înaintea primului caracter al șirului b se afișează a<b
indiferent de lungimea celor 2 șiruri
- da primul caracter al șirului a este situat alfabetic după primul caracter al șirului b se afișează a>b
indiferent de lungimea celor 2 șiruri

#include <iostream>
#include<string.h>
using namespace std;
int main()
{
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o fraza:  ";
cin.get(s2,100);
cin.get();
int semn;
 semn=strcmp(s1,s2);
if(semn<0) cout<<"s1 < s2";
else
if(semn>0) cout<<"s1 > s2";
else cout<<"s1= s2";

   return 0;
}


8. Functiile strlwr ş i struwr

strlwr(s1) - convertește toate literele șirului s1 în litere mici struwr(s2) - convertește toate literele șirului s2 în litere mari

#include <iostream>
#include<string.h>
#include <stdio.h>

using namespace std;

int main()
{
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o fraza:  ";
cin.get(s2,100);
cin.get();
cout<<strupr(s1)<<endl<<strlwr(s2);

   return 0;
}

9. Functia strstr

Forma generală: strstr(sir1,sir2)

Funcția identifică dașirul sir2 este subșir al șirului sir1
#include <iostream>
#include<string.h>
#include <stdio.h>
using namespace std;

int main()
{
   char *a;
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o fraza:  ";
cin.get(s2,100);
cin.get();
 a=strstr(s1,s2);   //returneaza subsirul s2 din s1
puts(a);             //afiseaza de la subsirul gasit
   return 0;
}


10. Functia strcspn

Forma generală: strcspn(s1,s2)

Funcția returnează numărul caracterelor din șirul s1 care nu se găsesc în șirul s2

#include <iostream>
#include<string.h>
using namespace std;

int main()
{
   int a;
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o fraza:  ";
cin.get(s2,100);
cin.get();
 a=strcspn(s1,s2);   //returneaza numarul caracterelor din  s1 si nu sunt in s2
cout<<a;
   return 0;
}

11. Functia spn

Forma generală: strspn(s1,s2)

Funcția returnează numărul caracterelor din șirul s1 care se găsesc în șirul s2

#include <iostream>
#include<string.h>
#include <stdio.h>
using namespace std;

int main()
{
   int a;
   char s1[100],s2[100];
cout<<"tasteaza o fraza:  ";
cin.get(s1,100);
cin.get();
cout<<"tasteaza o fraza:  ";
cin.get(s2,100);
cin.get();
 a=strspn(s1,s2);
cout<<a;
   return 0;
}

12. FUNCTII UTILIZATE PENTRU CONVERSIA VALORILOR NUMERICE în  SIR

La utilizarea acestor funcții se introduce directiva #include<stdlib.h>

a) Funcția atof - convertește un şir către tipul double

b) Funcția atold - convertește un şir către tipul long double

#include <stdlib.h>
#include <iostream.h>
void main()
{
float f;
char *str = "12345.67" f = atof(str);
cout<<"string = "<<str<<endl<<"float = "<< f;
}

c) Funcția atoi - convertește un şir către tipul int

d) Funcția atol - convertește un şir către tipul long

Exemplu
#include <stdlib.h>
#include <iostream.h>
void main()
{
int n;
char *str = "12345.67" n = atoi(str);
cout<<"string = "<<str<<endl<<"float = "<< n;
}

e) Funcția ecvt - convertește o valoare double către un sir f) Funcția itoa - convertește o valoare de tip int către un sir

g) Funcția ltoa - convertește o valoare de tip long int către un sir

Totalul afișărilor de pagină

Un produs Blogger.

Faceți căutări pe acest blog

Pointeri

  Prezentare generală  Un pointer este o variabilă care are ca valoare  o adresă din memoria internă a calculatorului  , această adresă ap...

Postări populare