You are on page 1of 15

 


 
Introduction to Java Programming
Chapter 4 Loops
‫ و ه      اﻥ ﻥ   اﻝار‬Loops ‫ ه ال‬٤  
.‫د اﻝ اﺡ وزی‬%&‫ﻝ‬
(While, do–while, for) ‫ وه‬Loops ‫ق ﻝ‬, ٣ ‫رس‬%‫و  ﻝ) اﻝ ه‬

4.2. The while Loop


‫  ﻝ) اﻝ‬while  ‫ آ‬0‫ی‬,

while (loop-continuation-condition) {
// Loop body
Statement(s);
}

‫د‬% ‫ ﻥر اﻝد اﻝ اﺡ وزی اي‬2 ‫ر‬%0‫ ﻥ‬While

 0;‫ ی‬true ‫ار ﻝ آن‬6‫ا‬7‫اس ط ا‬97‫ه  ا‬%& :‫ )ﻥ‬while ‫ ان‬4‫ﺡ‬5‫و ه‬
: {} ‫اس اﻝﻥ اﻝ ﻝ? دة‬97‫( اﻥ ا‬loop ‫ ه=ج ا ال‬0;‫ ی‬false ‫اﻝار ه ﻝ‬
‫ ة ل‬%& ‫ار‬67‫ ﺡ ﺕ) ط ا‬2 A‫وض ﻥ‬C‫ و اﻝ‬2 ‫ی ﻥره‬D‫وا اﻝ ی‬7‫ا‬
.loop ‫ ?ن ی=ج  ال‬false

Welcome to  J;K‫ی ﻥ‬D‫ض اﻥ ی‬C ‫ ازاي‬while ‫م‬%=F GH‫ل ﻥ‬I ‫ل‬0‫و ه‬
‫ ة‬١٠٠ ?‫;   اﻝ‬K‫ ع اﻝ‬7‫ ا‬:‫ة آ ه‬%‫; آ‬9 ?‫ ة  اﻝ‬١٠٠ Java!
‫ دى‬0‫ی‬K‫ ة ﻝ‬١٠٠ ‫ة‬DC‫ ه‬while ‫ة و‬%‫  ﻥ; ة واﺡ‬9‫دﻝ‬
int count = 0;
while (count < 100) {
System.out.println("Welcome to Java!");
count++;
}
‫ اﻝد اﻝب  ) ا‪  count 6‬اﻝع ‪ integer‬و ﺡ‪ K‬ﻝ ‪ 9‬ا‪%‬ا‪CQ R‬‬
‫و ط ا‪67‬ار اﻥ ا‪ ١٠٠  )Q‬و اﻝد اﻝ اﻝ‪C‬وض یر ه ا اﻝ‪   ;K‬اﻝ?‬
‫و‪F‬ش اﻥ زودﻥ ا ;‪ count++‬و ه دة اﻝ‪TF‬ل زیدة اﻝ) آ ة اﺡ‪.%‬‬

‫‪ :U‬اﻝد اﻝب ‪ W‬آ ی& ‪ W&C‬ی?) ﻝﺡ‪%‬ة آ‪%‬ة ‪7‬زم ا‪7‬ول ﻥ‪  K‬ال‬
‫‪ main method‬و ﻥ‪ Class  2K‬و آ دة  ‪ file‬ﻥ‪ 6 F‬اﻝ‪5‬س‬
‫‪? ClassName.java‬ن ﻥ  اﻥ ﻥ& ‪.compile‬‬

‫و دة  ال‪ Flow Chart‬ﻝ‪K‬ی‪  0‬ال ‪:Loops‬‬

‫ﻥ‪  2C‬اﻝ‪ 6‬ان ﻝ ط ا‪67‬ار آن ‪ True‬ه‪ F DC‬ال ‪ loop‬ﻝ‪ %‬ﻥ‪2‬ی &‪ %‬آ‪%‬ة‬
‫ی‪  Y0‬ط ا‪67‬ار ة ﺕﻥ و ه‪X‬ا ﻝ‪  %‬ی) ط ا‪67‬ار اﻝ ‪=2 False‬ج‬
‫ ال‪ loop‬و ه ‪ 0‬اﻝد‪.‬‬

‫اﻝ‪C‬وض ﻥ‪ A‬ط ا‪67‬ار  ‪ %& 69‬آ ‪ while‬اﻥ  ﻥ‪ 2‬ا‪97‬اس  ‪ 9‬ال‬
‫‪  loop‬ﺡﻝ ان ‪ F‬ال ‪ loop‬ن   واﺡ‪%‬ة او ‪2C‬ش  ﺥﻝ‪ Z‬و اﻝد دة‬
‫ی‪I GH‬ل ل ‪2C loop‬ش ا‪  7‬واﺡ‪%‬ة \‪.‬‬
‫;‪int count = 0‬‬
‫)‪while (count < 10‬‬
‫;)‪System.out.println(count++‬‬

‫• ی‪ :‬ﻥ^آ‪  %‬ان ط ا‪67‬ار هل ﻝـ ‪% %& false‬د &  اﻝار و ا‪7‬‬
‫ه‪ DC‬ال ‪ loop‬اﻝ  ‪ 7‬ﻥ‪2‬ی و ﻝ دة ﺡ`  ﺕ_)‪ CTRL+C A‬ﻝ‪ a9‬اﻝ?)‬
‫و ﺕ&ﻝ‪ b‬اﻝ=‪.^K‬‬
loop ‫ ال‬F ‫ اﻥ اه‬c& ‫ و دة‬while  %& ; 5 JH‫^ ر ه و‬K‫•  ﺥ‬
%‫ار ﻝ‬67‫  ط ا‬Y0‫ رغ و هار اﻝ‬loop ‫ ال‬F ‫و  اﻝﻝ دى ه&; ان‬
‫ ال‬F  ‫ اﻝ اﻝ ) اﻝ?ط‬A ‫ﺡن‬7‫ ا‬e&  ‫ و  اﻥ‬false ‫ یل ﻝـ‬
‫اﻥ ﻝ‬، ‫ی‬2‫ ﻥ‬7  ‫ اﻝ‬false ‫ هل ﻝـ‬W ‫ار اﻝ‬67‫  ط ا‬Y02 loop
‫  یل ﻝـ‬%‫  اﻝ?ط ﻝ‬Y02 loop ‫ ال‬F  %& W ‫ار‬67‫آن ط ا‬
.loop ‫ة \ و آ^ﻥ آد ﺥرج ال‬%‫ ة واﺡ‬loop ‫ ال‬F DC‫ل ی‬D‫ة ه‬%‫ آ‬%& ‫ و‬false

while  %CF‫ ازاي ﻥ‬H‫ل ه‬I ‫و دة‬

‫ اﻝ‬g9‫ﺥ ﻥ& اﻝ‬7‫ و  ا‬2 ‫م هوب‬%=F‫ح اﻝ‬, i6‫ ا‬١٠ ‫ دة ;رة‬b‫اﻝ;ﻥ‬
‫ال‬T6 ‫ و ﻥ آ‬i67‫ ا‬2 ‫ر ی‬%9

1 import javax.swing.JOptionPane;
2
3 public class SubtractionTutorLoop {
4 public static void main(String[] args) {
5 int correctCount = 0; // ‫   د ا
ت ا‬
6 int count = 0; //  ‫ی ا د ا‬
7 long startTime = System.currentTimeMillis(); //‫" و  اای‬#‫ﺡ‬
8 String output = "";
9
10 while (count < 10) {//‫ &ات‬١٠ %‫(ار & ی‬
11 // 1. Generate two random single-digit integers
12 int number1 = (int)(Math.random() * 10);
13 int number2 = (int)(Math.random() * 10);
14
15 // 2. ‫م
ی ا ر م‬,-. ‫ ا ول‬0& ‫ اآ‬. ‫ ا  ا‬,
16 if (number1 < number2) {
17 int temp = number1;
18 number1 = number2;
19 number2 = temp;
20 }
21
22 // 3. Prompt the student to answer "what is number1 – number2?"
23 String answerString = JOptionPane.showInputDialog
24 ("What is " + number1 + " - " + number2 + "?");
25 int answer = Integer.parseInt(answerString);
26
27 // 4. Grade the answer and display the result
28 String replyString;
29 if (number1 - number2 == answer) {
30 replyString = "You are correct!";
31 correctCount++;
32 }
33 else
34 replyString = "Your answer is wrong.\n" + number1 + " - "
35 + number2 + " should be " + (number1 - number2);
36 JOptionPane.showMessageDialog(null, replyString);
37
38 // ١٠ ‫ل ا‬,‫ﺹ‬,‫ ا‬3 ‫ب‬,‫ ا‬0& ‫ج‬6‫اﺡ آ &ة ﺡ ی‬,
89‫زی دة ا‬
39 count++;
40
41 output += "\n" + number1 + "-" + number2 + "=" + answerString +
42 ((number1 - number2 == answer) ? " correct" : " wrong");
43 }
44
45 long endTime = System.currentTimeMillis();//‫; ی‬3‫" و  ا‬#‫ﺡ‬
46 long testTime = endTime - startTime; //
‫ﺡ ب و  ا‬
47
48 JOptionPane.showMessageDialog(null,
49 "Correct count is " + correctCount + "\nTest time is " +
50 testTime / 1000 + " seconds\n" + output);
51 }
52 }
?‫و دة  ض اﻝ;ﻥت  اﻝ‬

System.currentTimeMillis()
‫ ان‬٥   method ‫ اﻝﻝ ﻝ ﺙﻥ و ه?ح ال‬g9‫ اﻝ‬9 J ‫ دى‬method ‫ال‬
.n‫ء ا‬
Math.random()
C`‫ و اآ;  اﻝ‬%‫)  اﻝاﺡ‬Q‫دة( ا‬% o) R‫ ?ا‬9 9‫ ر‬J ‫ دى‬method ‫ال‬

4.3. The do-while Loop


‫ ة‬97‫  ا‬DC loop ‫ ال‬F ‫ ان‬AF ‫ف‬5‫ اﺥ‬J A;e‫ ﻝ‬while ; ‫ ه‬do-while
.‫ول‬7‫  ا‬W ‫ﺥ‬7‫ار ن  ا‬67‫  ط ا‬Y0‫ة \ و ان اﻝ‬%‫واﺡ‬

do-while ‫ آ‬0‫ی‬,


do {
// Loop body;
Statement(s);
} while (loop-continuation-condition);

Flow Chart ‫و دة  ال‬


true Y0‫ة ?ف ط اﻝ‬%‫ آ‬%& Loop ‫ ال‬c ‫ اﻝد اﻝ‬DC ‫ول‬7‫ دة ان ا‬6‫  اﻝ‬2C‫و ﻥ‬
DC‫ ی‬loop ‫ ال‬g‫ل ﺕ‬D false ‫ اﻝب ﺕﻥ ﻝ‬c ‫ اﻝد اﻝ‬DC‫ ی‬J true ‫ ﻝ‬false 7‫و‬
  ‫ ﻝ اﻝد اﻝ وزی یر‬do-while ‫م‬%=F ‫ة اﺡ‬%‫ و ?ن آ‬,‫وا اﻝﻥ‬7‫ا‬
.‫ة‬%‫ ة واﺡ‬97‫  ا‬DC‫زم ﺕ‬7

  ‫ ﻝد‬:F‫ﻥ‬7‫ ا‬0‫ی‬K‫ \ اﺡ =ر اﻝ‬A;e‫ ﻝ‬do-while ‫ زي‬while ‫م‬%=F‫اﺡ  ﻥ‬
.2%=F‫و ﻥ‬

do-while ‫ام‬%=6‫ ا‬0‫ی‬,  ‫ل‬I ‫و دة‬


1 import javax.swing.JOptionPane;
2
3 public class TestDoWhile {
4 /** Main method */
5 public static void main(String[] args) {
6 int data;
7 int sum = 0;
8
9 // Keep reading data until the input is 0
10 do {
11 // Read the next data
12 String dataString = JOptionPane.showInputDialog(null,
13 "Enter an int value:\n(the program exits if the input is 0)",
14 "TestDo", JOptionPane.QUESTION_MESSAGE);
15
16 data = Integer.parseInt(dataString);
17
18 sum += data;
19 } while (data != 0);
20
21 JOptionPane.showMessageDialog(null, "The sum is " + sum,
22 "TestDo", JOptionPane.INFORMATION_MESSAGE);
23 }
24 }

4.4. The for Loop


for ‫ آ ال‬0‫ی‬,
for (initial-action; loop-continuation-condition;
action-after-each-iteration) {
// Loop body;
Statement(s);
}

‫ة‬%‫ء ﻝﺡ‬D ‫ ; و ه?ح آ‬5& 2 `C ‫اء‬D‫ ا‬٣  ‫اس‬97‫ ا‬c for ‫ آ‬%&

0‫  اﻝ‬A‫ و اﻝ; &دی ان ی‬loop‫ای ال‬%  \ ‫ة‬%‫ ة واﺡ‬DC ‫ول دة‬7‫ء ا‬D‫اﻝ‬
 ‫ود ﺡت ﺕﻥ‬D‫ اﻝ& اﻥ  ﻥ‬J )‫   اﻝ‬R‫ا‬%7‫ا‬

‫ای آ دورة‬%   Y0 Y0‫ء اﻝﻥ دة ط اﻝ‬D‫اﻝ‬

) ‫  اﻝ اﻝ‬A ‫ی آ دورة و اﻝ; اﺕ&دوا ان‬2‫  ﻥ‬DC ‫ دة‬q‫ﻝ‬I‫ء اﻝ‬D‫اﻝ‬
‫ود دو ﺡت ﺕﻥ‬D‫ ة و  ﻥ‬%& ‫ار‬67‫ط ا‬

loop ‫ ال‬F 95 ‫ة‬%‫ آ‬%&

for ‫ام ال‬%=6‫ اآ ا‬2C‫ ی‬5I 9‫ه?ف دﻝ‬


int i;
for (i = 0; i < 100; i++) {
System.out.println("Welcome to Java!");
}
‫ اﻝ‪I‬ل دة  ا‪7‬ول ﺡ‪ 9 A‬ا‪%‬ا‪ R‬ﻝ) ‪ C` i‬و ‪9‬ل ان ط اﻝ‪ Y0‬ان ‪ i‬ا‪  )Q‬‬
‫‪%;2 ١٠٠‬أ ی‪  Y0‬اﻝ?ط ه‪ 95‬ان ‪ 5& i‬ا‪%;2 ١٠٠  )Q‬أ ی‪ DC‬ا اﻝ‪ ;K‬و &‪ %‬آ‪%‬ة‬
‫ه‪D‬ود ‪ i‬اﺡ‪ %‬و ی‪0‬رﻥ ـ ‪ ١٠٠‬ﺕﻥ و ه‪X‬ا‪.‬‬

‫و دة ح ال ‪ for‬و اﻝ‪I‬ل ‪%=6‬ام ال ‪Flow Chart‬‬

‫•  ﺥ‪ ^K‬ر ه و‪ for  %& ; 5 JH‬و دة &‪ c‬اﻥ اه ‪ F‬ال ‪loop‬و‬
‫ اﻝﻝ دى ه&; ان ‪ F‬ال ‪ loop‬رغ و هار اﻝ‪  Y0‬ط ا‪67‬ار ﻝ‪%‬‬
‫ یل ﻝـ ‪ false‬و &‪ %‬آ‪%‬ة ه‪D‬ل ی‪ F DC‬ال ‪ loop‬ة واﺡ‪%‬ة \ و آ^ﻥ آد ﺥرج‬
‫ال ‪.loop‬‬

‫زي  ‪9‬ﻝ ان اﻝ‪D‬ء ا‪7‬ول و اﻝ‪I‬ﻝ‪  q‬ا‪97‬اس &‪  for %‬ﻥ‪  A‬اآ   و هن‬
‫ ا‪7‬ﺥ ﻝ? دة‬
‫{ )‪for (int i = 0, j = 0; (i + j < 10); i++, j++‬‬
// Do something
}

 \ %‫  ﻝ اﻝد اﻝ هرة ن  ا واﺡ‬e b‫  اﻝ;ﻥ‬0;‫ ?ن ی‬
.‫\ اﻝ ﻝ? دة‬C‫  ﻥ‬for J %‫ﻥ‬
for (int i = 1; i < 100; System.out.println(i), i++);

K‫ﺕ و ﻥ‬5‫ اﻝ‬2R‫ا‬D‫ء  ا‬D )F‫ آ   ی&  ﻥ‬2?‫  ﻥ‬for 
. 2H ; ‫ اﻝد اﻝ‬Q‫ت ﺥ‬7‫ ﻝ‬0; ‫ \ دة‬FC‫ ﻥ‬loop ‫ ال‬F 

infinite ) ‫ی‬2‫ ﻥ‬7  ‫ هر اﻝ‬loop  0;‫ة ی‬% ‫ و‬H ‫اء‬D‫ ا‬g‫ اﻝ‬:F‫ ﻥ‬
‫( و هن ﻝ? دة‬loop

4.5. Which Loop to Use?


‫وا  ط‬%‫ و دة ?ن ه ^آ‬pre-test 6‫ ا‬2 ‫ل‬0 while ‫ و‬for ‫زم ﻥ&ف ان‬7
‫ و دة ?ن‬post-test 6‫ ا‬2 ‫ل‬0 do-while ‫ اﻥ‬loop ‫ ال‬F DC‫;  ی‬9 ‫ار‬67‫ا‬
‫م آ‬%=F‫ و  ﻥ‬i ‫ث اﻥاع‬5I‫آ اﻝ‬7‫ و‬.loop ‫ ال‬F DC‫  ی‬%& ‫  اﻝ?ط‬Y0
.& ‫ اﻝد اﻝ‬%C‫ة ﺕ‬%‫م اآ واﺡ‬%=F‫ل اﻝﻥ \ اﺡ ول ﻥ‬% 2 ‫ة‬%‫واﺡ‬

4.6. Nested Loops


 ‫ ﺕﻥ او اآ‬loop ‫( و اه‬outer loop) ‫ ﺥر‬loop  ‫ ه ان‬nested loops ‫ال‬
 ‫أوا‬%; ‫ اﻝ ة‬loops ‫ اﻝ=ر ر ال‬loop‫  آ ة ال‬،(inner loop) loop
.‫ا‬2‫  ی‬%‫ول و یروا ﻝ‬7‫ا‬

‫ول اﻝ_ب زي اﻝ? دة‬% ‫ﻥ?ء‬7 ‫ اآ‬nested loops ‫ & ال‬GH‫ل دة ه‬I‫و اﻝ‬

1 import javax.swing.JOptionPane;
2
3 public class MultiplicationTable {
4 /** Main method */
5 public static void main(String[] args) {
6 // Display the table heading
7 String output = " Multiplication Table\n";
8 output += "------------------------------------------------\n";
9
10 // Display the number title
11 output += " | ";
12 for (int j = 1; j <= 9; j++)
13 output += " " + j;
14
15 output += "\n";
16
17 // Print table body
18 for (int i = 1; i <= 9; i++) {//  ‫ ر‬6‫ب ا‬,‫ه= دى ا‬
19 output += i + " | ";
20 for (int j = 1 j < = 9; j++) {
21 // Display the product and align properly
22 if (i * j < 10)
23 output += " " + i * j;
24 else
25 output += " " + i * j;
26 }
27 output += "\n";
28 }
29
30 // Display result
31 JOptionPane.showMessageDialog(null, output);
32 }
33 }
‫و هن دة  اﻝﺕ‪b‬‬

‫اﻝ‪D‬ء اﻝ  اﻝد  اﻝ‪ KF‬ر‪ ٢٢ 9‬ﻝـ‪ KF‬ر‪ ٢٥ 9‬دة اﻝ ‪   A;e‬اﻝ‪%‬ول ?ن‬
‫ﺡ‪H Q‬ب اﻝ‪ u&  9‬ﻝ‪ %‬اﻝ‪ ٩*٩ 9‬ﻥ  ر‪ 9‬واﺡ‪ %‬او ر‪ 9‬ﺡ ه ‪ 9‬ان‬
‫ﻝ ﺡ‪ Q‬اﻝ_ب ن  ر‪ 9‬واﺡ‪ %‬ه‪ ;9 :F‬ﻥ ‪ H‬ﻝ ن  ر‪ 9‬ه‪:F‬‬
‫‪ ;9‬ن واﺡ‪.%‬‬

‫‪4.7. Minimizing Numerical Errors‬‬


‫ اﻝ‪D‬ء دة ه ا‪7‬ﺥ‪K‬ء  ا‪% 7‬اد ‪ :;F‬اﻝ&‪ 5‬اﻝ&?ی و ازاي ﻥ‪ 0‬ا‪7‬ﺥ‪K‬ء‪.‬‬

‫دة ‪I‬ل ; ا‪7‬ﺥ‪K‬ء ‪ :;F‬اﻝ&‪ 5‬اﻝ&?ی ‪C‬ض اﻥ وزی ﻥ‪   J‬ار‪9‬م ﺕ;‪%‬أ  ‬
‫‪ ٠.٠١‬و ا‪7‬ر‪9‬م ‪D‬ی‪ %‬ـ ‪ F6  ٠.٠١‬ا‪7‬ر‪9‬م و ﺕ‪ 2‬ب ‪١.٠‬‬

‫اﻝد‬

‫;‪1 import javax.swing.JOptionPane‬‬


‫‪2‬‬
‫{ ‪3 public class TestSum‬‬
‫{ )‪4 public static void main(String[] args‬‬
5 // Initialize sum
6 float sum = 0;
7
8 // Add 0.01, 0.02, ..., 0.99, 1 to sum
9 for (float i = 0.01f; i <= 1.0f; i = i + 0.01f)
10 sum += i;
11
12 // Display result
13 JOptionPane.showMessageDialog(null, "The sum is " + sum);
14 }
15 }

‫ ﻝ? دة‬b‫و هن اﻝﺕ‬

‫& آن‬, ‫ اﻝ‬b‫ ان اﻝﺕ‬0‫ ﻝد ﻝ‬run   %& ‫آ‬7 ‫ و‬٥٠.٥ ‫وض ین‬C‫ آن اﻝ‬b‫اﻝﺕ‬
‫  ال‬g‫د ﺙ‬% ‫م‬%=F ‫ اوى و دة ?ن ان اﻝ;ﺕ‬09‫ د‬W 7‫ة ا‬% ٥٠.٤٩٩٩٨٥
7‫ ا‬float ‫ل‬% double %=6‫ل اﻥ ﻝ ا‬0‫;&ً آ ه ه‬K ‫ اﻝ&?ی‬5&‫ اﻝ‬I‫ ﻝ‬bits
.32-bits  I float ‫ و ال‬64-bits  I double ‫ن ال‬7 F‫ه‬

ً&;K 49.50000000000003 0 b‫ ان اﻝﺕ‬95‫ل دة ه‬I‫  اﻝ‬double %=6‫\ ﻝ ا‬


‫  اﺥ‬i ‫ ان ال‬95‫ة ه‬%‫  آ‬:;F‫ و ﻝ ﺡوﻝ ﻥ?ف اﻝ‬9 W ‫^ زاد‬K=‫ة اﻝ‬% ‫ن‬7 ‫)ب‬F‫ه‬
‫ة ه=ج  ال‬%‫ اوى و ?ن آ‬KF  ١  ;‫ هن اآ‬2 J‫وض ﺕ‬C‫ة اﻝ‬
.2&‫ ه‬W ‫ و‬loop

: 0‫ی‬,  ‫^ دة‬K=‫  اﻝ‬:)‫ ?ن ﻥ‬

‫ه‬%& ‫ و‬٠.٩٩ 9‫ه ر‬%& J‫ول و ﻥ‬7‫ ا‬١ ‫ ال‬J‫أ ﻥ‬%;‫ ی& ه‬loop ‫  ﻥ&\ ال‬.١
‫ ﻝ? دة‬loop ‫ و هن ال‬.٠.٠١ ‫ ﻝـ‬Q‫  ﻥ‬%‫ا ﻝ‬X‫ و ه‬٠.٩٨
// Add 1, 0.99, ..., 0.01 to sum
for (double i = 1.0; i >= 0.01; i = i - 0.01)
sum += i;

2FC‫ ﻥ‬J‫ اﻝ‬0‫ی‬, )‫ و ﻥ‬integer 2‫  اﻥ‬loop ‫  ال‬count ‫م ال‬%=F‫  ﻥ‬.٢

double currentValue = 0.01;

for (int count = 0; count < 100; count++) {


sum += currentValue;
currentValue += 0.01;
}

4.9. Keywords break and continue


‫ آدوات ﺕ‬loops ‫  ال‬2%=F‫  ﻥ‬continue ‫ و‬Break

‫  ال‬break ;‫ و آ‬nested loop  ‫ ه اه ی& ﻝ‬loop ‫ب‬9‫  ا‬2 break
.outer loop ‫  ﺕ^ﺙ  ال‬o  2‫ ه اﻝ ه‬inner loop ‫ ال‬inner loop

‫ و ﺕ‬loop ‫ ال‬F ‫ی‬2‫ ﻝ‬0 2‫ او & ﺕﻥ اﻥ‬2 ‫ورة اﻝ اﺡ‬%‫ اﻝ‬2 continue
.‫ه دى‬%& ‫ورة اﻝ‬%‫  اﻝ‬loop ‫ال‬

a9‫ و ﻥ‬٢٠ ‫ اﻝ‬١  9‫ر‬7‫ ا‬J‫ل دة ه‬I‫  اﻝ‬break ‫م‬%=F‫ ازاي ﻥ‬H‫ل ی‬I ‫ل‬0‫ه‬
١  ‫م‬9‫ر‬7‫ ا‬J b‫ ه ﻥﺕ‬b ‫ و  اﻝ?  اﻝ`رة‬١٠٠  ;‫ آن اآ‬J‫ اﻝ‬b‫ ﺡﻝ ان ﻥﺕ‬
break ‫ام‬%=6 J‫ اﻝ‬b‫ ﻥﺕ‬a ‫ اﻥ  اﻝ`رة‬٢٠ ‫اﻝ‬

1 public class TestBreak {


2 /** Main method */
3 public static void main(String[] args) {
4 int sum = 0;
5 int number = 0;
6
7 while (number < 20) {
8 number++;
9 sum += number;
10 if (sum >= 100) break;
11 }
12
13 System.out.println("The number is " + number);
14 System.out.println("The sum is " + sum);
15 }
16 }

٢٠ ‫ اﻝ‬١  ‫م‬9‫ر‬7‫ ا‬J‫ل دة ه‬I‫  اﻝ‬continue  GH‫ل آن ?ن ﻥ‬I ‫ل‬0‫و ه‬
‫ آ‬J‫;& ﻝ‬K‫ اﻝ‬b‫ ه?ف اﻝﺕ‬b ‫ و  اﻝ?  اﻝ`رة‬١١ ‫ و‬١٠ ‫م‬9‫ر‬7‫ ا‬J‫ ه‬W \
١١ ‫ و‬١٠ ‫ا‬%  ‫م‬9‫ر‬7‫ آ ا‬J ‫ ه?ف‬a ‫م اﻥ  اﻝ`رة‬9‫ر‬7‫ا‬

1 public class TestContinue {


2 /** Main method */
3 public static void main(String[] args) {
4 int sum = 0;
5 int number = 0;
6
7 while (number < 20) {
8 number++;
9 if (number == 10 || number == 11) continue;
10 sum += number;
11 }
12
13 System.out.println("The sum is " + sum);
14 }
15 }
4.9.1. Statement Labels and Breaking with Labels
‫ة‬% ‫ و‬loops ‫ ال‬J ‫ اآ‬2%=F ‫ ان و  اﻝ&وی‬2&‫آ   اﻝ  ﻥ‬
‫م‬%=F‫ و ﻥ‬label 2&‫ ﻥ ﻥ‬outer loop ‫  ﻥ  ال‬nested loop ‫ﻥ‬% ‫ ﻝ‬
. continue ‫ و‬break

labeled loop ‫ ﻝ=وج  ال‬break ‫ام‬%=67 ‫ل‬I ‫و دة‬

outer:
for (int i = 1; i < 10; i++) {
inner:
for (int j = 1; j < 10; j++) {
if (i * j > 50)
break outer;

System.out.println(i * j);
}
}

outer loop ‫ء دورة  ال‬2‫ﻥ‬7 continue ‫ام‬%=67 ‫ل ﺕﻥ‬I ‫و دة‬

outer:
for (int i = 1; i < 10; i++) {
inner:
for (int j = 1; j < 10; j++) {
if (i * j > 50)
continue outer

System.out.println(i * j);
}
}

7‫ام ا‬%=6‫ ا‬a= labeled loops ‫ ال‬J continue ‫ و‬break ‫ام‬%=6‫ ا‬:U
.goto

You might also like