Advertisement
Gilgamesh858

suffisso_BA

Nov 26th, 2014
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.90 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cstdlib>
  4. #include <string>
  5.  
  6. using namespace std;
  7.  
  8. int main()
  9. {
  10.     //Dato un array di stringhe casuali, dire se lla stringa "ba" è un suffisso di una qualche stringa appartente all'array
  11.  
  12.     /*
  13.      * Creato da Trupia Ludovico
  14.      */
  15.  
  16.     srand(time(NULL));
  17.  
  18.     int n = ((rand() % 4) + 2) * 2;
  19.     char consonanti[16] = {'b','c','d','f','g','h','l','m','n','p','q','r','s','t','v','z'};
  20.     char vocali[5] = {'a','e','i','o','u'};
  21.     string parole[10];
  22.     int conta = 0;
  23.     bool niente = true;
  24.  
  25.     cout << endl;
  26.  
  27.     for( int j = 0; j < 10; j++)
  28.     {
  29.         n = ((rand() % 4) + 2) * 2; //Creo un numero casuale tra 4 - 6 - 8 - 10 che determinerà la lunghezza della parola
  30.  
  31.         for( int i = 0; i < n; i++)
  32.         {
  33.             if( i % 2 == 0 ) //Scelgo tra consonante e vocale
  34.             {
  35.                parole[j] += consonanti[rand()%16]; //Inserisco la consonante
  36.             }
  37.             else
  38.             {
  39.                 parole[j] += vocali[rand()%5]; //Inserisco la vocale
  40.             }
  41.         }
  42.  
  43.         cout << parole[j] << endl << endl; //Stampo a video le varie lettere man mano che le inserisco
  44.     }
  45.     cout << endl << endl;
  46.  
  47.     for( int i = 0; i < 10; i++)
  48.     {
  49.         conta = parole[i].length();
  50.  
  51.         if( parole[i][conta-2] == 'b' && parole[i][conta-1] == 'a' ) //Cerco nella penultima lettera della parola-iesima una 'b' e nell'ultima una 'a'
  52.         {
  53.             cout << "La Stringa " << parole[i] << " contiene il suffisso \"ba\"" << endl << endl;
  54.             niente = false; //Se non trova nulla nella parola-iesima niente resta vera altrimenti la mette a falso
  55.         }
  56.     }
  57.  
  58.     if( niente ) //Se niente è vera allora nessuna parola contiene un suffisso formato dalle lettere 'ba'
  59.     {
  60.         cout << "Nessuna stringa contiene \"ba\"" << endl << endl;
  61.     }
  62.  
  63.     return 0;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement