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

Scrieţi un program care citeşte de la tastatură un număr natural n (n<100) si apoi n
cuvinte, câte unul pe linie. Cuvintele sunt formate fiecare din minimum două litere şi
maximum 20, doar litere mici ale alfabetului englez. Programul va afişa pe ecran
numărul de cuvinte care rimează cu primul cuvânt citit. Spunem că două cuvinte
rimează dacă au ultimele două caractere identice.
Exemplu. Pentru cuvintele:
care
masa
mare
casa
test
lucrare
se va afișa: 2 deoarece cuvantul care rimează cu cuvintele mare si lucrare


andreea4452: s a rezolvat.
andreea4452: #include
#include
using namespace std;

int main()
{
char a[21],b[21];
int i,k=0,n;
cin>>n;
cin>>a;
for(i=1;i<=n;i++)
{
cin>>b;
if(a[strlen(a)-i]==b[strlen(b)-i])
k++;
}
cout< return 0;
}
lucaciucandrei: nu, nu e ok solutia ta

Răspunsuri la întrebare

Răspuns de lucaciucandrei
2

#include<iostream>

#include<cstring>

using namespace std;

int main(){

   int n,k=0;

   cin>>n;

   char cuv1[21],cuv[21];

   cin>>cuv1;

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

       cin>>cuv;

       if(strcmp(cuv1+strlen(cuv1)-2,cuv+strlen(cuv)-2)==0)

           k++;

   }

   cout<<k;

   return 0;

}

Alte întrebări interesante