[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
Solved

# Bills

Posted on 1998-02-13
Medium Priority
234 Views
User enters dollar amount as float
output should be the highest number of bills and coins (TWENTIES, TENS, FIVES, ONES, quarters, dimes, nickels, pennies). Any help is appreciated.

#include <stdio.h>

void main()
{
unsigned TWENTIES, TENS, FIVES, ONES, quarters, dimes, nickels, pennies;
float amount_user;

printf("Enter Dollar amount between \$0.00 and \$100.00:");
scanf("%d", &amount_user);
amount_user=amount_user*100;
printf("%d, amount_user\n");

while (amount_user !=0)
{
if(amount_user>=2000)
{
amount_user=amount_user/2000;

}
else if(amount_user>=1000)
{
amount_user-=1000;
TENS++;
}
else if(amount_user>=500)
{
amount_user-=500;
FIVES++;
}
else if(amount_user>=100)
{
amount_user-=100;
ONES++;
}
else if(amount_user>=25)
{
amount_user-=25;
quarters++;
}
else if(amount_user>=10)
{
amount_user-=10;
dimes++;
}
else if(amount_user>=05)
{
amount_user-=5;
nickels++;
}
else if(amount_user>=1)
{
amount_user-=1;
pennies++;
}
else
{
break;
}
}
printf("There are %d TWENTIES\n", TWENTIES);
printf("There are %d TENS\n", TENS);
printf("There are %d FIVES\n", FIVES);
printf("There are %d ONES\n", ONES);
printf("There are %d quarters\n", quarters);
printf("There are %d dimes\n", dimes);
printf("There are %d nickels\n", nickels);
printf("There are %d pennies\n", pennies);
}

0
Question by:catalyst19002800

LVL 3

Expert Comment

ID: 1257247
catalyst19002800 what you mean by "the highest number of bills and coins".

0

LVL 5

Accepted Solution

julio011597 earned 60 total points
ID: 1257248
I guess you mean "the best efficient" way to distribute the amount among bills and coins.

--//--
#include <stdlib.h>
#include <stdio.h>

int main(void)
{
unsigned int TWENTIES, TENS, FIVES, ONES, quarters, dimes, nickels, pennies;
unsigned int amount_user;

while(1)  {
float tmp_amount;

printf("Enter amount between \$0.00 and \$100.00: ");
scanf("%f", &tmp_amount);
if(tmp_amount >=0 && tmp_amount <= 100) {
amount_user = (unsigned int)(tmp_amount * 100);
break;
}
}

TWENTIES = TENS = FIVES = ONES =
quarters = dimes = nickels = pennies = 0;

while(amount_user >= 2000) {
amount_user -= 2000;
TWENTIES++;
}

while(amount_user >= 1000) {
amount_user -= 1000;
TENS++;
}

while(amount_user >= 500) {
amount_user -= 500;
FIVES++;
}

while(amount_user >= 100) {
amount_user -= 100;
ONES++;
}

while(amount_user >= 25) {
amount_user -= 25;
quarters++;
}

while(amount_user >= 10) {
amount_user -= 10;
dimes++;
}

while(amount_user >= 5) {
amount_user -= 5;
nickels++;
}

while(amount_user >= 1) {
amount_user -= 1;
pennies++;
}

printf("There are %d TWENTIES\n", TWENTIES);
printf("There are %d TENS\n", TENS);
printf("There are %d FIVES\n", FIVES);
printf("There are %d ONES\n", ONES);
printf("There are %d quarters\n", quarters);
printf("There are %d dimes\n", dimes);
printf("There are %d nickels\n", nickels);
printf("There are %d pennies\n", pennies);

return EXIT_SUCCESS;
}
--//--

HTH, julio
0

Expert Comment

ID: 1257249
Your objective can be achieved in about 10 lines of C code, using a simple "for' loop
for more details , get back to me.
-rsjetty
0

Expert Comment

ID: 1257250
Your objective can be achieved in about 10 lines of C code, using a simple "for' loop
for more details , get back to me.
-rsjetty
0

Author Comment

ID: 1257251
This was mostly correct but some of the answers were wrong and that was fixed. One too little peenies. Anyway, I played around with the last While(---) and got it fixed. Thanks for your help.
0

LVL 5

Expert Comment

ID: 1257252
Would you mind telling what was wrong, and what has been your fix?
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Windows programmers of the C/C++ variety, how many of you realise that since Window 9x Microsoft has been lying to you about what constitutes Unicode (http://en.wikipedia.org/wiki/Unicode)? They will have you believe that Unicode requires you to useâ€¦
Examines three attack vectors, specifically, the different types of malware used in malicious attacks, web application attacks, and finally, network based attacks.  Concludes by examining the means of securing and protecting critical systems and infâ€¦
The goal of this video is to provide viewers with basic examples to understand opening and writing to files in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use conditional statements in the C programming language.
###### Suggested Courses
Course of the Month20 days, 2 hours left to enroll