Advertisement
Guest User

מעגל המתאבדים ב JAVA

a guest
Nov 29th, 2016
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.54 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package javaapplication2;
  7.  
  8. /**
  9.  *
  10.  * @author noamn
  11.  */
  12. public class JavaApplication2 {
  13.  
  14.     /**
  15.      * @param args the command line arguments
  16.      */
  17.     public static void main(String[] args) {
  18.  
  19.         int i,j=0;
  20.         int num = 13;  // גודל המעגל
  21.     int PeopleArray[]=new int[num];             //כולם 0  שזה אומר שהם בחיים
  22.         for (i=0;i<num;i++){ PeopleArray[i] =0; }
  23.        
  24.         for (i=0;i<(num-1);)          // יעשה את הלולאה פעמיים פחות מגודל המעדל. פעם אחת עבור שהמערך מתחיל מאפס, ופעם שנייה כדי שאת האחרון ישאיר חי
  25.     {
  26.         if(PeopleArray[j]==0)             // אם נתקלנו באדם חי, עוברים לאדם הבא ו
  27.         {
  28.             i++;  // מוסיפים למונה ההריגות
  29.             if (j<(num-1))  //פונקציית מעבר לאדם הבא עד
  30.                 j++;
  31.             else
  32.                 j=0;      // עד כאן
  33.             for (;PeopleArray[j]==1;)     {  if (j<(num-1)) j++;     else j=0; }     // אם הבא חי, יעבור לבא בפונקציית המעבר
  34.             PeopleArray[j]=1;                              // נהרוג
  35.             if (j<(num-1))     j++;     else j=0;   // נעבור לבא בשביל בשביל הלולאה הבאה  עי פונקציית המעבר
  36.  
  37.         }
  38.         else                    // אם האדם הזה היה מת
  39.         {
  40.             if (j<(num-1))  j++;       else j=0;                           // אז נעבור לאדם הבא עי פונקצית המעבר
  41.         }
  42.     }
  43.     for (j=0;PeopleArray[j]==1;)         //לולאה שסורקת את כל המערך בחיפוש האדם שנותר חי. כל אדם מת עוברים לאדם הבא בשימוש בפונקצית המעבר
  44.     {
  45.         if (j<(num-1))
  46.             j++;
  47.         else
  48.             j=0;
  49.     }                          // אחרי שיצאנו מהלולאה ערך המשתנה שווה למספר האדם החי היחיד שנותר   -כאשר 0 = האדם הראשון
  50.         /*printf ("%d will live\n",j+1);   */
  51.         System.out.print(j+1   );// מוסיפים אחד משום שהמערך מתחיל ב 0 אבל התחלנו את העיגול באחד. משלימים עכשיו את הפער
  52.         System.out.println(" will alive" );// מוסיפים אחד משום שהמערך מתחיל ב 0 אבל התחלנו את העיגול באחד. משלימים עכשיו את הפער
  53.  
  54.     }
  55.    
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement