Á¤¼ºÈÆ
    ½Ç½À ÇÁ·Î±×·¥ ¿¹)
power_compare.txt [1 KB]   power_callreturn.txt [1 KB]  



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
double slow_power(double x, int n)
{
    int i;
 
    double r = 1.0;
 
    for (i = 0; i < n; i++)
        r = r * x;
    return (r);
}
 
double power(double x, int n)
{
    if (n == 0return 1;
    else if ((n % 2== 0)
        return power(x*x, n / 2);
    else return x * power(x*x, (n - 1/ 2);
}
 
int main(void)
{
    double  x, value_slow, value;
    int n;
 
    x = 2;
    n = 10;
 
    value_slow = slow_power(x, n);
    value = power(x, n);
 
 
    printf("slow_power(%lf,%d) = %lf \n", x, n, value_slow);
    printf("power(%lf, %d) = %lf \n", x, n, value);
}
cs

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
#include <stdlib.h>
 
double power(double x, int n)
{
    double value, result;
 
    printf("call power(%lf, %d) \n", x, n);
    if (n == 0) {
        printf("return 1\n");
        return 1;
    }
    else if ((n % 2== 0) {
        value = power(x*x, n / 2);
        printf("return %lf \n", value);
        return value;
    }
    else {
        value = power(x*x, (n - 1/ 2);
        result = x * value;
        printf("return %lf * %lf \n", x, value);
        return result;
    }
}
 
int main(void)
{
    double  x, value_slow, value;
    int n;
 
    x = 2;
    n = 10;
 
    value = power(x, n);
 
    printf("power(%lf, %d) = %lf \n", x, n, value);
}
cs

  µî·ÏÀÏ : 2020-09-13 [17:26] Á¶È¸ : 717 ´Ù¿î : 362   
 
¡â ÀÌÀü±Û(½Ç½À 3) swap ÇÔ¼ö¿Í ¹è¿­ ´Ù·ç±â
¡ä ´ÙÀ½±Û½Ç½À ÇÁ·Î±×·¥ ¿¹)
ÀڷᱸÁ¶ ½Ç½À°Ô½ÃÆÇ
¹øÈ£ ¨Ï Á¦ ¸ñ
[Âü°í] ±³Àç¿¡ ÀÖ´Â ¼Ò½ºÄÚµå
23       ¦¦❸ ¨Õmalloc 2Â÷¿ø ¹è¿­ ÇÒ´ç (Ãß°¡)
22          ¦¦❹ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
21             ¦¦❺ ½Ç½À ÇÁ·Î±×·¥ ¿¹) (¼ö¾÷ ¿¹½Ã)
20 ¨Õ(½Ç½À 3) swap ÇÔ¼ö¿Í ¹è¿­ ´Ù·ç±â
19 ¦¦❶ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
18    ¦¦❷ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
17       ¦¦❸ ±¸Á¶Ã¼ µ¥ÀÌÅÍÀÇ swap (Ãß°¡)
16          ¦¦❹ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
15 ¨Õ(½Ç½À 2) ¼øȯ
14 ¦¦❶ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
13    ¦¦❷ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
12       ¦¦❸ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
11          ¦¦❹ power ´Ù¸¥ ¼øȯ ±¸Çö (Ãß°¡)
10             ¦¦❺ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
9 (½Ç½À 1) ¼±ÅÃÁ¤·Ä
8 ¦¦❶ ¹öºí Á¤·Ä (Ãß°¡)
7    ¦¦❷ ¹öºí Á¤·Ä (¸ÆºÏ¿¡¼­ ½ÇÇàÇÒ ¶§)
6 ¦¦❶ ½Ç½À ÇÁ·Î±×·¥ ¿¹)
5    ¦¦❷ ¹®ÀÚ¿­ Á¤·Ä (Ãß°¡)
4       ¦¦❸ ½Ç½À ÇÁ·Î±×·¥ ¿¹)

[1][2][3][4]