76. 콘솔에서 영문자 q가 입력될때까지 영문자를 입력받고 출력하라.

입력 범위 : a ~ z

입력 예시

x b k d l q g a c

출력 예시

x

b

k

d

l

q

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		char value = 'a';
		do {
			value = scan.next().charAt(0);
			System.out.println(value);
		} while(value != 'q');
		scan.close();		
	}
}

Swift 4.2

import Foundation

func searchAndPrint(line:String) -> Bool{
    var flag = true //q 이 입력되면 false
    let valueArray = line.split(separator: " ")
    for value in valueArray {
        if let temp = value.first{
            print(temp)
            if temp == "q" {
                flag = false
                break;
            }
        }
    }
    return flag //true : q 값이 존재, false : q 값이 없음
}

var flag = true //q 이 입력되거나 nil이 입력됬을경우 false
while flag {
    let line = readLine()
    if line != nil {
        flag = searchAndPrint(line: line!)
    } else {
        flag = false
    }
}

이전 1071항 문제의 코드에서 0을 q로 바꿔줬습니다.

https://codeup.kr/problem.php?id=1079

75. 콘솔에서 정수 한 개가 입력될때, 1 부터 그 수 까지의 짝수의 합을 출력하라.

입력 범위 : 1 ~ 100

입력 예시

5

출력 예시

6

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int endNumber = scan.nextInt();
		int printValue = 0;
		for (int i = 1; i <= endNumber; i++) {
			if(i%2 == 0 ) printValue += i;
		}
		System.out.println(printValue);
	}
}

 

Swift 4.2

import Foundation

let line = readLine();
if line != nil,let endNumber = Int(line!){
    var printNumber = 0
    for i in 1...endNumber {
        if i % 2 == 0 { printNumber += i }
    }
    print(printNumber)
}

https://codeup.kr/problem.php?id=1078

74. 콘솔에서 정수 한 개가 입력될때, 0 부터 그 수 까지 출력하라

입력 범위 : 1 ~ 100

입력 예시

5

출력 예시

0

1

2

3

4

5

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int endNumber = scan.nextInt();
		int printValue = 0;
		do {
			System.out.println(printValue++);
		} while (printValue <= endNumber);
	}
}

Swift 4.2

import Foundation

let line = readLine();
if line != nil,let endNumber = Int(line!){
    var printNumber = 0
    repeat {
        print(printNumber)
        printNumber += 1
    } while printNumber <= endNumber
}

 

 

그러고보니 이전 문제부터 do - while 을 쓰고있는데 이걸 써보는 문법문제입니다.

https://codeup.kr/problem.php?id=1077

73. 콘솔에서 문자 1개가 입력될때 a 부터 그문자 까지 순서대로 출력하라.

입력 범위 : a ~ z

입력 예시

f

출력 예시

a

b

c

d

e

f

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		char endChar = scan.next().charAt(0);
		char printValue = 'a';
		do {
			System.out.println(printValue++);
		} while (printValue <= endChar);
	}
}

Swift 4.2

import Foundation

let line = readLine();
if line != nil,let endChar = line!.trimmingCharacters(in: .whitespaces).first {
    var printChar = "a".first!
    repeat {
        print(printChar)
        if let uniChar = printChar.unicodeScalars.first {
            if let nextChar = Unicode.Scalar(uniChar.value + 1) {
                printChar = Character(nextChar)
            }
        }
    } while printChar <= endChar
}

 

문자 하나의 스칼라 계산하는건 정말 싫네요

이렇게 하는게 더 편해! 라고 누군가 알려줬으면 좋겠습니다.

https://codeup.kr/problem.php?id=1076

72. 콘솔에서 정수 한개가 입력되었을때 카운트다운을 출력하라

입력 범위 : 1 ~ 100

입력 예시

5

출력 예시

4

3

2

1

​0

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int maxCount = scan.nextInt();
		scan.close();
		while(maxCount > 0) {
			System.out.println(--maxCount);
		}
	}
}

swift 4.2

import Foundation

let line = readLine();
if line != nil,var maxCount = Int(line!) {
    while maxCount > 0 {
        maxCount-=1
        print(maxCount)
    }
}

 

이전문제와 다른거는 순서의 차이....

출력을 먼저하느냐 감소를 먼저하느냐 그것이 문제로다

https://codeup.kr/problem.php?id=1075

71. 콘솔에서 정수 한개가 입력되었을때 카운트다운을 출력하라

입력 범위 : 1 ~ 100

입력 예시

5

출력 예시

5

4

3

2

1

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int maxCount = scan.nextInt();
        scan.close();
		while(maxCount > 0) {
			System.out.println(maxCount--);
		}
	}
}

Swift 4.2

import Foundation

let line = readLine();
if line != nil,var maxCount = Int(line!) {
    while maxCount > 0 {
        print(maxCount)
        maxCount-=1
    }
}

 

JAVA쪽에 print와 감소를 같이 해줬는데

버전 별로 의도대로 안될수도 있습니다.

그냥 밑의 스위프트 처럼 출력과 감소를 줄을 나누는게 더 나을수도 있어요.

https://codeup.kr/problem.php?id=1074

70. 콘솔에서 0이 입력 될 때 까지 계속 정수를 입력받고 출력하기

입력 범위 : -2147483648 ~ 2147483647

입력 예시

7 4 2 3 0 1 5 6 9 10 8

출력 예시

7

4

2

3

0

이전 이 문제를 goto문으로 풀라고해서

문제를 집어던지고 while문으로 풀었더니

이번엔 같은문제를 while문으로 풀어보기 문제가 나왔습니다 난감하네요;;;

그래서 이전 문제포스트 링크로 코드를 대신합니다.

https://blog.naver.com/carnelian34/221561892307

 

https://codeup.kr/problem.php?id=1073 

 

[기초-반복실행구조] 0 입력될 때까지 무한 출력하기2(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용

codeup.kr

 

69. 콘솔에서 입력규정에 맞게 정수를 입력받고 출력하라

입력 규정:

1Line에서 정수 한개가 입력된다. ( 1 ~ )

2Line에서 공백을 두고 1Line의 정수의 갯수 만큼 정수가 입력된다.

입력 범위 : -2147483648 ~ 2147483647

입력 예시

5

1 2 3 4 5

출력 예시

1

2

3

4

5

JAVA 

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int count = scan.nextInt();
		int [] numbers = new int[count];
		for (int i = 0; i < numbers.length; i++) {
			numbers[i] = scan.nextInt();
		}
		scan.close();
		
		for (int number : numbers) {
			System.out.println(number);
		}
		
	}
}

 

 

Swfit 4.2

import Foundation

let firstLine = readLine()
if firstLine != nil, let count = Int(firstLine!) {
    let secondLine = readLine()
    if secondLine != nil {
        var values = [Int]()
        for sub in secondLine!.split(separator: " ") {
            if let temp = Int(sub) { values.append(temp) }
        }
        if values.count == count {
            for value in values {
                print(value)
            }
        } else {
            print("ERROR : values.count")
        }
    }
}

 

 

 

이번 문제도 저번문제와 마찬가지로 goto문 사용에 대한 문제였습니다만

이를 제맘대로 배열의 갯수를 입력받아 배열만들기로 변경하고 풀었습니다.

이렇게 했더니 이전에 있던 입출력하는 문제랑 별 다르지 않네요;;

https://codeup.kr/problem.php?id=1072

 

 

+ Recent posts