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
Is Overloading of Destructor possible?
Data is required to be fed into the program (input) and sent out of the program (output). Considering the draughtsman using a CAD station, the input is his commands to cause lines/
Pointer to function: int mul(int a, int b, int c) { return a*b*c; } void main() { int (*function_pointer)(int, int, int); function_pointer = &mul;
Example of structure: struct item { int element; node_ptr next; }; typedef node_ptr stack; stack create(void) {
Call by Reference Passing variables(parameters) to a function in C can be done in two ways - pass by value, also called as call by value and pass by address or also known as ca
how to write a c program for stone game
Overloading Unary Operators class sign {int a,b,c; public: sign(){}; sign(int,int,int); void putdata(void); void operator-(); }; void sign::operator-() {a=
A: 1. By using const protects you against programming errors which inadvertently alter data. 2. By using const allows function to procedure const and non-const actu
Operators The variables, which are declared and explained, are the operands, which are operated upon by the operators. Operators specify what operations are to be performed on
Define the following Window class : - integer data members, width and height - a constructor that accepts two integer parameters (width followed by height) and uses them to ini
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