Exercitii rezolvate

1. Se citeşte un text într-o variabilă de tip string, in care cuvintele se despart prin spaţii. Se cere:
a)    Să se afişeze cuvintele în ordine alfabetică;
b)    Să se numere cuvintele cu minim 4 vocale distincte

#include <iostream.h>
#include <conio.h>
#include <string.h>
void main()
{
char text[100],*p, separator[]=" ", cuv[10][10], cuvant[10], aux[10] ; int nrv=0,voc, nr, k, i, j;
cout<<"Dati sirul:";cin.get(text,100);
strcpy(p,text)  ;
p=strtok(p,separator) ;
while(p)
    {
     strcpy(cuv[++nr],p);
     p=strtok(NULL,separator);
    }
for(i=1;i<nr;i++)
  for(j=i+1;j<=nr;j++)
      if(strcmp(cuv[i],cuv[j])>0)
     {
      strcpy(aux,cuv[i]);
      strcpy(cuv[i],cuv[j]);
      strcpy(cuv[j],aux);
     }
for(i=1;i<=nr;i++)
   cout<<cuv[i];
for(i=1;i<=nr;i++)
   {
    voc=0;
    strcpy(cuvant,cuv[i]);
    k=strlen(cuvant) ;
    for(j=0;j<k;j++)
      {switch(cuvant[j])
    {
     case 'a':
     case 'e':
     case 'i':
     case 'o':
     case 'u':{voc++; break;}
    }}
    if (voc>=4) nrv++  ;
   }
cout<<nrv;
getch();
}

2. Fişierele cuv1.txt şi cuv2.txt conţin cuvinte, câte un cuvânt pe linie în ordine alfabetică. Să se construiască fişierul cuv3.txt care să conţină toate cuvintele din cele două fişiere, în ordine alfabetică.

#include <iostream.h>
#include <conio.h>
#include <string.h>
#include<fstream.h>
#include<stdio.h>
void main()
{char a[10], b[10], cuv[10][20], aux[10]; int i,j,nr=0;
clrscr();
fstream f("cuv1.txt", ios::in);
while(f.getline(a,10))strcpy(cuv[++nr],a);
ifstream g("cuv2.txt");
while(g.getline(b,10))strcpy(cuv[++nr],b);

for(i=1;i<nr;i++)
  for(j=i+1;j<=nr;j++)
      if(strcmp(cuv[i],cuv[j])>0)
     {
      strcpy(aux,cuv[i]);
      strcpy(cuv[i],cuv[j]);
      strcpy(cuv[j],aux);
     }
for(i=1;i<=nr;i++)
   cout<<cuv[i]<<endl;
getch();}

3.
  În fişierul date.in  sunt scrise mai multe cuvinte câte unul pe fiecare linie din fişier. Se cere:
a)    Să se determine numărul de cuvinte din fişier;
b)    Să se afişeze cuvintele care încep cu o vocală.

#include<iostream.h>
#include<fstream.h>
#include<string.h>
#include<conio.h>
void main()
{
  char a[10]; int k, i, nr=0;
  clrscr();
  fstream f("date.in",ios::in);
  while(f.getline(a,10))
  {if(a[0]=='a'||a[0]=='e'||a[0]=='i'||a[0]=='o'||a[0]=='u')  cout<<a<<endl; nr++;
  }
   cout<<nr;
}

Recomada si vizitarea paginilor din Exercitii in C++

counter for wordpress

View My Stats