زمان کنونی: 1395-12-02, 05:38 ب.ظ
خوش آمدید، مهمان! (ورودثبت نام)

ارسال پاسخ 
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
اشتراک موضوع در Digg delsios Reddit Facebook Twitter StumbleUpon
جاوا SE (بازی سنگ،کاغذ،قیچی)
نویسنده پیام
**
کاربر سایت


کاربر سایت
وضعيت : آفلاین
ارسال ها:5
تاریخ ثبت نام:تير 1392
اعتبار: 0
سن:
ساکن:
حالت من:
سپاس ها: 1
سپاس شده 24 بار در 5 ارسال

ارسال: #1
جاوا SE (بازی سنگ،کاغذ،قیچی)
سلام
این اولین پست من توی این انجمن هست. به امیدخدا اگر حوصلشو داشتیم و با کمک سایر دوستان بتونیم یه سری آموزش و سورس کدهای جاوا رو براتون بزاریم
برای شروع یه بازی خیلی ساده و مبتدی که محیط گرافیکی هم نداره بیشتر برای نحوه ی کد نویسی و مفاهیم خود جاوا این برنامه رو نوشتم برای میزارم
-----------------------------------------------------------------
برای اجرای کدها یه پروژه توی IDE مورد نظرتون درست کنید و یه کلاس هم به اسم
Game.java بسازید و این کد ها رو بریزید توش و Run کنید
هرجایی که مشکل داشتید بگین !

تصویر: /images/smilies/yahoo/113.gif 

کد:
import java.util.Random;
import java.util.Scanner;


public class Game {
//enum در واقع نوعی ثوابت در جاوا هستند که برای کاهش باگ و افزایش خوانی برنامه استفاده میشه
public enum handsign{
    قیچی,کاغذ,سنگ;
}
public enum decide{
    PLAY,STATISTICS,EXIT,ABOUT;
}
    public static void main(String args) {
 برای دریافت ورودی باید یک شی از کلاس scanner بسازیم/////
        Scanner input = new Scanner(System.in);
        
        handsign playerMove=null;
        handsign computerMove=null;
        decide select = null;
        int player = 0,computer = 0;
        
        System.out.println("شماره ی گزینه های زیر را وارد کنید");
        System.out.print("1-شروع\n2-درباره ما\n3-خروج\n");

        int count = 0;
        /////
        //user decide to play or exit or...
        //بلاک try برای کنترل و مدیریت خطاها استفاده میشه
        try {
            int in = input.nextInt();
            switch (in) {
            case 1:
                select = decide.PLAY;
                break;
            case 2:
                select = decide.ABOUT;
                break;
            case 3:
                select = decide.EXIT;
                break;
                default:
                    System.out.println("ورودی اشتباه هست");
                    break;
            }
        } catch (Exception e) {
            System.out.println("ورودی اشتباه هست");
            
        }
        //code game
        if(select == decide.PLAY){
            boolean gameOver = false;
            System.out.println("برای انتخاب سنگ بنویسید : 'stone'");
            System.out.println("برای انتخاب کاغذ بنویسید : 'paper'");
            System.out.println("برای انتخاب قیچی بنویسید : 'scissor'");
            String SSP = input.nextLine().toLowerCase();
            while(!gameOver){
                
                //player move
                boolean valid = true;
                do {
                     SSP = input.nextLine().toLowerCase();
                    switch (SSP) {
                    case "paper":
                        playerMove = handsign.کاغذ;
                        valid = false;
                        break;
                    case "stone":
                        playerMove = handsign.سنگ;
                        valid = false;
                        break;
                    case "scissor":{
                        playerMove = handsign.قیچی;
                        valid = false;
                        break;
                    }
                        
                    default:
                        System.out.println("ورودی اشتباه است.\nدوباره امتحان کنید!");
                        break;
                    }
                } while (valid == true);
                //reset 
                 valid = true;
                
                //computer move
                Random rnd = new Random();
                int randomNumber = 1+rnd.nextInt(3);
                switch (randomNumber) {
                case 1:
                    computerMove = handsign.کاغذ;
                    break;
                case 2:
                    computerMove = handsign.قیچی;
                    break;
                case 3:
                    computerMove = handsign.سنگ;
                    break;

                }
                
                //check result

                    if(computerMove == playerMove){
                        System.out.println("  انتخاب  شما "+playerMove+"و  کامپیوتر  "+computerMove);
                    }
                    else if(computerMove == handsign.کاغذ && playerMove == handsign.قیچی){
                        System.out.println("  انتخاب  شما "+playerMove+"  و  کامپیوتر "+computerMove);
                        player++;
                    }
                    else if(computerMove == handsign.کاغذ && playerMove == handsign.سنگ){
                        System.out.println("  انتخاب  شما "+playerMove+"  و  کامپیوتر "+computerMove);
                        computer++;
                    }
                    else if(computerMove == handsign.قیچی && playerMove == handsign.کاغذ){
                        System.out.println("  انتخاب  شما "+playerMove+"  و  کامپیوتر "+computerMove);
                        computer++;
                    }
                    else if(computerMove == handsign.قیچی && playerMove == handsign.سنگ){
                        System.out.println("  انتخاب  شما "+playerMove+"  و  کامپیوتر "+computerMove);
                        player++;
                    }
                    else if(computerMove == handsign.سنگ && playerMove == handsign.کاغذ){
                        System.out.println("  انتخاب  شما "+playerMove+"  و  کامپیوتر "+computerMove);
                        player++;
                    }
                    else if(computerMove == handsign.سنگ && playerMove == handsign.قیچی){
                        System.out.println("  انتخاب  شما "+playerMove+"  کامپیوتر "+computerMove);
                        computer++;
                    }
                
                //شما با یک امتیاز بردید
                count++;
                if(count == 3){
                    gameOver = true;
                    if(player>computer){
                        System.out.println("------------------------");
                        System.out.println("پایان بازی");
                        System.out.println("شما با "+ player + " امتیاز بردید");
                        System.out.println("*****تبریک!!*****");
                    }
                    else if(player == computer){
                        System.out.println("*****مساوی شد*****\nیک بار دیگه امتحان کنید");
                    }
                    else{
                        System.out.println("------------------------");
                        System.out.println("Finish");
                        System.out.println("کامپیوتر با "+ computer + " بامتیاز برد");
                        System.out.println("*****متاسفانه باختید*****");
                    }
                }
                    
            }//end while
            
        }//end if
        else if(select == decide.EXIT){
            System.out.println("!!");
        }
        else if(select == decide.ABOUT){
            System.out.println("برنامه ی آموزشی");
        }
    }

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163

(آخرین ویرایش در 1392-05-03 05:11 ب.ظ توسط: Reza.Heydari. دلیل ویرایش : تنظیم کد. )
1392-05-02 04:12 ب.ظ
یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط Reza.Heydari ، bakhtiari azad ، sentak ، omrani.meysam63
ارسال پاسخ 


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

دوستان ما