import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

 

public class IFStmt {

 public static void main(String[] args) throws NumberFormatException, IOException {
  BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); // 리더 객체 생성
  

  // 윤년 및 평년 구하는 방법
  // 특정 년(Year)을 입력 받아 해당 년이 윤년인지 평년인지 판별
  // 1. 윤년은 4년에 한번 발생 (year % 4 == 0)
  // 2. 1의 조건을 만족 하는 것 중, 100년 마다 평년 (year % 100 == 0)
  // 3. 2의 조건을 만족 하는 것 중, 400년 마다 윤년 (year % 400 == 0)
  
  System.out.print("년 : ");
  int year = Integer.parseInt(reader.readLine());
  int leapYear_cnt = 0;
  

  // 위의 조건을 토대로 윤년 = [년도를 4로 나눈 나머지가 0] 이면서(and), [년도를 100으로 나눈 것이 0이 아니거나] [400으로 나눈 나머지가 0인 것]

  // 기본값 "평년"


  String leapYear = "평년";
  if(year %4 ==0 && year %100 !=0 || year%400==0) { 
   leapYear = "윤년";

  }
  
  // 해당 년까지 윤년의 발생 횟수 구하기 (윤년 - 평년 + 윤년)
  // 2018
  leapYear_cnt = (year/4) - (year/100) + (year/400);
  System.out.printf("%d년은 %s입니다. (윤년의 갯수 : %d)", year,leapYear,leapYear_cnt);

package pro0518;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class MTest{ //마우스 이동 테스트 생성자
//멤버 변수
 JFrame f= new JFrame();
 JPanel cp = new JPanel();
 JLabel la = new JLabel();
//메소드
 MTest() //객체를 초기화 하는 생성자
 {
  f.setTitle("마우스 이벤트 처리예제");
  f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
  //프레임에 패널을 추가한다.
  f.setContentPane(cp);
  cp.setLayout(null); // flowlayout, carlayout, gridlayout....
  cp.addMouseListener(new MYL());
  
  //레이블을 패널에 올려놓는다.
  la = new JLabel("JSO");
  la.setSize(50, 20);
  la.setLocation(30,30);
  cp.add(la);  
  
  f.setSize(200, 200);
  f.setVisible(true);
  
 }
 
 //키보드 실습 프로그램
 MTest(int a)
 {
  f.setTitle("Key Code Exemple : F1키(초록색); : , 1 키(노란색)");
  f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
  f.setContentPane(cp);
  cp.addKeyListener(new MyKey());
  la.setText("Text");
  cp.add(la);
  
  f.setSize(400, 200);
  f.setVisible(true);


  //컨텐트패널에 키 입력을 받을 수 있도록 위치 지정(포커스 강제 지정)
  cp.requestFocus();
 }
 
 class MyKey implements KeyListener{

  @Override
  public void keyPressed(KeyEvent e) {
   //키가 눌렸을때 처리할 내용
   la.setText(KeyEvent.getKeyText(e.getKeyCode())+ "키가 입력되었다.");
   
   if(e.getKeyCode() == KeyEvent.VK_1)
    cp.setBackground(Color.YELLOW);
   else if(e.getKeyCode() == KeyEvent.VK_F1)
    cp.setBackground(Color.green);
   
  }

  @Override
  public void keyReleased(KeyEvent e) {
   // TODO Auto-generated method stub
   
  }

  @Override
  public void keyTyped(KeyEvent e) {
   // TODO Auto-generated method stub
   
  }
  
 }
 public class MYL implements MouseListener {

  @Override
  public void mouseClicked(MouseEvent e) {
   // TODO Auto-generated method stub

  }

  @Override
  public void mouseEntered(MouseEvent e) {
   // TODO Auto-generated method stub

  }

  @Override
  public void mouseExited(MouseEvent e) {
   // TODO Auto-generated method stub

  }

  @Override
  public void mousePressed(MouseEvent e) {
   //마우스를 눌렀을떄 처리할 내용을 쓴다.
   int x=e.getX(); //x좌표를 가져온다.
   int y=e.getY();  //y좌표를 가져온다.

   la.setLocation(x,y); // x,y 좌표에 위치시킨다.
   

  }

  @Override
  public void mouseReleased(MouseEvent e) {
   // TODO Auto-generated method stub

  }

 }

 
}

 

public class MouseTest {

 public static void main(String[] args) {
  
  MTest ob= new MTest(1); // MTest()을 넣으면 마우스 이벤트 실행. MTest(1)을 넣으면 키보드 이벤트 실행. (MTest 참조)
  

 }

}

import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

class MyAction implements ActionListener{
 public void actionPerformed(ActionEvent e){
 
  JButton btn = (JButton) e.getSource();

  if(btn.getText().equals("삽입")){

   btn.setText("수정");

   ImageIcon img1 = new ImageIcon("thm.jpg");
   JButton b52 = new JButton(img1);
   btn.add(b52,BorderLayout.CENTER);
 
  }
  else{  
   btn.setText("삽입");

  
   ImageIcon img = new ImageIcon("thm1.jpg");
   JButton b51 = new JButton(img);
   btn.add(b51,BorderLayout.CENTER);
  
  }

  }
 
}
public class Action1 extends JFrame {
 Action1() {
  this.setTitle("토글 키 예제");
  this.setSize(300, 300);
  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  //this.setLayout(new FlowLayout()); // 프레임에 대한 배치관리자 설정

  JPanel btn = new JPanel();
  btn.setLayout(new BorderLayout());
  JButton btn1 = new JButton("삽입");
  btn.add(btn1,BorderLayout.NORTH);
 
  ImageIcon img1 = new ImageIcon("thm.jpg"); // 이미지 파일 이름
  JButton b52 = new JButton(img1);
  btn.add(b52,BorderLayout.CENTER);

  ImageIcon img = new ImageIcon("thm1.jpg"); // 이미지 파일 이름
  JButton b51 = new JButton(img);
  btn.add(b51,BorderLayout.CENTER);
 
  btn1.addActionListener(new MyAction());
 
  this.add(btn);
  this.setVisible(true);
 }

 public static void main (String[] args) {
   new Action1();
 }

}

 

import java.awt.Image;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

 

public class Keyboard1 extends JFrame{
 ImageIcon icon = new ImageIcon("plane.jpg");

 JLabel k = new JLabel();
 
 
 Keyboard1(){
  

  this.setTitle("10픽셀씩 이미지 이동");
  this.setSize(300, 300);
  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
  this.setLayout(null);


  k.setIcon(icon);
  k.setLocation(50, 50);
  k.setSize(500, 500);

  this.add(k);
  
  this.addKeyListener(new KeyAdapter()
  { 
   public void keyPressed(KeyEvent e){
    switch(e.getKeyCode()){
     case KeyEvent.VK_UP:
      k.setLocation(k.getX(), k.getY()-10);
      break;
   
     case KeyEvent.VK_DOWN:
      k.setLocation(k.getX(), k.getY()+10);
      break;
     case KeyEvent.VK_LEFT:
      k.setLocation(k.getX()-10, k.getY());
      break;
     case KeyEvent.VK_RIGHT:
      k.setLocation(k.getX()+10, k.getY());
      break;
   

   }

  }
  });
  
   
  this.setVisible(true);  
 }
 public static void main(String[] args) {
  new Keyboard1();
  
 }
}

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

 

#define MAX 45 //상수 선언

 

void setlotto(int *lotto);

 

void iswin(int *mylotto, int *lotto);

 

 

int main(void)

 

{

 

int i, j;

 

int mylotto[6], lotto[6];

 

 

printf("\n");

 

printf(" < 로또게임 >\n");

 

printf("\n");

 

printf("1부터 45까지의 숫자 중 본인이 원하는 로또번호 6개를 입력하시오.");

 

printf("\n");

 

printf("-> ");

 

for(i=0; i<6; i++)

 

{

 

scanf("%d", &mylotto[i]);

 

for(j=0; j<i; j++) // 기존에 입력된 번호와 비교해서

 

if(mylotto[i]==mylotto[j]) // 같은 번호가 나오면

 

{

 

printf("이미 입력된 번호입니다. 다시 입력하세요.\n");

 

i--; // 다시 입력 받습니다.

 

break;

 

}

 

}

 

 

setlotto(lotto);

 

iswin(mylotto, lotto);

 

 

return 0;

 

}

 

void setlotto(int *lotto)

 

{

 

int i, j, t;

 

long seed = time(NULL);

 

srand(seed);

 

 

printf("\n");

 

printf("로또를 추첨합니다.\n");

 

printf("\n");

 

for(i=0; i<6; i++)

 

{

 

lotto[i] = rand() % MAX + 1;

 

for(j=0; j<i; j++) // 기존에 입력된 번호와 비교해서

 

if(lotto[i]==lotto[j]) // 같은 번호가 나오면

 

{

 

i--; // 다시 입력 받습니다.

 

break;

 

}

 

}

 

for(i=1; i<6; i++) // 버블정렬 알고리즘

 

for(j=0; j<6-i; j++) // 인접한 두 숫자를 차례대로 비교해서

 

if(lotto[j]>lotto[j+1]) // 뒤에 숫자가 더 작으면 교환하는 오름차순

 

{

 

t=lotto[j];

 

lotto[j]=lotto[j+1];

 

lotto[j+1]=t;

 

}

 

for(i=0; i<6; i++) printf("%4d",lotto[i]); // 정렬된 결과를 출력합니다.

 

printf("\n");

 

}

 

 

void iswin(int *mylotto, int *lotto)

 

{

 

int i, j, same = 0;

 

 

for (j=0; j<6; j++)

 

for (i=0; i<6; i++)

 

if (mylotto[i] == lotto[j])

 

same++;

 

if(same == 6) {

printf("6개 맞췄어요.\n");

}

else if(same == 5) {

printf("5개 맞췄어요.\n");

}

else if(same == 4) {

printf("4개 맞췄어요.\n");

}

else if(same == 3) {

printf("3개 맞췄어요.\n");

}

else if(same == 2) {

printf("2개 맞췄어요.\n");

}

else if(same == 1) {

printf("1개 맞췄어요.\n");

}

else {

printf("하나도 못 맞췄어요.");

}

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

 

#define SIZE 10

 

int main() {

 

int i, j, k, su[SIZE], swap, temp; //반복값, 뒷값, 앞값, 전체수, 치환, 임시

 

srand(time(NULL));

 

//데이터 입력과 결과 확인

for(i=0; i<SIZE; i++) {

su[i] = (rand()%99) + 1;

printf("(%d) : %d\n", i, su[i]);

}

 

printf("-----------------------\n");

 

//배열로 정렬중인 과정

for(j=0; j<SIZE-1; j++) {

swap = 0; //정렬이 되었으면 0, 정렬되지 않았으면 1

 

for(k=j; k<SIZE; k++) {

if(su[k] < su[j]) {

temp = su[k];

su[k] = su[j];

su[j] = temp;

swap = 1;

}

}

 

if (swap == 0) {

break;

}

}

 

// 오름차순 정렬 결과 출력

printf("오름차순 정렬 결과 출력\n");

 

for(i=0; i<SIZE; i++) {

printf("(%d) : %d\n", i, su[i]);

}

return 0;

}

 

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

int right, left;

 

//시스템의 시간정보를 이용해 난수 발생

srand(time(NULL));

 

// 0.000001 - 0.999999

right = ((rand()%5)+1);

left = ((rand()%5)+1);

 

if(right > left) {

printf("오른손 주사위 값이 더 크네요 : %d %d\n", right, left);

}

else if(left > right) {

printf("왼손 주사위 값이 더 크네요 : %d %d\n", right, left);

}

else {

printf("값이 같네요 : %d %d\n", right, left);

}

 

#include <stdio.h>
#define STU 5
 
int main() {
    int i, sum, jumsu[STU];
    double avg=0;
   
    for(i=0; i<STU; i++) {
       printf("성적 입력 : ");
       scanf("%d", &jumsu[i]);
       sum += jumsu[i]; //sum=sum+jumsu[i];
    }
   
    avg = (double)sum / STU;
    printf("합계 : %d, 평균 : %f\n", sum, avg);
   
    return 0;
}

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int game();

int main() {
    int i, gawi=0, bawi=0, bo=0;
    srand((unsigned)time(NULL));
   
    for(i=0; i<1000; i++) {
       if(game()==0) {
            gawi++; // 가위
       }
       else if(game()==1){
            bawi++; // 바위
       }
       else {
            bo++;   // 보
       }
    }
    printf("가위 : %d\n", gawi);
    printf("바위 : %d\n", bawi);
    printf("보 : %d\n", bo);

    return 0;
}

int game() {
   int t = rand() % 3;
   if(t == 0) {
        return 0; // 가위
   }
   else if(t == 1){
        return 1; // 바위
   }
   else {
        return 2; // 보
   }
}

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int coin();

int main() {
    int i, head=0, tail=0;
    srand((unsigned)time(NULL));
   
    for(i=0; i<10; i++) {
       if(coin()==0) {
            head++; // 앞면
       }
       else {
            tail++;
       }
    }
    printf("앞면 : %d\n", head);
    printf("뒷면 : %d\n", tail);
       
    return 0;
}

int coin() {
   int t = rand() % 2;
   if(t == 0) {
        return 0; // 앞면
   }
   else {
        return 1; // 뒷면
   }
}

+ Recent posts