Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


Write a prog to accept a given string in any order and flash
error if any of the character is different.

For example : If abc is the input then abc, bca, cba, cab
bac are acceptable, but aac or bcd are unacceptable.

Answers were Sorted based on User's Feedback



Write a prog to accept a given string in any order and flash error if any of the character is diffe..

Answer / santhoo035

#include<iostream.h>
#include<string.h>
int main()
{
int flag=0,i=0,j=0;
char ar[4]="abc" ;
char temp[4];
cout<<"Plz enter a string with size #3";
cin>>temp;
for(j=0;ar[j];j++)
{
flag=0;
for(i=0;temp[i];i++)
{
if(ar[j]==temp[i])
flag+=1;
}
if(flag==0||flag>1)
break;
}
if(flag==0||flag>1)
cout<<"Not accepted";
else
cout<<"Accepted";
}
Note:PLz convert "iostream.h" into "stdio.h" and "cout<<"
to "printf"

Is This Answer Correct ?    6 Yes 4 No

Write a prog to accept a given string in any order and flash error if any of the character is diffe..

Answer / ew

The above is broken. If the ar[4] is "aac" rather
than "abc" it fails.

#include "stdio.h"

#define CountOf(a) (sizeof(a)/sizeof(*a))

int main(int argc, _TCHAR* argv[])
{


char data[] = "abc";
char test[CountOf(data)];

printf("Enter %d characters: ", CountOf(data)-1);
scanf("%s", test);

for (int i=0;i < CountOf(data);i++)
{
for (int j=0;j < CountOf(data);j++)
{
if (data[i] == test[j])
{
test[j] = 0;
break;
}
}
}

for (int i=0;i < CountOf(data);i++)
{

if (test[i]) {
printf("\nNot ");
break;
}
}
printf("\nAccepted");

return 1;
}

Is This Answer Correct ?    2 Yes 2 No

Write a prog to accept a given string in any order and flash error if any of the character is diffe..

Answer / rahul shandilya

both of the solutions above given have complexity O(N^2),
i have tried to solve it in O(N).let me inform if there is
any bug or better solution .

#include<iostream>
using namespace std;
int main()
{
int a[130],a1[130];
memset(a,0,sizeof(a));
memset(a1,0,sizeof(a));
char ans[1000];
char str[]="putanystringhere";
for(int i=0;i<sizeof(str)/sizeof(char)-1;i++)
{
a[(int)str[i]]+=1;
}
cout<<"Enter any string of length
"<<sizeof(str)/sizeof(char)-1<<" :";
cin>> ans;
for(int i=0;i<sizeof(str)/sizeof(char)-1;i++)
{
a1[(int)ans[i]]+=1;
}
bool flag=true;
for(int i=0;i<sizeof(str)/sizeof(char)-1;i++)
{
if(a[(int)str[i]]!=a1[(int)str[i]])
{
flag=false;
break;
}
}
if(flag==true)
cout<<"No error";
else
cout<<"Error";
system("pause");
return 0;
}

Is This Answer Correct ?    1 Yes 3 No

Write a prog to accept a given string in any order and flash error if any of the character is diffe..

Answer / sivan

if we ask the user to enter the second string having the
same characters as in the first string, the program
essentailly reduces to finding whether there is a
repetition in the second string. A program for this is
given below.

#include<iostream>
using namespace std;

int main()
{
char string1[10];
char string2[10];
int flag = 0;

cout<<"\n Enter the first string";
cin>>string1;
cout<<"\n Enter the second string with the same
characters as entered in string1";
cin>>string2;
for(int i = 0; i < strlen(string2); i++)
{
for(int j = i+1; j < strlen(string2) ; j++)
{
if(string2[i] == string2[j])
{
flag = 1;
break;
}
}
}

if(flag ==1)
cout<<"\n wrong";
else
cout<<"\n correct";

return 0;
}

Is This Answer Correct ?    2 Yes 4 No

Write a prog to accept a given string in any order and flash error if any of the character is diffe..

Answer / yegullelew

My answer is O(n) - but it is done in C# sorry for C guys
public bool isAccepted(string original, string
toCompare)
{
if (original.Length != toCompare.Length)
return false;
bool[] flags = new bool[128];
for (int i = 0; i < toCompare.Length; i++)
flags[toCompare[i]] = true;
for (int i = 0; i < original.Length; i++)
if (!flags[original[i]])
return false;
return true;
}

Is This Answer Correct ?    1 Yes 4 No

Post New Answer

More C Code Interview Questions

How to palindrom string in c language?

6 Answers   Google,


int main() { int x=10; printf("x=%d, count of earlier print=%d", x,printf("x=%d, y=%d",x,--x)); getch(); } ================================================== returns error>> ld returned 1 exit status =================================================== Does it have something to do with printf() inside another printf().

1 Answers  


create a login program that ask username and password. if you input username or password 3 times wrong, the program will terminate else the program will prompt a message "congratulations"

2 Answers  


main() { int x=5; clrscr(); for(;x<= 0;x--) { printf("x=%d ", x--); } } a. 5, 3, 1 b. 5, 2, 1, c. 5, 3, 1, -1, 3 d. –3, -1, 1, 3, 5

2 Answers   HCL,


main() { int a=10,*j; void *k; j=k=&a; j++; k++; printf("\n %u %u ",j,k); }

1 Answers  


func(a,b) int a,b; { return( a= (a==b) ); } main() { int process(),func(); printf("The value of process is %d !\n ",process(func,3,6)); } process(pf,val1,val2) int (*pf) (); int val1,val2; { return((*pf) (val1,val2)); }

1 Answers   Satyam,


How do I write a program to print proper subset of given string . Eg :input: abc output:{},{a},{b},{c},{a,b},{a,c},{b,c}, {a,b,c}.I desperately need this program please mail me to saravana6m@gmail.com

11 Answers   Deshaw, Infosys,


How will u find whether a linked list has a loop or not?

8 Answers   Microsoft,


What is full form of PEPSI

0 Answers  


hello sir,is there any function in C that can calculate number of digits in an int type variable,suppose:int a=123; 3 digits in a.what ll b answer?

6 Answers  


#include<stdio.h> main() { char s[]={'a','b','c','\n','c','\0'}; char *p,*str,*str1; p=&s[3]; str=p; str1=s; printf("%d",++*p + ++*str1-32); }

2 Answers   CNSI,


program to Reverse a linked list

12 Answers   Aricent, Microsoft, Ness Technologies,


Categories