Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Aim: To implement a program for following string operations:
Code:
class String
{
char str[50];
public:
String();
void getdata();
int length1();
void concat(String s);
String substring(int ind, int len);
char charAt(int ind);
int indexOf(char ch);
String reverse();
void display();
};
void String::display()
cout< } void String::getdata() { gets(str); } String::String() { strcpy(str,""); } int String::length1() { int l; l=strlen(str); return (l); } void String::concat(String s) { strcat(str,s.str); } String String::substring(int ind, int len) { int l,x,m; char su[50]; String sub; strcpy(sub.str,""); for(x=ind,m=0;x<=len+1;x++,m++) { su[m]=str[x]; } su[m]='\0'; strcpy(sub.str,su); return (sub); } char String::charAt(int ind) { char c=' '; int l=strlen(str); if(ind>l) cout<<"Position out of Bounds"; else c=str[ind]; return (c); } int String::indexOf(char ch) { int x=1; while(str[x]!=ch && str[x]!='\0') x++; if(str[x]!=ch) return (-1); else return (x); } String String::reverse() { String s; strcpy(s.str,str); strrev(s.str); return (s); } void main() { clrscr(); String s1,s2,s3,s4; cout<<"Enter string 1:"; s1.getdata(); cout<<"\n\nEnter string 2:"; s2.getdata(); char ch='o'; int l=s1.length1(); cout<<"\n\nLength of string: '"; s1.display(); cout<<" 'is "< s1.concat(s2); cout<<"\n\nAfter concatenation:"; s1.display(); int ind=2, len=4; cout<<"\n\nStart Index="< s3.display(); char c=s1.charAt(ind+4); cout<<"\n\nCharacter at Index: "< int i=s1.indexOf(ch); cout<<"\n\nIndex of '"< s4=s1.reverse(); cout<<"\n\nReverse of \n\t'"; s1.display(); cout<<"'\n\t\tis \n\t"; s4.display(); getch(); } Output: Enter string 1: Ankit Goyal is Enter string 2: a student of VESIT. Length of string: 'Ankit Goyal is ' is 14 After concatenation: Ankit Goyal is a student of VESIT. Start Index=2 Length of Substring=4 Substring: kit Character at Index: 6 is 'G' Index of 'o' is: 7 Reverse of 'Ankit Goyal is a student of VESIT.' is .TISEV fo tneduts a si layoG tiknA
}
void String::getdata()
gets(str);
String::String()
strcpy(str,"");
int String::length1()
int l;
l=strlen(str);
return (l);
void String::concat(String s)
strcat(str,s.str);
String String::substring(int ind, int len)
int l,x,m;
char su[50];
String sub;
strcpy(sub.str,"");
for(x=ind,m=0;x<=len+1;x++,m++)
su[m]=str[x];
su[m]='\0';
strcpy(sub.str,su);
return (sub);
char String::charAt(int ind)
char c=' ';
int l=strlen(str);
if(ind>l)
cout<<"Position out of Bounds";
else
c=str[ind];
return (c);
int String::indexOf(char ch)
int x=1;
while(str[x]!=ch && str[x]!='\0')
x++;
if(str[x]!=ch)
return (-1);
return (x);
String String::reverse()
String s;
strcpy(s.str,str);
strrev(s.str);
return (s);
void main()
clrscr();
String s1,s2,s3,s4;
cout<<"Enter string 1:";
s1.getdata();
cout<<"\n\nEnter string 2:";
s2.getdata();
char ch='o';
int l=s1.length1();
cout<<"\n\nLength of string: '";
s1.display();
cout<<" 'is "< s1.concat(s2); cout<<"\n\nAfter concatenation:"; s1.display(); int ind=2, len=4; cout<<"\n\nStart Index="< s3.display(); char c=s1.charAt(ind+4); cout<<"\n\nCharacter at Index: "< int i=s1.indexOf(ch); cout<<"\n\nIndex of '"< s4=s1.reverse(); cout<<"\n\nReverse of \n\t'"; s1.display(); cout<<"'\n\t\tis \n\t"; s4.display(); getch(); } Output: Enter string 1: Ankit Goyal is Enter string 2: a student of VESIT. Length of string: 'Ankit Goyal is ' is 14 After concatenation: Ankit Goyal is a student of VESIT. Start Index=2 Length of Substring=4 Substring: kit Character at Index: 6 is 'G' Index of 'o' is: 7 Reverse of 'Ankit Goyal is a student of VESIT.' is .TISEV fo tneduts a si layoG tiknA
s1.concat(s2);
cout<<"\n\nAfter concatenation:";
int ind=2, len=4;
cout<<"\n\nStart Index="< s3.display(); char c=s1.charAt(ind+4); cout<<"\n\nCharacter at Index: "< int i=s1.indexOf(ch); cout<<"\n\nIndex of '"< s4=s1.reverse(); cout<<"\n\nReverse of \n\t'"; s1.display(); cout<<"'\n\t\tis \n\t"; s4.display(); getch(); } Output: Enter string 1: Ankit Goyal is Enter string 2: a student of VESIT. Length of string: 'Ankit Goyal is ' is 14 After concatenation: Ankit Goyal is a student of VESIT. Start Index=2 Length of Substring=4 Substring: kit Character at Index: 6 is 'G' Index of 'o' is: 7 Reverse of 'Ankit Goyal is a student of VESIT.' is .TISEV fo tneduts a si layoG tiknA
s3.display();
char c=s1.charAt(ind+4);
cout<<"\n\nCharacter at Index: "< int i=s1.indexOf(ch); cout<<"\n\nIndex of '"< s4=s1.reverse(); cout<<"\n\nReverse of \n\t'"; s1.display(); cout<<"'\n\t\tis \n\t"; s4.display(); getch(); } Output: Enter string 1: Ankit Goyal is Enter string 2: a student of VESIT. Length of string: 'Ankit Goyal is ' is 14 After concatenation: Ankit Goyal is a student of VESIT. Start Index=2 Length of Substring=4 Substring: kit Character at Index: 6 is 'G' Index of 'o' is: 7 Reverse of 'Ankit Goyal is a student of VESIT.' is .TISEV fo tneduts a si layoG tiknA
int i=s1.indexOf(ch);
cout<<"\n\nIndex of '"< s4=s1.reverse(); cout<<"\n\nReverse of \n\t'"; s1.display(); cout<<"'\n\t\tis \n\t"; s4.display(); getch(); } Output: Enter string 1: Ankit Goyal is Enter string 2: a student of VESIT. Length of string: 'Ankit Goyal is ' is 14 After concatenation: Ankit Goyal is a student of VESIT. Start Index=2 Length of Substring=4 Substring: kit Character at Index: 6 is 'G' Index of 'o' is: 7 Reverse of 'Ankit Goyal is a student of VESIT.' is .TISEV fo tneduts a si layoG tiknA
s4=s1.reverse();
cout<<"\n\nReverse of \n\t'";
cout<<"'\n\t\tis \n\t";
s4.display();
getch();
Output:
Enter string 1: Ankit Goyal is
Enter string 2: a student of VESIT.
Length of string: 'Ankit Goyal is ' is 14
After concatenation: Ankit Goyal is a student of VESIT.
Start Index=2
Length of Substring=4
Substring: kit
Character at Index: 6 is 'G'
Index of 'o' is: 7
Reverse of
'Ankit Goyal is a student of VESIT.'
is
.TISEV fo tneduts a si layoG tiknA
Destructor: The purpose of destructor is to free the memory when the compiler memory is reduced or not enough to execute certain program. Sometimes there may several objects op
why c++
What are Id e n t i f ie rs a n d C o n s t a n ts in C++? Id e n t i f ie r a n d C o n s t a n t : I d e n t i f ie r
C Program to FIND VOWELS void main() { char str[50]; int ac=0, ec=0, ic=0, oc=0, uc=0; int i,stln,vc,word=1; clrscr
program and solution for the above question
Study the given hierarchical class diagram and additional information, and answer the questions that follow: Sale Company: string unitPrice: double
Create a user-defined data structure (struct) called Node that represents a node within a linked list where the "data" stored in each node is a pointer to a Car object. a) Wr
obtain two numbers from thekey board,and determain and display(if either)is the larger of two numbers.
limitations of increment operator
Explain the Formatted Input Output with Strings? These are the third set of the scanf and printf families. They are called sscanf and sprintf. sprintf Puts formatted dat
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd