랩터
[반복문]연습문제 본문
01_sum
sum
문제
수를 입력받아 0부터 해당 수까지의 합을 리턴해야 합니다.
입력
인자 1 : num
- int 타입의 정수 (num >= 0)
출력
- int 타입을 리턴해야 합니다.
주의 사항
- 반복문(for)문을 사용해야 합니다.
package com.choongang;
public class A_Sum {
public int sumTo(int num) {
// TODO:
int sum = 0;
for(int i =0; i <=num; i++){
sum += i;
}
return sum;
}
}
02_isOdd
isOdd
문제
수를 입력받아 홀수인지 여부를 리턴해야 합니다.
입력
인자 1 : num
- int 타입의 정수
출력
- boolean 타입을 리턴해야 합니다.
주의 사항
- 반복문(while)문을 사용해야 합니다.
- for문 사용은 금지됩니다.
- 나눗셈(/), 나머지(%) 연산자 사용은 금지됩니다.
- 0은 짝수로 간주합니다.
package com.choongang;
public class B_IsOdd {
public boolean isOdd(int num) {
// TODO:
//while문 사용 /,%금지 ,0짝수
// if(num<0){
// num = num * -1;
// num = Math.abs(num);
// } // 이런 방법도 있다.
//양수일때
if(num>0){
boolean result;
while(num >= 2) {
num = num -2;
}
if(num ==1) {
result = true;
} else {
result = false;
}
return result;
}
//음수일때
else {
boolean result;
while (num<= -2){
num = num + 2;
}
if(num == -1) {
result = true;
}else {
result = false;
}
return result;
}
}
}
03_ factorial
factorial
문제
수를 입력받아 n-factorial(n!) 값을 리턴해야 합니다.
입력
인자 1 : num
- int 타입의 정수 (num >= 0)
출력
- int 타입을 리턴해야 합니다.
- 1 * 2 * ... * num
주의 사항
- 반복문(for)문을 사용해야 합니다.
- factorial(0)은 1로 정의됩니다.
- 음수 입력은 들어오지 않습니다.
package com.choongang;
public class C_Factorial {
public int factorial(int num) {
// TODO:
int fac = 1;
for(int i=1; i<=num; i++){
fac = fac * i;
}if(num == 0){
fac =1;
}
return fac;
}
}
04_ repeatString
repeatString
문제
문자열과 수를 입력받아 반복된 문자열을 리턴해야 합니다.
입력
인자 1 : str
- string 타입의 문자열
인자 2 : num
- int 타입의 정수 (num >= 0)
출력
- string 타입을 리턴해야 합니다.
주의 사항
- 반복문(for)문을 사용해야 합니다.
- 0을 입력받은 경우, 빈 문자열을 리턴해야 합니다.
package com.choongang;
public class D_RepeatString {
public String repeatString(String str, int num) {
// TODO:
String result = "";
if(num == 0 || str.isEmpty()){
result ="";
} else {
for(int i = 0; i<num; i++){
result = result + str;
}
// result = str.repeat(num);
}
// if(num == 0) { //내가쓴 코드
// result="";
// }
// for(int i=1; i<=num; i++) {
// result += str;
// }
return result;
}
}
05_makeDigits
makeDigits
문제
수(num)를 입력받아 1부터 num까지의 정수로 구성된 문자열을 리턴해야 합니다.
입력
인자 1 : num
- int 타입의 정수 (num >= 1)
출력
- string 타입을 리턴해야 합니다.
주의 사항
- 반복문(for)문을 사용해야 합니다.
- 숫자(number string) 사이의 구분은 없습니다. ('1234567')
package com.choongang;
public class E_MakeDigits {
public String makeDigits(int num) {
// TODO:
String str = "";
for(int i = 1; i<=num; i++) {
str = str + i; //자동으로 형변환됨
}
return str;
}
// public static void main(String[] args) {
// System.out.println(1 + "22"); // 문자열 122
// System.out.println(false + "22"); // 문자열 false22
// }
}
14_characterAndNumber
characterAndNumber
문제
문자열을 입력받아 각 문자(letter) 뒤에 해당 문자의 인덱스가 추가된 문자열을 리턴해야 합니다.
입력
인자 1 : word
- String 타입의 문자열
출력
- String 타입을 리턴해야 합니다.
주의 사항
- 반복문(for)문을 사용해야 합니다.
- 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 합니다.
package com.choongang;
public class N_CharacterAndNumber {
public String characterAndNumber(String word) {
// TODO:
String str = "";
for(int i = 0; i<word.length(); i++){
str = str + word.charAt(i) + i; //i는 정수형 ,문자열+정수
}
return str;
}
}
'공부 > JAVA' 카테고리의 다른 글
4/11 객체지향이론, 기본개념 (0) | 2024.04.11 |
---|---|
4/8 배열 (0) | 2024.04.08 |
[Java] 반복문 (0) | 2024.04.05 |
4/4 (3) | 2024.04.04 |
4/3 (0) | 2024.04.03 |