24.2.3.24011530. Napisati funkciju “NadjiPodstring” koja obavlja potpuno istu funkciju kao i funkcija “strstr” iz biblioteke “cstring”. Funkciju treba realizirati isključivo korištenjem pokazivačke aritmetike. Napisanu funkciju testirati u testnom programu koji je principijelno isti kao primjer iz skripte u kojem je demonstrirana funkcija “strstr”.

Opis rješenja:

Listing programa:

#include <iostream>
#include <conio.h>
using namespace std;
int nadji_podstring(char *prvi,char *dr){
int i;
bool t(true);
while(*prvi!=*dr&&(*prvi!=0)){
    prvi++;
    }
while(*prvi!=0){
    t=true;
    i=0;
    while(*dr!=0&&(*prvi!=0)){
        if(*dr!=*prvi){
            t=false;
            break;
        }
        i++;
        dr++;
        prvi++;
    }
    prvi-i;
    dr-i;
    if(t) return (int)prvi;
    prvi++;
}
return 0;
}

int main(){
char a[50],b[50];
cout<<"unesite recenicu (manje od 50 karaktera) i frazu\n"
    <<"da ispitamo da li se unijeta fraza nalazi u recenici:\n";
cin.getline(a,50);
cin.getline(b,50);
if(nadji_podstring(&a[0],&b[0])!=0)
    cout<<"yes!";
else cout<<"no!";
getch();
return 0;
}

Ispis na ekranu:

Riješeni zadaci 2    Index