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

   Á¶È¸ 4455   Ãßõ 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 3530/5699
2015-12   1639414   ¹é¸Þ°¡
2014-05   5102834   Á¤ÀºÁØ1
2016-10   4455   ³ª¸ô¶ó1
2014-08   4455   rocksprts
2016-04   4455   ¹Ú¸í±ÙTN
2016-09   4455   guzzi
2015-03   4455   µþ±â´ëÀå
2016-01   4455   ÁÒ½´¾Æ
2015-10   4454   ¹æoÈ¿o¹®
2021-03   4454   ¯´Ô
2015-11   4454   È£°É
2015-07   4454   °¡ºü·Î±¸³ª
2014-07   4454   ±è°Ç¿ì
2015-12   4454   Â÷Æò¼®
2021-01   4454   ³ë¿¡¹Ì¿Àºü
2016-01   4454   ±è°Ç¿ì
2006-09   4454   ±èÁø±Ô
2006-12   4454   ±èÇö¿õ
2015-11   4454   ¹öÁö´Ï¾Æ
2007-03   4454   ±è°­¹Î
2016-02   4454   AKMU
2020-08   4454   FreeBSD