llabllab   4년 전

안녕하세요. 자바로 간단한 코딩해봤는데 원하는 값이 안나옵니다. 분석을 해보면  n20이 4 n10이 3 n5가 4 n1이 20 이 나와야 하는데.. 이렇게 나오지가 않네요. 어디서 놓친걸까요.? 제발 도와주세요 며칠째 이문제 때문에 다른일을 못하겠습니다 ㅠㅠ

hyungryuk   4년 전

++N20은 N20=N20+1;을 해당 줄 이전에 계산해서 해당 줄을 수행해줍니다.

따라서 if문안에 조건검사식에서 ++N20을 넣었다 하더라고 이미 N20은 1이 더해지고 다시 조건문 안에서 또 1이더해지니 매 조건문마다 +2씩 되는거나 마찬가지에요

   while(N1<20){
      if(((N20+1)*20)+(N10*10)+(N5*5)<135 && N1<20){
         ++N20;
      }
      if((N20*20)+((N10+1)*10)+(N5*5)<135 && N1<20){
      ++N10;
      }
      if((N20*20)+(N10*10)+((N5+1)*5)<135 && N1<20){
      ++N5;
   }
      if((N20*20)+(N10*10)+(N5*5)<135 && N1+1<20){
      ++N1;}}


로 고치면 될것같아요


llabllab   4년 전

답변 정말 감사드립니다. 처음 알게된 사실이네요.. 정말 감사합니다!

댓글을 작성하려면 로그인해야 합니다.