[์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ] ์ค๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ธ์ด 3๋ฌธ์ (7)
1๏ธโฃ [JAVA]
2023.2
๋ค์์ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ์ ๋ํ ๋ฌธ์ ์ด๋ค. ์๋ง์ ์ถ๋ ฅ๊ฐ์ ์์ฑํ์์ค. ๋จ, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ํน์ฑ์ ๋ฐ๋ฅธ ๋·์๋ฌธ์๋ฅผ ๋ฐ๋์ ๊ตฌ๋ณํด์ ์์ฑํ์์ค.
public class Main{
public static void main(String[] args) {
String str1 = "Programming";
String str2 = "Programming";
String str3 = new String("Programming");
System.out.println(str1 == str2);
System.out.println(str1 == str3);
System.out.println(str1.equals(str3));
System.out.println(str2.equals(str3));
}
}
true
false
true
true
java์์ '==' ๋ ๋ ๋ฌธ์์ด์ ์ฃผ์(์ฐธ์กฐ)๊ฐ์ด ๊ฐ์์ง ๋น๊ตํ๋ค. ๋ค์ ๋งํด ๋ ๊ฐ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์์ ๋์ผํ ์์น๋ฅผ ๊ฐ๋ฆฌํค๋์ง๋ฅผ ํ์ธํ๋ค.
str1๊ณผ str2๋ ๊ฐ์ ์ฃผ์๊ฐ์ ๊ฐ์ง๊ธฐ ๋๋ฌธ์ true๋ฅผ ์ถ๋ ฅํ๋ค.
ํ์ง๋ง str3๋ new ์ฐ์ฐ์๋ก ์์ฑํ ๋ฌธ์์ด ๊ฐ์ฒด์ด๊ธฐ ๋๋ฌธ์ ์ฃผ์๊ฐ์ด str1์ด๋ ๋ฌ๋ผ์ false๋ฅผ ์ถ๋ ฅํ๋ค.
์ฌ๊ธฐ์ equals() ๋ฉ์๋๋ ๋ ๋ฌธ์์ด์ ๋ด์ฉ์ ๋น๊ตํ๋ ์๋ฏธ์ด๋ค. ๋ค์ ๋งํด ๋ ๋ฌธ์์ด์ด ๋์ผํ ๊ฐ์ ๊ฐ์ง๊ณ ์๋์ง ํ์ธํ๋ ๊ฒ์ด๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ str1, str2, str3๋ ๋ชจ๋ ๋์ผํ ๋ฌธ์์ด์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ true๋ฅผ ์ถ๋ ฅํ๋ค.
2๏ธโฃ [C์ธ์ด]
2023.2
๋ค์์ C์ธ์ด ์ฝ๋์ ๋ฌธ์ ์ด๋ค. ๋ค์์ ์กฐ๊ฑด์ ๋ง๋๋ก ๋น ๊ดํธ ์์ ์๋ง์ ์ฝ๋๋ฅผ ์์ฑํ์์ค.
#include <stdio.h>
int main(void) {
int n[5];
int i;
for (i = 0; i < 5; i++) {
printf("์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : ");
scanf("%d", &n[i]);
}
for (i = 0; i < 5; i++) {
printf("%d ", ( ));
}
return 0;
}
[์กฐ๊ฑด]
์ ๋ ฅ๊ฐ์ด 54321์ผ ๊ฒฝ์ฐ ์ถ๋ ฅ๊ฐ์ด 43215๋ก ์ถ๋ ฅ๋์ด์ผ ํ๋ค.
n[(i+1) % 5]
n[5]๋ ํฌ๊ธฐ๊ฐ 5์ธ ์ ์ํ ๋ฐฐ์ด์ ์ ์ธํ ๊ฒ์ด๋ค.
ํด๋น ๋ฐฐ์ด์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ 5๊ฐ์ ์ซ์๋ฅผ ์ ์ฅํ๋ค.
๊ทธ๋ฆฌ๊ณ i๋ผ๋ ๋ณ์๋ฅผ ์ ์ํ๋ค.
์ฒซ๋ฒ์งธ for ๋ฐ๋ณต๋ฌธ์ ๋ณด๋ฉด scanf๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋ฐ์ดํฐ๋ฅผ ํ๋ก๊ทธ๋จ ๋ด ๋ณ์์ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.
%d๋ฅผ ์จ์ scanf๊ฐ ์ ๋ ฅ๋ ๊ฐ์ ์ ์๋ก ํด์๋๋๋ก ํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ฃผ์ ์ฐ์ฐ์ '&' ๊ธฐํธ๋ฅผ ์จ์ ๋ณ์๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์์นํ ์ฃผ์๋ฅผ ํ์ธํ๋ค. ๊ฒฐ๋ก ์ ์ผ๋ก scanf๊ฐ ์ง์ ๋ณ์์ ๊ฐ์ ์ ์ฅํด์ผ ํ๊ธฐ ๋๋ฌธ์ &n[i]๋ฅผ ์ด ๊ฒ์ด๋ค.
๊ทธ๋ฆฌ๊ณ ์กฐ๊ฑด์ ๋ณด๋ฉด ์ ๋ ฅ๊ฐ์ด 54321์ผ ๋ 43215๋ก ์ถ๋ ฅํด์ผ ํ๋ค.
๊ทธ๋ฌ๋ ค๋ฉด ํ์ฌ ์ ์ฅ๋ ๊ฐ์ ์์๋ฅผ ๋ณ๊ฒฝํด์ผ ํ๋ค.
index | 0 | 1 | 2 | 3 | 4 |
i | 5 | 4 | 3 | 2 | 1 |
์ถ๋ ฅ๋๋ ค๋ฉด index์ ์์๊ฐ 1 2 3 4 0 ์ด ๋์ด์ผ ํ๋ค
๋ง์ฝ, n[(i+1)]๋ง ์ด๋ค๋ฉด ๋ง์ง๋ง์ index๊ฐ 5๊ฐ ๋๋ค. ์ฌ๊ธฐ์ 0 ๊ฐ์ด ๋์ค๋ ค๋ฉด 5์์ 5๋ฅผ ๋๋ ๋๋จธ์ง ๊ฐ์ ์ถ๋ ฅํ๋๋ก ํ๋ฉด๋๋ค.
n[(i+1) % 5]
3๏ธโฃ [C์ธ์ด]
2022.3ํ
์๋ ์ฝ๋์ ๋ํ ์ถ๋ ฅ ๊ฐ์ ์์ฑํ์์ค.
void main{
int []result = int[5];
int []arr = [77,32,10,99,50];
for(int i = 0; i < 5; i++) {
result[i] = 1;
for(int j = 0; j < 5; j++) {
if(arr[i] <arr[j]) result[i]++;
}
}
for(int k = 0; k < 5; k++) {
printf(result[k]);
}
}
24513
result ๋ฐฐ์ด์๋ 5๊ฐ์ ์ซ์๋ฅผ ๋ฃ์ ์ ์๊ณ arr ๋ฐฐ์ด์๋ 5๊ฐ์ ์ซ์๊ฐ ์ ์๋์ด์๋ค.
int ์ ์ ๊ฐ ์๋์ for ๋ฐ๋ณต๋ฌธ์ ์คํํ๋ฉด ์๋์ ๊ฐ๋ค.
i ๊ฐ 0์ผ๋ j๋ฅผ ๋ชจ๋ ์คํํ๋ฉด 77๋ณด๋ค ํฐ ๊ฐ์ด 1๊ฐ์ด๊ธฐ ๋๋ฌธ์ result[0]์ 2๊ฐ๋๋ค.
i = 1, 32๋ณด๋ค ํฐ ๊ฐ 3๊ฐ / result[1] = 4
i = 2, 10๋ณด๋ค ํฐ ๊ฐ 4๊ฐ / result[2] = 5
i = 3, 99๋ณด๋ค ํฐ ๊ฐ 0๊ฐ / result[3] = 1
i = 4, 50๋ณด๋ค ํฐ ๊ฐ 2๊ฐ / result[4] = 3
printf(result[k]); ์ ๋ต์
24513
์ด ๋๋ค.