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
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 |
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 |
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 |
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 |
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 |
union u { struct st { int i : 4; int j : 4; int k : 4; int l; }st; int i; }u; main() { u.i = 100; printf("%d, %d, %d",u.i, u.st.i, u.st.l); } a. 4, 4, 0 b. 0, 0, 0 c. 100, 4, 0 d. 40, 4, 0
void main () { int x = 10; printf ("x = %d, y = %d", x,--x++); } a. 10, 10 b. 10, 9 c. 10, 11 d. none of the above
How can I Create a C program in splitting set of characters to specific subsets. Example: INPUT SET OF CHARACTERS: Therefore, my dear brothers and sisters, stand firm. Let nothing move you. Always give yourselves fully to the work of the Lord, because you know that your labor in the Lord is not in vain. SPLIT INTO HOW MANY CHARACTERS PER SUBSETS: 10 OUTPUT: Therefore, my dear b rothers an d sisters, stand fir m. Let not hing move you. Alway s give you rselves fu lly to the work of t he Lord, b ecause you know that your labo r in the L ord is not in vain.
main( ) { int a[2][3][2] = {{{2,4},{7,8},{3,4}},{{2,2},{2,3},{3,4}}}; printf(“%u %u %u %d \n”,a,*a,**a,***a); printf(“%u %u %u %d \n”,a+1,*a+1,**a+1,***a+1); }
Derive expression for converting RGB color parameters to HSV values
What is wrong with the following code? int *foo() { int *s = malloc(sizeof(int)100); assert(s != NULL); return s; }
main() { int i=5,j=6,z; printf("%d",i+++j); }
Ramesh’s basic salary is input through the keyboard. His dearness allowance is 40% of basic salary, and house rent allowance is 20% of basic salary. Write a program to calculate his gross salary.
how to delete an element in an array
main() { char str1[] = {‘s’,’o’,’m’,’e’}; char str2[] = {‘s’,’o’,’m’,’e’,’\0’}; while (strcmp(str1,str2)) printf(“Strings are not equal\n”); }
Write a C function to search a number in the given list of numbers. donot use printf and scanf
int DIM(int array[]) { return sizeof(array)/sizeof(int ); } main() { int arr[10]; printf(“The dimension of the array is %d”, DIM(arr)); }