ÀÚ¹Ù ÀüÀ§ÈÄÀ§ ¿¬»êÀÚ Áú¹®µå·Á¿ä.

   Á¶È¸ 4169   Ãßõ 0    

 

 
public class Divisor
{

    public static void main(String[] args)
    {
        int n = 10;
        int count = 0;
       
        for(int i = 1; i*i <= n; i++)
        {
            if(10%i == 0)
            {
                count++;
                if(i*i <n)
                {
                    count++;
                }
            }
               
        }
       
        System.out.println(count);
       

    }

}
연휴를 자바 프로그래밍 공부로 보내고 있는 유저입니다.

약수를 구하는 소스 코드인데, 아무리 생각해도 count가 3에서 끝나는데 어떻게 결과값이 4가 나오지?

나중에서 for문에 카운트를 3으로하고 디버깅을 해보니 i값이 3이고 count값이 4가 나오더군요.

질문1) i의 값이 3이였을 때, i의 곱의 값이 10보다 작기 때문에 count값이 3에서 4로 증가한것이 맞는표현인가요?

전위후위 연산자 엄청 햇갈리네요..

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¹«¾Æ 2017-09
¾Æ¹« ÀÌ»óÀÌ ¾ø´Âµ¥¿ä?
4°¡ ¸Â´Â °Å ¾Æ´Ñ°¡¿ä?

Áú¹®1) => ³× ¸Â½À´Ï´Ù.
¹«¾Æ 2017-09
¾Ë°í¸®ÁòÀ» ¼³¸íÇϸé.
 Á¤¼ö(n)¸¦ Á¬¼ö(i)·Î ³ª´©¾î ¶³¾îÁö¸é  ±× ¸òÀ¸·Îµµ ³ª´©¾î ¶³¾îÁú Å×´Ï ¾à¼öÀÇ °¹¼ö´Â 2°³¾¿ Áõ°¡Çϴµ¥ Á¬¼ö(i)¿Í ¸òÀÌ °°Àº °æ¿ì´Â 2°³·Î ¼¼Áö¸»°í 1°³·Î ÇÏÀÚ.
À±ÇÊ¿µ 2017-09
¼Ò½ºÄڵ带 ºÁ¼­´Â ÀüÀ§/ÈÄÀ§¿¬»êÀÚ¿Í ¿øÇÏ´Â °ªÀÇ Ãâ·Â ¿©ºÎ´Â °ü°è°¡ ¾ø¾î º¸ÀÔ´Ï´Ù.

ÀüÀ§/ÈÄÀ§ ¿¬»êÀÚ°¡ °á°úÀÇ Â÷À̸¦ ¸¸µå·Á¸é ¾Æ·¡¿Í °°ÀÌ ÀüÀ§/ÈÄÀ§ ¿¬»êÀÇ ´ë»óÀÌ µÇ´Â º¯¼ö°¡ ÇØ´ç ¶óÀο¡¼­ Ÿ ¿¬»ê¿¡ ÂüÁ¶°¡ µÇ¾î¾ß ÇÕ´Ï´Ù.
  v[0][i++] = left[0][l] <= right[0][r] ? left[0][l++] : right[0][r++];
(i++, l++, r++°¡ ++i, ++l, ++r·Î ġȯµÇ¸é... ¾Öµé ¸»·Î Çï°ÔÀÌÆ® ¿ÀÇÂÀÌ µÇ°ÚÁö¿ä?)
ÀÌÁ¾±Ù 2017-09
ÁÁÀº ÀÇ°ß °¨»çÇÕ´Ï´Ù.


QnA
Á¦¸ñPage 1790/5664
2015-12   1441675   ¹é¸Þ°¡
2014-05   4903142   Á¤ÀºÁØ1
2006-12   6226   ³²¼º·æ
2015-04   6226   ¹Î»çÀå
2015-01   6226   °Ç¾à
2014-05   6226   ±è¿µ±â
2012-02   6226   ½ÂÈĴϵµÄì
2014-07   6226   VSPress
2011-03   6226   ³ª±×³×1
2005-04   6225   ½É±Ô»ó
2005-09   6225   ±è°Ç¿ì
2004-11   6225   ÃÖâÇö
2010-11   6225   ±è°Ç¿ì
2008-04   6225   ÀÌÁ¤Âù
2019-03   6224   Àϸ®ÄÉ
2006-04   6224   °­µ¿Çå
2009-12   6224   ¹Úµ¿¼·
2011-01   6224   »ðÁú¸Å´Ï¾Æ
2014-01   6224   ¼­¿ïl½Â¿ë
2011-03   6224   ÀÌÁö
2014-05   6224   Á¤ÀºÁØ1
2015-01   6224   ¿©ÁÖÀÌ»óµ·