Se citește un șir de caractere de maxim 150, litere mici ale alfabetului englez și spații.
Se cere: h) Să se determine de câte ori apare ultimul cuvânt în șir
Daca am "masa paine lapte paine lapte" trebuie sa afiseze 2, pentru ca lapte apare de 2 ori si este ultimul cuvant din sir.
Răspunsuri la întrebare
Răspuns de
1
#include <iostream>
#include <cstring>
using namespace std;
int main(){
char txt[150], cuv[15][10];
cin.get(txt,150);
//Imparte textul in cuvinte
char *p=strtok(txt," ");
int i=0;
while(p != NULL){
strcpy(cuv[i++],p);
p=strtok(NULL," ");
}
//Verifica cate cuvinte sunt identice cu ultimul cuvant
i--;
int nr=1;
for(int j=0;j<i;j++){
if(strcmp(cuv[i],cuv[j])==0) nr++;
}
//Afisare rezultat
cout << nr;
}
breodrgaming:
Iti multumesc mult!
indiferent cate cuvinte sunt la fel cu ultimul
Programul face diferenta intre literele mari si literele mici. ("lapte" este diferit de "Lapte" ).
Am testat pe exemplul dat, pentru "masa paine lapte paine lapte" se afiseaza 2
iar eu nu scriu nimic cu litera mare, totul e cu litera mica
Te asigur ca programul merge exact asa cum ar trebui sa mearga, asa cum poti vedea in link-ul de mai sus.
https://imgur.com/a/A6Ly892
atunci iti multumesc mult pentru explicatie!
Alte întrebări interesante
Biologie,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Engleza,
9 ani în urmă