0% found this document useful (0 votes)
61 views

Algorithms & Data Structures

The document discusses algorithms and data structures. It defines algorithms as methods of thinking and problem-solving to arrive at desired results. It also defines data structures as organizing data in an effective way to perform operations on that data efficiently. The document then provides several exercises asking the reader to draw shapes and write Java programs to solve problems related to numbers.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views

Algorithms & Data Structures

The document discusses algorithms and data structures. It defines algorithms as methods of thinking and problem-solving to arrive at desired results. It also defines data structures as organizing data in an effective way to perform operations on that data efficiently. The document then provides several exercises asking the reader to draw shapes and write Java programs to solve problems related to numbers.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 57

‫‪Algorithms & Data Structures‬‬

‫اﻟﺧوارزﻣﯾﺎت وھﯾﻛﻠﺔ اﻟﺑﯾﺎﻧﺎت‬


‫إﻋداد‪ :‬اﻟوﻟﯾد إﺑراھﯾم اﻟدھﯾش‬
‫ﻛﻠﯾﺔ اﻹﺗﺻﺎﻻت واﻟﻣﻌﻠوﻣﺎت ﺑﺎﻟرﯾﺎض‬
‫اﻟﺧوارزﻣﯾﺎت وھﯾﻛﻠﺔ اﻟﺑﯾﺎﻧﺎت ھﻲ‬
‫اﻟﺧوارزﻣﯾﺎت ھﻲ طرﯾﻘﺔ اﻟﺗﻔﻛﯾر واﻟﺗﺣﻠﯾل أﺛﻧﺎء ﻛﺗﺎﺑﺔ اﻟﻛود اﻟﺑرﻣﺟﻲ ﺣﺗﻰ اﻟوﺻول إﻟﻰ اﻟﻧﺗﯾﺟﺔ اﻟﻣطﻠوﺑﺔ‬

‫اﻟﺧوارزﻣﯾﺎت ھﻰ ﻣﺟﻣوﻋﺔ ﻣن اﻟﺧطوات واﻻواﻣر اﻟواﺿﺣﺔ اﻟﺗﻰ ﺗﻛﺗب ﻟﺣل ﻣﺷﻛﻠﺔ ﺑرﻣﺟﯾﺔ ﻣﻌﯾﻧﺔ ‪ ,‬وﯾﻘﺎل أن اﻟﺧوارزﻣﯾﺔ ﺟﯾدة إذا ﻛﺎﻧت ﺳرﯾﻌﺔ ﻓﻰ‬
‫‪.‬اﻟﺗﻧﻔﯾذ وﻟﮭﺎ ﻛﻔﺎءة ﻋﺎﻟﯾﺔ ﻓﻰ اﻟﺗﺧزﯾن‬

‫ھﯾﻛﻠﺔ اﻟﺑﯾﺎﻧﺎت ھﻲ طرﯾﻘﺔ ﻟﺟﻣﻊ اﻟﺑﯾﺎﻧﺎت وﺗﻧظﯾﻣﮭﺎ ﺑطرﯾﻘﺔ ﺗﻣﻛﻧﻧﺎ ﻣن إﺟراء ﻋﻣﻠﯾﺎت ﻋﻠﻰ ھذه اﻟﺑﯾﺎﻧﺎت ﺑطرﯾﻘﺔ ﻓﻌﺎﻟﺔ ﺑﺈﺧﺗﺻﺎر ھﻲ ﻋﻣﻠﯾﺔ‬
‫ﺗﺧزﯾن اﻟﺑﯾﺎﻧﺎت ﻓﻰ اﻟﺣﺎﺳب ﺑطرﯾﻘﺔ ﻓﻌﺎﻟﺔ وﻏﯾر ﻣﻌﻘدة وذﻟك ﻟدﻋم ﻧوع اﻟﺑﯾﺎﻧﺎت اﻟﻣراد ﺗﺧزﯾﻧﮭﺎ ﻟﯾﻌﻣل اﻟﻛود او اﻟﺧوارزﻣﯾﺔ ﺑطرﯾﻘﺔ اﺳرع‬
‫‪.‬واﻛﺛر ﻛﻔﺎءة‬
‫اﻟﺗﻣرﯾن اﻷول‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻧﻲ‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻟث‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟراﺑﻊ‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺧﺎﻣس‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎدس‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎﺑﻊ‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻣن‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﺗﺎﺳﻊ‬
‫‪:‬ﻗم ﺑرﺳم اﻟﺷﻛل اﻟﺗﺎﻟﻲ وذﻟك ﺑﺈﺳﺗﺧدام ﻟﻐﺔ اﻟﺑرﻣﺟﺔ ﺟﺎﻓﺎ‬
‫اﻟﺗﻣرﯾن اﻟﻌﺎﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾطﻠب ﻣن اﻟﻣﺳﺗﺧدم أن ﯾدﺧل ﻋدد ﻣﻛون ﻣن أﻛﺛر ﻣن ﺧﺎﻧﺔ واﻟﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺟﻣﻊ اﻷﻋداد ‪،‬‬

‫ﻣﺛﻼً إذا ﻗﺎم اﻟﻣﺳﺗﺧدم ﺑﺈدﺧﺎل اﻟرﻗم ‪ 5678‬ﻓﺈن ﻧﺎﺗﺞ اﻟطﺑﺎﻋﺔ ﺳﯾﻛون ﺟﻣﻊ اﻷﻋداد ‪26 = 8+7+6+5‬‬
‫اﻟﺗﻣرﯾن اﻟﺣﺎدي ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻌﻛس اﻷرﻗﺎم اﻟﻣدﺧﻠﺔ ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم ‪،‬‬

‫ﻣﺛﻼً إذا ﻗﺎم اﻟﻣﺳﺗﺧدم ﺑﺈدﺧﺎل اﻟرﻗم ‪ 5678‬ﻓﺈن ﻧﺎﺗﺞ اﻟطﺑﺎﻋﺔ ﺳﯾﻛون ﺟﻣﻊ اﻷﻋداد ‪8765‬‬
‫ﺣﻠول اﺧﺗﺑﺎر اﻟﻔﺗرة اﻷوﻟﻰ‬
1) Write a Java code that print out this sentence "welcome to the exam" multiple times "depending of the number
which will be entered by the user"
(you must use while or for loop to answer the question, the user must enter a number above "0", ask the user to
enter the number of sentences)

Answer

2) Write a Java code that print out the following shape: "when we entered 4 the shape will be:"
4
43
432
4321
(you must use while or for loops to answer the question, the user must enter a number above "0", ask the user to
enter the number of rows)
Answer
‫ﺣﻠول اﺧﺗﺑﺎر اﻟﻔﺗرة اﻷوﻟﻰ‬
3) Write a Java code that print out the following shape: "when we entered 4 the shape will be:"

0000

1111

0000

1111

(you must use while or for loops to answer the question, the user must enter a number above "0", ask the user to enter
the number of rows)
Answer

4) Write a Java code that print out all the odd numbers located between two numbers will be entered by the user

(you must use while or for loop to answer the question, ask the user to enter two numbers both must be above "0", and
you have to be sure which number is bigger that the other!)
Answer
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻧﻲ ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ ﻣﺣﺗوﯾﺎت ﻣﺻﻔوﻓﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻟث ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ اﻷرﻗﺎم أﻋﻠﻰ ﻣن أو ﺗﺳﺎوي ‪60‬‬
‫اﻟﺗﻣرﯾن اﻟراﺑﻊ ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ ﻛم ﻋدد اﻷرﻗﺎم اﻟﻔردﯾﺔ داﺧل ﻣﺻﻔوﻓﺔ ﻣﻌﯾﻧﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺧﺎﻣس ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ أﺳﻣﺎء ودرﺟﺎت اﻟطﻼب اﻟﻧﺎﺟﺣﯾن واﻟﺣﺎﺻﻠﯾن ﻋﻠﻰ ‪ 60‬درﺟﺔ وأﻋﻠﻰ‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎدس ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ ﻋﻛس ﻣﺣﺗوﯾﺎت اﻟﻣﺻﻔوﻓﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎﺑﻊ ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ ﻋﻛس ﻣﺣﺗوﯾﺎت اﻟﻣﺻﻔوﻓﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻣن ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺗرﺗﯾب ﻋﻧﺎﺻر ﻣﺻﻔوﻓﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺗﺎﺳﻊ ﻋﺷر‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺗرﺗﯾب درﺟﺎت وأﺳﻣﺎء اﻟطﻼب‬
‫اﻟﺗﻣرﯾن اﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺎﻟﺑﺣث اﻟﺧطﻲ داﺧل ﻣﺻﻔوﻓﺔ ﻣرﺗﺑﺔ‬
‫اﻟﺗﻣرﯾن اﻟواﺣد واﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺎﻟﺑﺣث اﻟﺧطﻲ داﺧل ﻣﺻﻔوﻓﺔ ﻏﯾر ﻣرﺗﺑﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻧﻲ واﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺎﻟﺑﺣث اﻟﺛﻧﺎﺋﻲ داﺧل ﻣﺻﻔوﻓﺔ ﻣرﺗﺑﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻟث واﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺗﺧزﯾن اﺳﻣﺎء اﻟﻣوظﻔﯾن ورواﺗﺑﮭم وإﺟﻣﺎﻟﻲ ﻣﺑﯾﻌﺎﺗﮭم وإﺟﻣﺎﻟﻲ رواﺗﺑﮭم )إﺟﻣﺎﻟﻲ اﻟراﺗب = اﻟراﺗب‬
‫‪) +‬إﺟﻣﺎﻟﻲ اﻟﻣﺑﯾﻌﺎت * ‪ ( (0.025‬ﺛم ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑﺗرﺗﯾب ﺑﯾﺎﻧﺎت اﻟﻣوظﻔﯾن ﺑﺷﻛل ﺗﻧﺎزﻟﻲ ﺣﺳب اﻷﻛﺛر ﻣﺑﯾﻌﺎت وﯾﻘوم‬
‫اﻟﺑرﻧﺎﻣﺞ ﺑﺈﺿﺎﻓﺔ ﻣﻛﺎﻓﺄة ﻗدرھﺎ )‪ 5000‬﷼ (ﻟﻠﻣوظف اﻷﻛﺛر ﻣﺑﯾﻌﺎت وطﺑﺎﻋﺔ إﺟﻣﺎﻟﻲ اﻟﻣﺑﯾﻌﺎت ﻟﻛل اﻟﻣوظﻔﯾن‬
‫اﻟﺗﻣرﯾن اﻟراﺑﻊ واﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ ﻋﻧﺎﺻر ﻣﺻﻔوﻓﺔ ذات ﺑﻌدﯾن‬
‫اﻟﺗﻣرﯾن اﻟﺧﺎﻣس واﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ درﺟﺎت ‪ 4‬طﻼب وﻣن ﺛم ﺣﺳﺎب ﻣﺗوﺳط درﺟﺎت ﻛل طﺎﻟب‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎدس واﻟﻌﺷرﯾن‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺟﻣﻊ اﻷرﻗﺎم اﻟﻣوﺟودة ﻓﻲ ﻣﺻﻔوﻓﺗﯾن ذات ﺑﻌدﯾن‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎﺑﻊ واﻟﻌﺷرﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة ‪ 20‬ﻋدد ﺻﺣﯾﺢ وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ وﻣن ﺛم ﯾﻘوم ﺑﻔﺣص ﺟﻣﯾﻊ اﻷﻋداد اﻟﻣﺧزﻧﺔ ﻓﻲ‬
‫اﻟﻣﺻﻔوﻓﺔ واﺳﺗﺧراج اﻷﻋداد اﻟﻔردﯾﺔ ﻣﻧﮭﺎ وﺗﺧزﯾن اﻷﻋداد اﻟﻔردﯾﺔ ﻓﻲ ﻣﺻﻔوﻓﺔ أﺧرى "طوﻟﮭﺎ ﯾﺳﺎوي ﻋدد اﻷﻋداد‬
‫اﻟﻔردﯾﺔ ﻓﻲ اﻟﻣﺻﻔوﻓﺔ اﻷﺻﻠﯾﺔ" ﺛم ﻗم ﺑطﺑﺎﻋﺔ ﻣﺣﺗوﯾﺎت اﻟﻣﺻﻔوﻓﺗﯾن ؟‬

‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة ‪ 20‬ﻋدد ﺻﺣﯾﺢ وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ وﻣن ﺛم ﯾﻘوم ﺑﻔﺣص ﺟﻣﯾﻊ اﻷﻋداد اﻟﻣﺧزﻧﺔ ﻓﻲ‬
‫اﻟﻣﺻﻔوﻓﺔ وطﺑﺎﻋﺔ ﻋدد اﻷﻋداد اﻟزوﺟﯾﺔ اﻟﻣدﺧﻠﺔ ﻓﻲ اﻟﻣﺻﻔوﻓﺔ ؟‬

‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة ‪ 20‬ﻋدد ﺻﺣﯾﺢ وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ وﻣن ﺛم ﯾﻘوم ﺑﻔﺣص ﺟﻣﯾﻊ اﻷﻋداد اﻟﻣﺧزﻧﺔ ﻓﻲ‬
‫اﻟﻣﺻﻔوﻓﺔ وطﺑﺎﻋﺔ ﻋدد اﻷﻋداد اﻟﻣﺿﺎﻋﻔﺔ ﻟﻠﻌدد "‪ "10‬اﻟﻣدﺧﻠﺔ ﻓﻲ اﻟﻣﺻﻔوﻓﺔ ؟‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻣن واﻟﻌﺷرﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة أﺳﻣﺎء ودرﺟﺎت ﻋدد ﻣن اﻟﻣﺗدرﺑﯾن )ﯾﺗم إدﺧﺎل ﻋدد اﻟﻣﺗدرﺑﯾن ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم( وﺗﺧزﯾن‬
‫اﻟﺑﯾﺎﻧﺎت ﻓﻲ ﻣﺻﻔوﻓﺗﯾن واﺣدة ﻟﻸﺳﻣﺎء واﻟﺛﺎﻧﯾﺔ ﻟﻠدرﺟﺎت ‪ ،‬ﻣن ﺛم ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑطﺑﺎﻋﺔ أﺳﻣﺎء اﻟﻣﺗدرﺑﯾن اﻟﻧﺎﺟﺣﯾن‬
‫واﻟﺣﺎﺻﻠﯾن ﻋﻠﻰ درﺟﺎت ﺗزﯾد ﻋن ‪ 60‬درﺟﺔ واﺳم اﻟﻣﺗدرب اﻟﺣﺎﺻل ﻋﻠﻰ أﻋﻠﻰ درﺟﺔ ؟‬
‫اﻟﺗﻣرﯾن اﻟﺗﺎﺳﻊ واﻟﻌﺷرﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة ‪ 10‬درﺟﺎت ﻣن درﺟﺎت اﻟﻣﺗدرﺑﯾن وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ )ﻗم ﺑﺈﻓﺗراض أن طول اﻟﻣﺻﻔوﻓﺔ‬
‫‪ 10‬وﺳﯾﻘوم اﻟﻣﺳﺗﺧدم ﺑﺈدﺧﺎل اﻟدرﺟﺎت ﺑﺷﻛل ﯾدوي( ﺛم ﻗم ﺑطﺑﺎﻋﺔ ﻣﺣﺗوﯾﺎت اﻟﻣﺻﻔوﻓﺔ وﺣﺳﺎب وطﺑﺎﻋﺔ ﻣﺟﻣوع‬
‫وﻣﺗوﺳط ھذه اﻟدرﺟﺎت ؟‬

‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة درﺟﺎت اﻟﻣﺗدرﺑﯾن وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ‪ ،‬ﺛم ﻗم ﺑطﺑﺎﻋﺔ ﻣﺣﺗوﯾﺎت اﻟﻣﺻﻔوﻓﺔ وﺣﺳﺎب وطﺑﺎﻋﺔ‬
‫ﻣﺟﻣوع وﻣﺗوﺳط ھذه اﻟدرﺟﺎت ؟‬
‫اﻟﺗﻣرﯾن اﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة ﻣﺑﯾﻌﺎت ﻋدد ﻣن اﻟﻣوظﻔﯾن وأرﻗﺎﻣﮭم اﻟوظﯾﻔﯾﺔ )ﻓﻲ ﻣﺻﻔوﻓﺗﯾن( ﺛم ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑطﺑﺎﻋﺔ ھذه‬
‫اﻟﻣﻌﻠوﻣﺎت ﺑﺎﻟﺗرﺗﯾب اﻟﺗﺻﺎﻋدي ﺑﻧﺎ ًء ﻋﻠﻰ رﻗم اﻟﻣوظف وطﺑﺎﻋﺗﮭﺎ ﻣرة أﺧرى ﺑﺎﻟﺗرﺗﯾب اﻟﺗﻧﺎزﻟﻲ ﺑﻧﺎ ًء ﻋﻠﻰ أرﻗﺎم‬
‫اﻟﻣﺑﯾﻌﺎت ؟‬
‫اﻟﺗﻣرﯾن اﻟواﺣد واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة ‪ 10‬أرﻗﺎم ﻣدﺧﻠﺔ ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ ﻣن ﺛم ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑﺎﻟﺑﺣث ﻋن‬
‫ﻋدد ﻣرات ﺗﻛرار رﻗم ﻣﻌﯾن "ﻣدﺧل ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم" ﻓﻲ اﻟﻣﺻﻔوﻓﺔ وطﺑﺎﻋﺔ ﻋدد ﻣرات اﻟﺗﻛرار ؟‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻧﻲ واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة درﺟﺎت ‪ 5‬ﻣﺗدرﺑﯾن ‪ ،‬ﺣﯾث أن ﻟﻛل ﻣﺗدرب ‪ 3‬ﻣواد وﺗﺧزﯾن اﻟﻘﯾم ﻓﻲ ﻣﺻﻔوﻓﺔ ذات ﺑﻌدﯾن ‪،‬‬
‫وﻣن ﺛم ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑﺎﻟﺗﺎﻟﻲ‪:‬‬

‫ﺣﺳﺎب ﻣﺟﻣوع درﺟﺎت ﻛل ﻣﺗدرب وطﺑﺎﻋﺔ اﻟﻧﺗﯾﺟﺔ؟‬ ‫‪-‬‬


‫ﻣﺗوﺳط درﺟﺎت ﻛل ﻣﺗدرب وطﺑﺎﻋﺔ اﻟﻧﺗﯾﺟﺔ؟‬ ‫‪-‬‬
‫ﻣﺣﺗوﯾﺎت اﻟﻣﺻﻔوﻓﺔ ذات اﻟﺑﻌدﯾن وطﺑﺎﻋﺔ اﻟﻧﺗﯾﺟﺔ؟‬ ‫‪-‬‬
Methods ‫أﻣﺛﻠﺔ ﻋﻠﻰ اﻟطرق‬
static void myMethod() {

System.out.println("I just got executed!");

public static void main(String[] args) {

myMethod();

}
Methods ‫أﻣﺛﻠﺔ ﻋﻠﻰ اﻟطرق‬
static void myMethod(String name, int age) { //parameters action as variables --- void means that the method does
not have a return value

System.out.println("‫اﻷﺳم ھو‬: "+name+"--"+ "‫اﻟﻌﻣر‬: "+age);

public static void main(String[] args) {

myMethod("15 ,"‫ ;)اﻟوﻟﯾد‬// arguments

myMethod("20 ,"‫;)ﺟﻌﻔر‬

myMethod("69 ,"‫;)ﻋﺑداﻟﻘدوس‬

}
Methods ‫أﻣﺛﻠﺔ ﻋﻠﻰ اﻟطرق‬
static int myMethod(int x,int y) { //the method return value, we do not use "void"

return y + x; }

public static void main(String[] args) {

int h=myMethod(6,5);

System.out.println(h);

}
Methods ‫أﻣﺛﻠﺔ ﻋﻠﻰ اﻟطرق‬
static int plusMethod(int x, int y) {

return x + y;}

static double plusMethod(double x, double y) {

return x + y;}

public static void main(String[] args) {

int myNum1 = plusMethod(8, 5);

double myNum2 = plusMethod(4.3, 6.26);

System.out.println("int: " + myNum1);

System.out.println("double: " + myNum2);

}
Methods ‫أﻣﺛﻠﺔ ﻋﻠﻰ اﻟطرق‬
static boolean chick (int b[]) {

int c=0;

for (int i=0; i<b.length ; i++)

if (b[i]%2==1) return false;

return true;}

public static void main(String[] args) {

int a[];

int x=Integer.parseInt(JOptionPane.showInputDialog("‫;))"أدﺧل طول اﻟﻣﺻﻔوﻓﺔ‬

a=new int [x];

for (int i=0; i<a.length; i++)

a[i]= Integer.parseInt(JOptionPane.showInputDialog("‫;))"ادﺧل رﻗم‬

boolean t= chick(a);

System.out.println(t);}
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻟث واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب طرﯾﻘﺔ ﺗﺳﺗﻘﺑل ﻣﺻﻔوﻓﺔ أﻋداد ﺻﺣﯾﺣﺔ وﺗﻌﯾد ‪ true‬إذا ﻛﺎﻧت ﺟﻣﯾﻊ ﻋﻧﺎﺻر اﻟﻣﺻﻔوﻓﺔ أﻋداد زوﺟﯾﺔ وﺗﻌﯾد ‪false‬‬
‫إذا ﻛﺎﻧت ﻏﯾر ذﻟك ؟‬
‫اﻟﺗﻣرﯾن اﻟراﺑﻊ واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻘراءة أﺳﻣﺎء ورواﺗب ‪ 10‬ﻣوظﻔﯾن وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺗﯾن ‪ ،‬ﺛم ﯾﻘوم ﺑطﺑﺎﻋﺔ اﺳم و راﺗب ﻛل‬
‫ﻣوظف ووﺿﻊ إﺷﺎرة )‪ (+‬ﺑﺟﺎﻧب اﻟراﺗب اذا ﻛﺎن أﻛﺑر ﻣن أو ﯾﺳﺎوي ﻣﻌدل اﻟرواﺗب وإﺷﺎرة )‪ (-‬إذا ﻛﺎن أﻗل ﻣن اﻟﻣﻌدل‬
‫وطﺑﺎﻋﺔ اﻟﻣﺟﻣوع اﻟﻛﻠﻲ ﻟﻠرواﺗب وﻣﻌدل اﻟرواﺗب ؟‬
‫اﻟﺗﻣرﯾن اﻟﺧﺎﻣس واﻟﺛﻼﺛﯾن‬
‫ﻣﺗطﻠﺑﺎت ﻛﺗﺎﺑﺔ اﻟﺑرﻧﺎﻣﺞ‪:‬‬ ‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﻟﺣﺳﺎب إﺟﻣﺎﻟﻲ اﻟﻣﺑﯾﻌﺎت ﻟﻌدد ﻣن ﻓروع ﺻﯾدﻟﯾﺔ "اﻟﻌﻠم اﻷﺧﺿر" وذﻟك ﺣﺳب اﻟﺷروط اﻟﺗﺎﻟﯾﺔ‪:‬‬

‫اﺳﺗﺧدم ﻣﺻﻔوﻓﺎت ﻟﺗﺧزﯾن ﻗﯾم ﻣﺑﯾﻌﺎت ﻛل ﻓرع‬ ‫اﻟﻔرع اﻷول‪ :‬ﯾﻘدم ﺧﺻم ﺑﻧﺳﺑﺔ ‪ %10‬ﻟﺟﻣﯾﻊ اﻟﻔواﺗﯾر اﻟﺗﻲ ﺗﺗﺟﺎوز ‪ 100‬﷼‬

‫اﻟﻔرع اﻟﺛﺎﻧﻲ‪ :‬ﻻ ﯾوﺟد ﺧﺻم ﻟﻛن ﯾﺗﺣﻣل اﻟﻔرع ﻗﯾﻣﺔ اﻟﺿرﯾﺑﺔ اﻟﻣﺿﺎﻓﺔ‬
‫اﺳﺗﺧدم ‪ switch‬ﻟﻼﺧﺗﯾﺎر ﺑﯾن اﻟﻔروع اﻟﻣﺧﺗﻠﻔﺔ‬
‫اﻟﻔرع اﻟﺛﺎﻟث‪ :‬ﯾﻘدم ﺧﺻم ‪ 50‬﷼ ﻟﺟﻣﯾﻊ اﻟﻔواﺗﯾر اﻟﺗﻲ ﺗﺗﺟﺎوز ‪ 500‬﷼‬
‫ﻗم ﺑﻛﺗﺎﺑﺔ ‪ method‬ﯾﺗم اﺳﺗدﻋﺎﺋﮭﺎ ﻓﻲ ﻛل ﻣرة‬
‫ﯾﺣﺗﺎج اﻟﺑرﻧﺎﻣﺞ اﺣﺗﺳﺎب ﻗﯾﻣﺔ اﻟﺿرﯾﺑﺔ اﻟﻣﺿﺎﻓﺔ‬ ‫ﻣﻣﯾزات اﻟﺑرﻧﺎﻣﺞ‪:‬‬

‫ﺗﻣﻛﯾن اﻟﻣﺳﺗﺧدم ﻣن ﺗﺣدﯾد ﻋدد اﻷﺻﻧﺎف اﻟﺗﻲ ﺗم‬ ‫ﯾﻣﻛن طﺑﺎﻋﺔ ﺟﻣﯾﻊ اﻟﻣﺑﯾﻌﺎت ﺑﺷﻛل ﻣﻔﺻل ﻟﻛل ﺻﻧف وﻟﻛل ﻋﻣﻠﯾﺔ ﺑﯾﻊ ﺑﻌد ﺗرﺗﯾب اﻟﻣﺑﯾﻌﺎت ﺑﺷﻛل ﺗﻧﺎزﻟﻲ‬
‫ﺷراﺋﮭﺎ )ﺑﺷرط أن ﺗﻛون أﻋﻠﻰ ﻣن اﻟﺻﻔر(‬ ‫ﺣﺳب اﻟﻘﯾﻣﺔ‬

‫طﺑﺎﻋﺔ إﺟﻣﺎﻟﻲ ﻣﺑﻠﻎ اﻟﻔﺎﺗورة ﻗﺑل وﺑﻌد اﻟﺧﺻم‬

‫طﺑﺎﻋﺔ ﻣﺑﻠﻎ اﻟﻔﺎﺗورة ﻗﺑل وﺑﻌد اﺣﺗﺳﺎب ﻗﯾﻣﺔ اﻟﺿرﯾﺑﺔ اﻟﻣﺿﺎﻓﺔ‬


‫ﺑﻌض اﻟطرق اﻟﺧﺎﺻﺔ ﺑﺎﻟﺳﻼﺳل اﻟرﻣزﯾﺔ‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎدس واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺈﺧﺗﺑﺎر ذاﻛرة اﻟﻣﺳﺗﺧدم وذﻟك ﺑﺗوﻟﯾد ‪ 5‬أرﻗﺎم ﻋﺷواﺋﯾﺔ ﻣن ‪ 100 - 1‬ﻣن ﺛم ﯾﻘوم اﻟﻣﺳﺗﺧدم ﺑﺈدﺧﺎل‬
‫اﻷرﻗﺎم ﺑﻧﻔس اﻟﺗرﺗﯾب وﻓﻲ ﺣﺎل أﺧطﺄ اﻟﻣﺳﺗﺧدم ﻓﻲ إدﺧﺎل أﺣد اﻷرﻗﺎم ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑﺈظﮭﺎر رﺳﺎﻟﺔ ﺧطﺄ واﻟﺧروج ﻣن‬
‫اﻟﺑرﻧﺎﻣﺞ ؟‬
‫اﻟﺗﻣرﯾن اﻟﺳﺎﺑﻊ واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ اﻻﺳم اﻷطول ﻣن ﻣﺻﻔوﻓﺔ اﻷﺳﻣﺎء )ﻣدﺧﻠﺔ ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم( وﻋدد ﺣروﻓﮫ ؟‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻣن واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻣﻘﺎرﻧﺔ ﻣﺻﻔوﻓﺎت ﻣن ﻧوع ‪ int‬وطﺑﺎﻋﺔ ﻧﺗﯾﺟﺔ اﻟﻣﻘﺎرﻧﺔ ؟‬
‫اﻟﺗﻣرﯾن اﻟﺗﺎﺳﻊ واﻟﺛﻼﺛﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑطﺑﺎﻋﺔ ﺛﺎﻧﻲ أﻛﺑر رﻗم ﻓﻲ ﻣﺻﻔوﻓﺔ ﻣن ﻧوع ‪ int‬ﻣدﺧﻠﺔ ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم ؟‬
‫اﻟﺗﻣرﯾن اﻷرﺑﻌﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺄﺧذ ‪ 10‬أرﻗﺎم ﻣن اﻟﻣﺳﺗﺧدم وﯾﻘوم ﺑﺗﺧزﯾﻧﮭم داﺧل ﻣﺻﻔوﻓﺔ وطﺑﺎﻋﺔ ﻣﺣﺗوى اﻟﻣﺻﻔوﻓﺔ ﻟﻛن ﺑﺷﻛل‬
‫ﻋﻛﺳﻲ؟‬
‫اﻟﺗﻣرﯾن اﻟواﺣد واﻷرﺑﻌﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﻣﻘﺎرﻧﺔ اﻷﻋداد اﻟﻣدﺧﻠﺔ ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم واﻟﻣﺧرﻧﺔ داﺧل ﻣﺻﻔوﻓﺔ ھل ھﻲ ﻣﺗﺳﺎوﯾﺔ أو ﻻ ؟‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻧﻲ واﻷرﺑﻌﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﯾﻘوم ﺑﺄﺧذ ﺗوارﯾﺦ ﻣﯾﻼد ﻋدد ﻣن اﻟﻣﺷﺗرﻛﯾن ﻣن ﺛم ﯾﻘوم ﺑﺗﺧزﯾن أﻋﻣﺎرھم ﻓﻲ ﻣﺻﻔوﻓﺔ وﺗرﺗﯾﺑﮭم ﺑﺷﻛل‬
‫ﺗﺻﺎﻋدي ؟‬
‫اﻟﺗﻣرﯾن اﻟﺛﺎﻟث واﻷرﺑﻌﯾن‬
‫أﻛﺗب ﺑرﻧﺎﻣﺞ ﻹدﺧﺎل ‪ 10‬أﻋداد وﺗﺧزﯾﻧﮭﺎ ﻓﻲ ﻣﺻﻔوﻓﺔ ﻣن ﻧوع ‪) double‬ﯾﺗم إدﺧﺎل اﻷﻋداد ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم( ﻣن ﺛم‬
‫ﯾﻘوم اﻟﺑرﻧﺎﻣﺞ ﺑﺎﻟﺗﺎﻟﻲ‪:‬‬

‫‪ -1‬طﺑﺎﻋﺔ ﻣﺟﻣوع اﻷﻋداد اﻟﻣدﺧﻠﺔ ﻣن ﻗﺑل اﻟﻣﺳﺗﺧدم؟‬

‫‪ -2‬طﺑﺎﻋﺔ ﻋدد اﻷﻋداد اﻟﺳﺎﻟﺑﺔ؟‬

‫‪ -3‬طﺑﺎﻋﺔ ﻋدد اﻷﻋداد اﻟﻔردﯾﺔ؟‬

‫‪ -4‬طﺑﺎﻋﺔ ﻋدد اﻷﻋداد اﻟزوﺟﯾﺔ‬

‫‪ -5‬طﺑﺎﻋﺔ ﻣﺗوﺳط اﻷﻋداد اﻟﻣدﺧﻠﺔ؟‬

You might also like