koistudy 31~40 & codeup java ~1041

OECDVP·약 17시간 전

java를 쉽게!

목록 보기
9/9

[기초-출력변환] 10진 정수 1개 입력받아 8진수로 출력하기(설명) 1031

import java.util.Scanner;
public class Main {
	public static void main(String args[]) {
		Scanner input = new Scanner(System.in);
		int a = input.nextInt();
		System.out.printf("%o", a);
	}
}

10진 정수 입력받아 16진수로 출력하기1(설명) 1032

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    int a = input.nextInt();
    System.out.printf("%x", a);
  }
}

10진 정수 입력받아 16진수로 출력하기2(설명) 1033

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    int a = input.nextInt();
    System.out.printf("%X", a);
  }
}

8진 정수 한 개 입력받아 10진수로 출력하기(설명) 1034

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    String a = input.next(); //문자열로 입력받기
    int decimal = Integer.parseInt(a,8); //정수형으로 반환 
    System.out.printf("%d", decimal);
    input.close();
                      
  }
}

16진 정수 한 개 입력받아 8진수로 출력하기(설명) 1035

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    String a  = input.next(); //문자열로 입력받기
    int octal = Integer.parseInt(a, 16);
    System.out.printf("%o", octal);
  }
}
    

영문자 한 개 입력받아 10진수로 출력하기(설명) 1036

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner scanner = new Scanner(System.in); //코드로 무언가를 입력받는것을 준비 
    char c = scanner.next().charAt(0); 
    System.out.println((int)c); //형변환
    
  }
}

scanner.next()는 사용자가 입력한 단어를 통째로 가져오지만 charAt는 가져온 문자열에서 딱 하나만 꺼내온다.

System.out.println((int)c);

컴퓨터는 문자를 저장하기 위해 아스키 코드를 가지고 저장하기 때문에 문자가 숫자로 변환된다.

Scanner scanner vs Scanner input

몇명 사람들의 코드를 보면 코드 마다 쓰는 단어가 많이 달라서 헷갈리다.

Scanner scanner = new Scanner(System.in);
Scanner input = new Scanner(System.in); 

문법적으로는 차이가 없고 변수의 이름을 무엇으로 지었느냐의 차이다

정답

import java.util.Scanner;
public class Main {
 public static void main(String args[]) {
   Scanner input = new Scanner(System.in);
   char c = input.next().charAt(0);
   System.out.println((int)c);
   
 }
}

오답

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    char c =scanner.next().charAt(0);
    System.out.println((int)c);
    
  }
}    

정수 입력받아 아스키 문자로 출력하기 1037

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
   Scanner input = new Scanner(System.in);
    int a = input.nextInt(); //정수 입력
   String b = String.valueOf((char) a);  
    System.out.print(b);
  }
}

char

딱 한글자만 담는 보관상자, 작은 따옴표로 감싸야한다.

char a = "a"; //x
char b = 'b';  //O

String.valueOf();

어떤 종류의 데이터는 문자열로 변환해준다.

int num = 100;
String str1 = String.valueOf(num);

char a = 'a';
String str2 = String.valueOf(a);
import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    int num = input.nextInt();
    char str = (char)num; //num을 아스키코드로 해석 ㄱ
    System.out.print(str);
  }
}

정수 두 개 입력받아 합 출력하기1(설명) 38

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    long a = input.nextLong();
    long b = input.nextLong();
    System.out.printf("%d", a + b);
  }
}

정수 두 개 입력받아 합 출력하기2(설명) 39

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    long a = input.nextLong();
    long b = input.nextLong();
    System.out.printf("%d", a + b);
  }
}

정수 한 개 입력받아 부호 바꿔 출력하기(설명) 40

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    int a = input.nextInt();
    System.out.println(-a);
 
  }
}
   

문자 한 개 입력받아 다음 문자 출력하기(설명) 1041

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner input = new Scanner(System.in);
    char a = input.nextLine().charAt(0);
    int b = (int)a;
    System.out.print((char)(b+1));
  }
}

0개의 댓글