이 프로그램은 TCP 소켓으로 선택하여 진행하였다. 서버에서 중복되지 않은 임의의 숫자 3개를 생성 한 후 클라이언트에서 중복되지 않은 숫자 3개를 입력 받는다. 클라이언트에서 중복된 숫자를 입력하면 다시 입력하도록 한다.
서버에서는 클라이언트로부터 숫자3개를 전송받고 서버의 숫자와 클라이언트의 숫자들을 비교한다. 만약 숫자의 자리와 숫자가 일치하면 스트라이크(S), 숫자만 일치하면 볼(B)이다. 서버는 스트라이크와 볼이 몇 개인지 클라이언트에 알려준다. 만약 스트라이크와 볼이 없으면 Out을 보내준다.
클라이언트는 총 10번의 도전을 할 수 있고 10번이 지나면 접속이 종료된다. 만약 클라이언트가 3스트라이크가 된다면 성공 메시지를 보여주고 접속이 종료된다.
1. 클라이언트 – 서버 흐름도
2. 클라이언트 입력 및 출력
클라이언트는 세자리의 숫자를 입력하는 중복된 숫자를 입력할 수 없도록 하였다. 스트링으로 숫자를 입력받은 후 char[]로 변환하여 중복 검사를 하였다. 중복이 되었다면 “input error”라는 문구를 출력한 후 다시 입력 받도록 하였다.
아래는 실제 야구 게임의 예시이다.
클라이언트 실행 시 10번의 기회가 주어진다.
서버에서 만든 세자리 수는 730이다.
클라이언트가 456을 입력했다.
일치하는 자리와 숫자가 없기 때문에 서버는 Out이라는 스트링을 생성하여 클라이언트에 보내주고 클라이언트는 서버의 응답을 출력한다. 기회를 한번 썼기 때문에 9번의 기회가 남는다.
123을 입력하면 서버에서는 0Strike 1Ball이라 판정하여 응답한다. 3이라는 숫자가 있지만 자릿수가 맞지 않기 때문이다.
073을 입력하면 0Strike 3Ball이 된다. 모든 7,3,0 이 모두 나왔지만 자릿수가 모두 맞지 않기 때문이다.
732를 입력하면 2Strike 0Ball이 된다. 7,3은 자리와 숫자가 맞지만 0이 없기 때문이다.
....
[컴퓨터 프로그래밍] 네트워크 숫자야구 컴퓨터프로그래밍2
REPORT
네트워크 숫자야구
제출기한
:
제출일자
:
수업시간
:
학과
:
학번
:
이름
:
담당교수님
:
1. 문제개요
TCP/IP 를 사용하여 네트워크에 기반한 숫자 야구 게임을 작성해 보도..
[데이터통신] 소켓프로그래밍- 채팅프로그램제작 1. 개발환경
- OS : windows
- Language : C++( Microsoft visual C++)
2. 프로그램 설명 및 기능 설명
-본 프로그램은 쓰레드를 이용한 소켓 채팅 프로그램이다.
서버와 프로그램 두 개로 나누어져 있으며 ..
TFTP 로토콜을 이용한 데이터 송수신 데이터 통신 Project
(Socket Programing)
● 인터넷 소켓
소켓 (Internet socket, socket 혹은 network socket 라고 부르기도 한다)는 네트워크로 연결되어 있는 컴퓨터의 통신의 접점에 위치한 통신 객체다. 네..
[데이터통신] 소켓프로그래밍- 네트워크 텍스트 메신저 1. 프로그램 개요
비동기형 채팅프로그램을 수정하여 텍스트 기반의 간단한 메신저프로그램을 제작해보며
네트워크 프로그램에 대한 이해를 높인다.
2. 프로그램 설명
1) friends 구조체형 통신
서버와 클라..
c언어 프로그래밍 - 야구게임 프로그램 야구게임
/***
created: 2003/12/10
created: 10:12:2003 1:01
filename: C:\My Project\Baseball\main.c
file path: C:\My Project\Baseball
file base: main
file ext:
author:
김대영 janus.k(akmasky..
객체 지향 언어의 종류 객체 지향 언어의 종류
[ Java ]
웹 브라우저인 넷스케이프에서 사용할 수 있는 객체 지향 프로그래밍 언어로서 보안성이 뛰어나며 컴파일한 코드는 다른 운영 체제에서 사용할 수 있도록 클래스(class)로 제공..
네트워크 프로그래밍 - 멀티 스레드를 이용한 파일 수신 서버 작성 네트워크 프로그래밍 - 멀티 스레드를 이용한 파일 수신 서버 작성
[목차]
1 소스코드 설명
2 실행화면 캡쳐
Server
#pragma comment(lib, ws2_32 )
#include [winsock2.h]
#include [stdlib.h]
#include [stdi..
C++ 채팅 소켓 프로그램 소스 1. 개발환경
- OS : windows
- Language : C++( Microsoft visual C++)
2. 프로그램 설명 및 기능 설명
-본 프로그램은 쓰레드를 이용한 소켓 채팅 프로그램이다.
서버와 프로그램 두 개로 나누어져 ..
데이터 통신 - Packet Sniffer의 구현 [데이터 통신 과제]
Packet Sniffer의 구현
1.소스코드분석
이 프로그램은 로소켓을 이용한 스니퍼 프로그램 이다. 로소켓의 “네트워크 계층으로 전송되는 모든 패킷을 볼 수 있는” 특성을 이용해 TCP 프로토콜..
데이터 통신 - Packet Sniffer의 구현 [데이터 통신 과제]
Packet Sniffer의 구현
1.소스코드분석
이 프로그램은 로소켓을 이용한 스니퍼 프로그램 이다. 로소켓의 “네트워크 계층으로 전송되는 모든 패킷을 볼 수 있는” 특성을 이용해 TCP 프로토콜..