프로그래밍과 새로운 루프를 함께 사용하는 방법을 이해하는 데 약간의 어려움이 있습니다.다중 중첩 루프 중첩 - CS50 greedy.c less
당신은 내가 동전의 개수가 증가 얻을 수 있습니다 내 코드에서 볼 수있는,하지만 난 라인으로 변경 전체 라인을 카운트 다운 do-while
루프에 반대 while
루프를 사용하는 것을 생각합니다.
아마 내가 필요 이상으로 복잡하게 만들고 있지만 복수형 while
은 변경 값을 계산하는 가장 좋은 방법일까요?
감사의 말을 들어 주시면 감사하겠습니다.
int main(void)
{
printf("O hai! ");
float change;
do
{
printf("How much change is owed?\n");
change = get_float();
}
while (change <= 0);
int n = (change * 100); // multiply change by 100 to get int in cents(n)
int coin = 0; // new int to represent amount of coins
coin++;
int quart = n - 25; // subtract 25c from n
coin++;
int dime = quart - 10; // subtract 10c from quart
coin++;
int nick = dime - 5; // and so on
coin++;
int penny = nick - 1; // and so on
penny = 0; // and this is only here because I had an unused int (penny)
printf("%i\n", coin);
}
이것은 동전 변화 문제입니다 ... 귀하의 교과 과정 문제에 대해 귀하의 조공을 실제로 방문해야합니다 ... – HuStmpHrrr
edX에서이 수업을 듣고 있습니까? 그렇다면 포럼을 사용해 보셨습니까? 나는 가능한 한 가장 큰 동전을 사용하고 싶습니다. 루프를 사용하지 않고 25 센트 이하가 될 때까지 쿼터를 계속 제거 할 것입니다. 루프를 사용하지 않고 각 동전 하나를 제거하는 것처럼 보입니다. –