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

   Á¶È¸ 4209   Ãßõ 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 2041/5681
2015-12   1484732   ¹é¸Þ°¡
2014-05   4948044   Á¤ÀºÁØ1
2019-04   4181   ¼öÆÛ½ÎÀ̾ð
2018-02   4181   ¹«¾Æ
2017-03   4181   J2Wn
2017-11   4181   ±è´ë¿ø
2016-11   4181   Á¦¿ÂÇÁ·Î
2017-03   4181   Tu7885
2016-10   4181   ½½·¯±×
2017-10   4181   ´ÃÆĶõ
2014-04   4181   ȸ·ÎÀïÀÌ
2015-03   4182   Á¡¼øÀÌ
2016-07   4182   °¡¶÷ÀÌ´ç1
2021-01   4182   ÇϽÂÇù
2018-10   4182   Qsik
2016-03   4182   ±è°Ç¿ì
2016-06   4182   ¼ÇÇѸÆÁÖ
2016-01   4182   ÀÓÁø¿í
2016-10   4182   ¸®Â¯
2018-10   4182   DDDIE
2020-08   4182   ¸¸»ç¿ÀÄÉÀÌ
2014-10   4182   GoM79x