본문 바로가기
학교/컴프1

컴프 1 실습 코드 정리 (W3~W5)

by 발빠진 쥐 2024. 4. 8.

Week03

 

Box

package week3;

import java.util.Scanner;

	public class Box {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		
		
		Scanner sc = new Scanner (System.in); // Scanner 객체 생성
		double width = sc.nextDouble(); //사용자가 입력한 값을 double 타입의 데이터로 반환
		double length = sc.nextDouble (); //사용자가 입력한 값을 double 타입의 데이터로 반환
		
		System.out.println(width*length); //입력받은 width값과 length값을 곱해 둘레 출력
		System.out.println(width*2 + length*2);//입력받은 width값과 length값에 각 2를 곱하고 더해서 둘레 출력
	}

}

 

 

Light

package week3;

import java.util.Scanner;

public class Light {
	
	
	public static void main(String[] args) {
		
		Scanner sc = new Scanner (System.in); // Scanner 객체 생성
		int second = sc.nextInt (); //사용자가 입력한 값을 int 타입의 데이터로 반환
		System.out.println(300000 * second); //300000 와 입력받은 second 정수를 곱해 출력
		
	}

}

 

 

Week04

Changecase

package week4;

import java.util.Scanner;

public class Changecase {
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner sc = new Scanner(System.in); // Scanner 객체 생성

		char x = sc.nextLine().charAt(0); // 사용자가 입력한 값을 char 타입의 데이터로 반환

		char y = (x >= 'A' && x <= 'Z') ? (char) (x + 32) : (x >= 'a' && x <= 'z') ? (char) (x - 32) : x;
		// x가 대문자면 x값에 32를 더해 소문자로 만들고 x가 소문자면 x값에 32를 빼서 대문자로 변환

		System.out.println(y); // y값 출력

	}

}

 

 

FtoC

package week4;

import java.util.Scanner;

public class FtoC {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in); // Scanner 객체 생성
		
		double x = sc.nextDouble(); //사용자가 입력한 값을 double 타입의 데이터로 반환 (화씨 온도)
		double y = (5.0/9.0) * (x-32.0); //화씨 온도를 섭씨 온도로 계산
		
		System.out.printf("%.2f", y); //y값을 소수점 셋째자리에서 반올림하고 출력
		
		

	}

}

 

 

Orange

package week4;

import java.util.Scanner;

public class Orange {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner (System.in); // Scanner 객체 생성
		int x = sc.nextInt (); //사용자가 입력한 값을 int 타입의 데이터로 반환 (오랜지의 갯수)
		
		System.out.println(x/10); //상자의 갯수 구하고 출력
		System.out.println(x%10); //남는 오렌지 구하고 출력
		
		

	}

}

 

Week 5

Game369

package week5;

import java.util.Scanner;

public class Game369 {
	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in); //스캐너 생성

		int num = sc.nextInt(); //사용자가 입력한 값을 int 타입의 데이터로 반환

		int a = num / 10; // 십의 자리 수
		int b = num % 10; // 1의 자리 수
		int z = 0; //clap의 수

		if (num < 1 || num > 99) {
			System.out.println("out of range"); //입력받은 숫자가 범위 밖에 있을 시 out of range  출력

		} else {
			if (num < 10) { //num이 한자리 수 일 때
				if (b % 3 == 0) { //num이 3의 배수일때 박수 1번 추가
					z++;
				}
			}

			else { //num이 한자리 수가 아닐때
				if (a % 3 == 0) { //십의 자리 수가 3의 배수 일때 박수 1번 추가
					z++;
				}

				if (b==3 || b==6 || b==9 ) { //1의 자리 수가 3,6,9 중 하나일때 박수 1번 추가
					z++;
				}
			}
			switch (z) {
			case 0:
				System.out.println("no clap"); //위 코드에서 박수 총 0번 추가
				break;
			case 1:
				System.out.println("clap"); //위 코드에서 박수 총 1번 추가
				break;
			case 2:
				System.out.println("clap clap");//위 코드에서 박수 총 2번 추가
				break;
			}
		}

	}

}

 

if (b==3 || b==6 || b==9 )는 되는데 if (b % 3 == 0)는 안되는 이유

= 입력값에 10을 넣으면 오류가 생김 0/3 나머지가 0이어서...

 

10의 자리는 0이 될 수 없으므로 a는 ㄱㅊ

 

Month

package week5;

import java.util.Scanner; //스캐너 생성

public class Month {

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);  //스캐너 생성

		int year = sc.nextInt(); //사용자가 입력한 값을 int 타입의 데이터로 반환
		int month = sc.nextInt(); //사용자가 입력한 값을 int 타입의 데이터로 반환

		int x = month; //x값에 month 값 대입
		int day = 0; //변수 day 선언

		switch (x) { 
		case 1, 3, 5, 7, 8, 10, 12: //x가 1,3,5,7,8,10,12 일때 day에 31 대입
			day = 31;
			break;

		case 4, 6, 9, 11: //x가 4,6,9,11 일때 day에 30 대입
			day = 30;
			break;

		case 2: //x가 2 일때 입력받은 년도 (year)이 윤년인지 아닌지 판단
			boolean Y = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
			//년도가 4의 배수이고 100의 배수가 아닐때 또는 4의 배수이고 400의 배수일 때
			day = Y ? 29 : 28; //boolean 변수를 사용해 윤년인지 아닌지 판단 후, 윤년 조건에 해당하면 day=29, 해당하지 않으면 day=28
			
		}

		
		System.out.println (day); //case에 해당하는 day 출력
	}

}

 

case 문은 이해가 가는데 boolean이 잘 이해가 안됨 ㅠ_ㅠ;

 

 

 

Standard Weight

package week5;

import java.util.Scanner;

public class StandardWeight {

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in); //스캐너 생성

		double x = sc.nextDouble(); //사용자가 입력한 값을 double 타입의 데이터로 반환
		double y = sc.nextDouble(); //사용자가 입력한 값을 double 타입의 데이터로 반환
		
		double z = ((x-100.0)*0.9); //입력받은 키와 몸무게 값으로 표준 체중 z 계산
		
		if (z>y) { 
			System.out.println("under weight"); //표준체중의 값이 입력받은 체중값보다 클때 under weight 출력
			
		}
		
		else if (z<y) {
			System.out.println("over weight"); //표준체중의 값이 입력받은 체중값보다 작을때 over weight 출력
			}
		
		else {
			System.out.println("standard weight"); //나머지 경우는 standard weight 출력
			
		}
	
		}
		
	}

'학교 > 컴프1' 카테고리의 다른 글

컴프 실습 코드 정리 (Week12)  (1) 2024.06.11
컴프 1 실습 코드 정리 (Week11)  (0) 2024.05.26
컴프 1 실습 코드 정리 (W9~W10)  (0) 2024.05.26
컴프 1 실습 코드 정리(W7)  (0) 2024.05.26
컴프 1 실습 코드 정리(W6)  (0) 2024.04.14