write a c program to print the values in words
eg:- 143 written it has (one hundred and forty three)&
104, 114 are also written words
Answer Posted / vadivel t
Hi,
I have written code for only 3 digit numbers(u may not get
exact result for 100, 200, 113 etc ). This is just for an
idea from which u can build ur logic.
I accept... This code can be optimised.
Dont think that code is too lengthy... cos we hav to hav
limited if, else if or switch for this requirement.
Apply ur logic for 123455677 kind of nos.
#include <stdio.h>
/*Convert no to word... only for 3 digit nos*/
void ConvertToWord(int length);
char* Tens(int *a);
int Temp[10], Length = 0;
int main()
{
int No = 999, DupNo, i, j;
printf("ENTER THE THREE DIGIT NO: ");
scanf("%d", &No);
DupNo = No;
while(DupNo != 0)
{
Temp[Length] = DupNo % 10;
DupNo = DupNo / 10;
Length++;
}
printf("%d - ", No);
ConvertToWord(Length);
_getch();
}
void ConvertToWord(int Length)
{
while(Length != 0)
{
switch(Length)
{
case 0:
break;
case 1:
switch(Temp[Length - 1])
{
case 0:
break;
case 1:
printf("ONE ");
break;
case 2:
printf("TWO ");
break;
case 3:
printf("THREE ");
break;
case 4:
printf("FOUR ");
break;
case 5:
printf("FIVE ");
break;
case 6:
printf("SIX ");
break;
case 7:
printf("SEVEN ");
break;
case 8:
printf("EIGHT ");
break;
case 9:
printf("NINE ");
break;
}
Length--;
break;
case 2:
switch(Temp[Length -1])
{
case 0:
break;
case 1:
break;
case 2:
printf("TWENTY ");
break;
case 3:
printf("THIRTY ");
break;
case 4:
printf("FORTY ");
break;
case 5:
printf("FIFTY ");
break;
case 6:
printf("SIXTY ");
break;
case 7:
printf("SEVENTY ");
break;
case 8:
printf("EIGHTY ");
break;
case 9:
printf("NINETY ");
break;
}
Length--;
break;
case 3:
printf("%s HUNDRED AND ", Tens(&Temp[--
Length]));
break;
}
}
}
char* Tens(int *a)
{
char *ch;
switch(*a)
{
case 0:
ch = "ZERO";
break;
case 1:
ch = "ONE";
break;
case 2:
ch = "TWO";
break;
case 3:
ch = "THREE";
break;
case 4:
ch = "FOUR";
break;
case 5:
ch = "FIVE";
break;
case 6:
ch = "SIX";
break;
case 7:
ch = "SEVEN";
break;
case 8:
ch = "EIGHT";
break;
case 9:
ch = "NINE";
break;
}
return ch;
}
| Is This Answer Correct ? | 3 Yes | 7 No |
Post New Answer View All Answers
Write a program to replace n bits from the position p of the bit representation of an inputted character x with the one's complement. Method invertBit takes 3 parameters x as input character, p as position and n as the number of positions from p. Replace n bits from pth position in 8 bit character x. Then return the characters by inverting the bits.
Does sprintf put null character?
What should malloc() do? Return a null pointer or a pointer to 0 bytes?
What is the difference between typedef struct and struct?
hello freinds next week my interview in reliance,nybody has an idea about it intervew questions..so tell
Explain what is meant by 'bit masking'?
diff between exptected result and requirement?
What is a nested formula?
What are the two forms of #include directive?
Why can’t we compare structures?
Why do we use null pointer?
How do you define CONSTANT in C?
What is a stream water?
What are global variables and explain how do you declare them?
Are there constructors in c?