Rezolvare simulare BAC 2019 Informatica (MI) – Subiectul al III-lea problema 2

Become a Patron!

Mai jos puteti gasi rezolvarea problemei 2 de la subiectul al III-lea din simularea pentru examenul de bacalaureat (mate-info) din anul 2019.

Rezolvare:

Spor la lucru! Daca aveti intrebari nu ezitati sa le lasati in comentarii, va vom raspunde cat de repede putem 🙂

4 Comments

  1. cine vrea o varianta fara strtok

    #include
    #include

    using namespace std;

    void m(char *npro){
    char *cuvinte[4] = { “LICEUL”, “NATIONAL”, “TEORETIC”,”COLEGIUL” };

    for (int b=0;b<strlen(*cuvinte);b++){
    if (strstr(cuvinte[b], npro)) {cout<<cuvinte[b]<<" ";break;}

    }

    }

    int main()
    {
    char prop[100], npro[100];
    int c=0,i,o;
    cin.getline(prop,100);

    for(i=0;i<strlen(prop);i++){

    if (prop[i]!=' '){
    if (prop[i]!='.')
    npro[c]=prop[i]; else { m(npro);
    c=-1; npro[0]=0 ;o=i;
    }

    c++;

    }

    }

    cout<<strcpy(prop, prop+o+2);

    }

    1

    Reply

  2. #include
    #include
    using namespace std;

    int main()
    {
    char cc[]=”COLEGIUL”, cl[]=”LICEUL”, cn[]=”NATIONAL”, ct[]=”TEORETIC”, s[51],a[101]={‘\0’};
    int i,n,k,j,l;
    cin.get(s,51);
    n=strlen(s);
    k=0;
    for(i=0;i<n;i++)
    {
    if(s[i]==' '|| i==n-1)
    {
    if(s[i-1]=='.')
    {if(s[k]==cc[0]) strcat(a,cc);
    else if(s[k]==cl[0]) strcat(a,cl);
    else if(s[k]==cn[0]) strcat(a,cn);
    else if(s[k]==ct[0]) strcat(a,ct);
    strcat(a," ");}
    else
    {
    l=strlen(a);
    for(j=k;j<=i;j++)
    {a[l]=s[j]; l++;}

    }
    k=i+1;
    }
    }
    cout<<a;
    return 0;
    }

    Reply

  3. #include
    #include
    using namespace std;
    int main()
    {
    int i,ok;
    char sir[51],sirNou[51];
    cin.get(sir,51);
    char prescurtare[5][3]={“CO”,”LI”,”NA”,”TE”};
    char neprescurtat[5][9]={“COLEGIUL”,”LICEUL”,”NATIONAL”,”TEORETIC”};
    char *cuvant=strtok(sir,” “);
    while(cuvant)
    {
    ok=0;
    i=0;
    while(ok==0 && i<4) // testez daca cuvantul spart de functie incepe cu CO,LI,NA,TE
    {
    if(strstr(cuvant,prescurtare[i])-cuvant==0)
    ok=1;
    else
    i++;
    }
    if(ok==1) // daca gasesc strstr prescurtat adaug cuvantul neprescurtat in noul sir
    strcat(sirNou,neprescurtat[i]);
    else strcat(sirNou,cuvant); // linia asta nu este executata niciodata
    strcat(sirNou," ");
    cuvant=strtok(NULL," ");
    }
    cout<<sirNou;
    }

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *