Informatică, întrebare adresată de eduardmihailescu26, 8 ani în urmă

Salut. Ma poate ajuta cineva cu aceasta problema de informatica clasa a 12-a? Este din testul de antrenament bac 2007 profil real varianta 18. (c++ va rog).

Anexe:

eduardmihailescu26: mersi mult!

Răspunsuri la întrebare

Răspuns de dvd002
1

Răspuns:

a)

int ordalfabetic(char *a){

   int first_letter = (int) a[0];

   for(int i = 1; a[i] != '\0'; i++){

       if(first_letter > a[i]){

           return 0;

       }else{

           first_letter = (int) a[i];

       }

   }

   return 1;

}

b)

#include <iostream>

#include <fstream>

#include <string.h>

using namespace std;

int ordalfabetic(char *a){

   int first_letter = (int) a[0];

   for(int i = 1; a[i] != '\0'; i++){

       if(first_letter > a[i]){

           return 0;

       }else{

           first_letter = (int) a[i];

       }

   }

   return 1;

}

int main()

{

   ifstream in("bac.txt");

   int n;

   int nr_seturi = 0;

   char sir_cuvinte[10][128];

   in >> n;

   for(int i = 0; i < n; i++){

       char cuvant[128] = "";

       in >> cuvant;

       strcpy(sir_cuvinte[i],cuvant);

   }

   for(int i = 0; i < n-1; i++){

       char cuvintecat[128] = "";

       char cuvintecat_invers[128] = "";

       strcat(cuvintecat,sir_cuvinte[i]);

       strcat(cuvintecat,sir_cuvinte[i+1]);

       strcat(cuvintecat_invers,sir_cuvinte[i+1]);

       strcat(cuvintecat_invers,sir_cuvinte[i]);

       if(ordalfabetic(cuvintecat) || ordalfabetic(cuvintecat_invers)){

           nr_seturi++;

       }

   }

   cout << nr_seturi;

}

Explicație: La punctul b) am folosit functia de la punctul a).

Alte întrebări interesante