Two String values are passed as input. Find if the second string s2 is a substring of the first string s1. If it is, print the index of the first occurrence.Else print -1. Input make123India 123 Output 4

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter7: Characters, Strings, And The Stringbuilder
Section: Chapter Questions
Problem 12RQ
icon
Related questions
Question

Two String values are passed as input. Find if the second string s2 is a substring of the first string
s1. If it is, print the index of the first occurrence.Else print -1.
Input
make123India
123
Output
4
*/
#include<iostream>
#include<string.h>
using namespace std;
int isSubstring(string s1, string s2) 
{    int temp,j;
     for(int i=0;s1[i]!='\0';i++)
    {
        j=0;
        if(s1[i]==s2[j])
        {
            temp=i+1;
            while(s1[i]==s2[j])
            {
                i++;
                j++;
            }
            if(s2[j]=='\0')
            {
                return temp-1;
            }
            else
            {
                i=temp;
                temp=0;
            }
        }
    }
    if(temp==0)
        return -1;

int main(int argc, char const *argv[])
{
    string s1,s2;
    getline(cin,s1);
    getline(cin,s2);
    int res = isSubstring(s1,s2);
    if(res==-1)
        cout<<res;
    else 
        cout<<"Found at index: "<<res;.

 

Expert Solution
steps

Step by step

Solved in 4 steps with 4 images

Blurred answer
Knowledge Booster
Methods of StringBuilder class
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT