๐Ÿ“Certificate/Engineer Information Processing

[์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ] ์‹ค๊ธฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์–ธ์–ด 3๋ฌธ์ œ (27)

Sun A 2024. 10. 12. 00:25

1๏ธโƒฃ [C์–ธ์–ด]

2024.2ํšŒ

๋‹ค์Œ C์–ธ์–ด๋กœ ๊ตฌํ˜„๋œ ํ”„๋กœ๊ทธ๋žจ์„ ๋ถ„์„ํ•˜์—ฌ ๊ทธ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ์“ฐ์‹œ์˜ค.

#include 

void func(char *d, char *s) {
	int sum = 0;
	while (*s) {
		*d = *s;
		d++;
		s++;
	}
	*d = '\0';
}

int main() {
	char* str1 = "first";
	char str2[50] = "teststring";
	int result = 0;
	func(str2, str1);

	for (int i = 0; str2[i] != '\0'; i++) {
		result += i;
	}
	printf("%d", result);
	return 0;
}
10

func ํ•จ์ˆ˜๋Š” s๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฌธ์ž์—ด์„ d๋กœ ๋ณต์‚ฌํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค.

main์„ ๋ณด๋ฉด func์˜ d์—๋Š” str2, s์—๋Š” str1์ด ๋“ค์–ด๊ฐ„๋‹ค.

while ๋ฌธ์œผ๋กœ s์˜ ๋ฌธ์ž์—ด ๊ฐœ์ˆ˜๋งŒํผ ๋ฐ˜๋ณตํ•˜์—ฌ d์— ๋ณต์‚ฌ๋œ๋‹ค. 

๊ฒฐ๋ก ์ ์œผ๋กœ func ํ•จ์ˆ˜๊ฐ€ ์ ์šฉ๋˜๊ณ  ๋‚œ ์ดํ›„์˜ str2๋Š” "first"๊ฐ€ ๋œ๋‹ค.

for๋ฌธ์„ ๋ณด๋ฉด str2๊ฐ€ '\0' ๊ฐ’์ด ๋˜๋ฉด ๋ฐ˜๋ณต์„ ๋ฉˆ์ถ”๋Š”๋ฐ, str2๋Š” 

0 1 2 3 4
f i r s t

๋กœ ๋˜์–ด์žˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— result์— ๋“ค์–ด๊ฐ€๋Š” ๊ฐ’์€  0 + 1 + 2 + 3 + 4 = 10 ์ด๋‹ค.

  

2๏ธโƒฃ [Python]

2020.4ํšŒ

๋‹ค์Œ์€ ํŒŒ์ด์ฌ ์†Œ์Šค ์ฝ”๋“œ์ด๋‹ค. ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์“ฐ์‹œ์˜ค.

lol = [[1,2,3],[4,5],[6,7,8,9]]
print(lol[0])
print(lol[2][1])
for sub in lol:
    for item in sub:
        print(item, end = '')
    print()
[1, 2, 3]
7
123
45
6789

print(lol[0]) => [1, 2, 3]

print(lol[2][1]) => 7

for sub in lol : ์˜ ๋ฐ˜๋ณต๋ฌธ์„ ํ†ตํ•ด lol์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค.

for item in sub : ์˜ ๋ฐ˜๋ณต๋ฌธ์„ ํ†ตํ•ด sub ๋ฆฌ์ŠคํŠธ์˜ ๊ฐ ์š”์†Œ๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค.

๊ฐ ์š”์†Œ item์ด ๋ชจ๋‘ ์ถœ๋ ฅ๋˜๋ฉด (end = '' ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋„์–ด์“ฐ๊ธฐ X)

item์ด ๋‹ค ์ถœ๋ ฅ๋œ ์ดํ›„ ๋‹ค์‹œ sub ๋ฐ˜๋ณต๋ฌธ ์‹œ์ž‘

 

3๏ธโƒฃ [JAVA]

2023.1ํšŒ

๋‹ค์Œ Java ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ถœ๋ ฅ ๊ฐ’์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

class Parent {
    int x = 100;
    Parent() {
        this(500);
    }
 
    Parent(int x) {
        this.x = x;
    }
 
    int getX() {
        return x;
    }
}
 
class Child extends Parent {
    int x = 4000;
    Child() {
        this(5000);
    }
 
    Child(int x) {
        this.x = x;
    }
}
 
public class Main {
    public static void main(String[] args) {
        Child obj = new Child();
        System.out.println(obj.getX());
    }
}
500

Child์—๋Š” getX() ๋ฉ”์†Œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ผ์ด๋“œ ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ Parent์˜ getX() ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค.

์—ฌ๊ธฐ์„œ Parent ํด๋ž˜์Šค๋Š” ๋ฉค๋ฒ„ ๋ณ€์ˆ˜ x๋Š” 100์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

๊ทธ ๋‹ค์Œ Parent() ๊ธฐ๋ณธ ์ƒ์„ฑ์ž์—์„œ this(500); ์„ ํ˜ธ์ถœํ•˜์—ฌ, ๋‘ ๋ฒˆ์งธ ์ƒ์„ฑ์ž (Parent(int x))๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค.

์ด๋กœ ์ธํ•ด x ๊ฐ’์ด 500์œผ๋กœ ์„ค์ •๋œ๋‹ค.

Parent ํด๋ž˜์Šค์˜ getX() ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— return ๊ฐ’์€ 500์ด ๋œ๋‹ค.

๋Œ“๊ธ€์ˆ˜0