1028 : [기초-데이터형] 정수 한 개 입력받아 그대로 출력하기2 with Swift

 

25. 콘솔에서 정수 한 개를 입력 받아 그대로 출력하라. ( 입력 되는 정수 범위 0 ~ 4294967295)

입력 예시

2147483648

출력예시

2147483648

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		long line = scanner.nextLong();
		scanner.close();
		System.out.println(line);
	}
}

 

 

Swift4.2

import Foundation

let line = readLine()
if line != nil {
    if let value = CUnsignedInt(line!){
        print(value)
    }
}

 

할까 말까하다가... 합니다

int 는 범위가 -2147483648 ~ 2147483647 라고합니다.

그런데 0 ~ 4294967295 까지 입력이 된다고했으니 타입을 다른걸로 해줘라 라는 문제였슴다

앞에 자바쪽 의도는 unsigned int 사용을 권하겠지만 하다보니 귀찮아서 long을 사용했습니다.

왠만한 수는 롱으로 다들어갑니다만... 메모리 낭비일거같네요

참고로 언어별로 표현이 다를수도 범위가 다를수 있습니다 특히 long같은경우는요.

 

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

 

[기초-데이터형] 정수 한 개 입력받아 그대로 출력하기2

정수 한 개를 입력받아 그대로 출력해보자. (단, 입력되는 정수의 범위는 0 ~ 4,294,967,295 이다.)

codeup.kr

 

 

 

 

1029 : [기초-데이터형] 실수 한 개 입력받아 그대로 출력하기2 with swift

26. 콘솔에서 실수 한 개를 입력받아 그대로 출력하라. ( 입력범위 : +- 1.7*10^-308 ~ 1.7*10^308)

출력 - 소수점 11번째 짜리 까지 출력

입력 예시

3.14159265359

출력 예시

3.14159265359

이번 문제는 이전 문제랑 그닥 다르지않으니 넘어갈래요.

수정 --

갑자기 마음이 바뀌어 일일이 다 소스 적을려고합니다.

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		double line = scanner.nextDouble();
		scanner.close();
		System.out.println(String.format("%.11f", line));
	}
}

 

 

Swift 4.2

import Foundation

let line = readLine()
//let line:String? = "3.14159265359"
if line != nil {
    if let value = CDouble(line!){
        print(String.init(format:  "%.11lf", value))
    }
}

 

 

 

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

 

[기초-데이터형] 실수 한 개 입력받아 그대로 출력하기2

float 데이터형을 사용하면 3.4*10^-38 ~ 3.4*10^38 범위의 실수를 저장할 수 있다. (float 로 선언하고 %f로 입력 받거나 출력하면 된다.) 하지만 이 범위를 넘는(더 작거나 더 큰) 실수를 저장하기 위해서는  보다 큰 범위를 저장할 수 있는 다른 데이터형을 사용해야 정상적으로 저장시킬 수 있다. 쉽게 생각하면, float 를 사용하는 것보다 double 을 사용하는 것이 좀더 정확하게 저장할 수 있다.  단, 실수 1개를 저장하

codeup.kr

 

 

 

 

 

1030 : [기초-데이터형] 정수 한 개 입력받아 그대로 출력하기3 with swift

27. 콘솔에서 정수 한 개를 입력받아 그대로 출력하라. ( 입력범위 : –9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807)

입력 예시

-2147483649

출력 예시

-2147483649

JAVA

 

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		long line = scanner.nextLong();
		scanner.close();
		System.out.println(line);
	}
}

 

 

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    if let value = CLongLong(line!) {
        print(value)
    }
}

 

 

대는 소를 겸한다고... 1028번이랑 겹쳐버렸습니다.

설마 long을 써서 입출력하라는 문제가 나올줄은 몰랐네요

다시 한번 말씀드리자면 타입은 언어별로 범위가 다르거나 표현이 다를수 있습니다.

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

 

[기초-데이터형] 정수 한 개 입력받아 그대로 출력하기3

-2147483648 ~ +2147483647 범위의 정수를 저장하고 처리하기 위해서는 int 데이터형을 사용해 변수를 선언하면된다. (int 로 선언하고 %d나 %i 로 입력 받거나 출력하면 된다.) 하지만 이 범위를 넘어가는 정수를 저장하기 위해서는 보다 큰 범위를 저장할 수 있는 다른 데이터형을 사용해야 정상적으로 저장시킬 수 있다. long long int 데이터형을 사용하면 –9,223,372,036,854,775,808 ~ 9,223,372,0

codeup.kr

 

+ Recent posts