ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
Week 9 Assignment
1. Write a pseudocode to print out the Prime factors of
any integer number? Convert the pseudocode into a
C++ or a Java program?
Pseudocode
START
Input number
Set divisor to 2
WHILE number > 1
IF number MOD divisor == 0 THEN
PRINT divisor
number = number / divisor
ELSE
Increment divisor by 1
ENDIF
ENDWHILE
END
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
#include <iostream>
using namespace std;
int main() {
int number;
cout << "Enter an integer number: ";
cin >> number;
cout << "Prime factors are: ";
int divisor = 2;
while (number > 1) {
if (number % divisor == 0) {
cout << divisor << " ";
number = number / divisor;
} else {
divisor++;
}
}
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
cout << endl;
return 0;
}
2. Write a pseudocode to read (N) integer numbers.
Then the pseudocode must find out the maximum
number in these entered integers?
Pseudocode:
START
Input N
Initialize max to a very small number
FOR i = 1 to N
Input number
IF number > max THEN
Set max = number
ENDIF
ENDFOR
PRINT max
END
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
C++ Code:
#include <iostream>
using namespace std;
int main() {
int N, number, maxNumber;
cout << "Enter how many numbers (N): ";
cin >> N;
cout << "Enter number 1: ";
cin >> number;
maxNumber = number; // initialize max with first
number
for (int i = 2; i <= N; ++i) {
cout << "Enter number " << i << ": ";
cin >> number;
if (number > maxNumber) {
maxNumber = number;
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
}
}
cout << "Maximum number entered: " << maxNumber <<
endl;
return 0;
}
3. Develop the previous pseudocode to find the
maximum odd number among entered values
Pseudocode:
START
Input N
Initialize maxOdd to a very small negative number
FOR i = 1 to N
Input number
IF number is odd THEN
IF number > maxOdd THEN
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
Set maxOdd = number
ENDIF
ENDIF
ENDFOR
IF maxOdd is still very small THEN
PRINT "No odd number entered"
ELSE
PRINT maxOdd
ENDIF
END
C++ Code:
#include <iostream>
#include <climits> // for INT_MIN
using namespace std;
int main() {
int N, number, maxOdd = INT_MIN;
cout << "Enter how many numbers (N): ";
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
cin >> N;
for (int i = 1; i <= N; ++i) {
cout << "Enter number " << i << ": ";
cin >> number;
if (number % 2 != 0) { // check if odd
if (number > maxOdd) {
maxOdd = number;
}
}
}
if (maxOdd == INT_MIN) {
cout << "No odd number was entered." << endl;
} else {
cout << "Maximum odd number entered: " << maxOdd
<< endl;
}
return 0;
ﺟ ﺎ ﻣﻌ ﺔ ﺗ ﺒ ﻮ ك
ﻋﻤﺎدة اﻟﺘﻌﻠﻢ اﻹﻟﻜﺘﺮوﻧﻲ واﻟﺘﻌﻠﻴﻢ ﻋﻦ ﺑﻌﺪ
}