From 5b9ce7f4faf1d8d05c42975da9dc903aeecc297c Mon Sep 17 00:00:00 2001 From: Justsvetoslavov Date: Thu, 11 Nov 2021 18:32:34 +0200 Subject: Edit Order --- pract_SI/Pract. 04/Solutions/task14.cpp | 96 --------------------------- pract_SI/Pract. 04/Solutions_10-14/task14.cpp | 96 +++++++++++++++++++++++++++ 2 files changed, 96 insertions(+), 96 deletions(-) delete mode 100644 pract_SI/Pract. 04/Solutions/task14.cpp create mode 100644 pract_SI/Pract. 04/Solutions_10-14/task14.cpp diff --git a/pract_SI/Pract. 04/Solutions/task14.cpp b/pract_SI/Pract. 04/Solutions/task14.cpp deleted file mode 100644 index c95c36c..0000000 --- a/pract_SI/Pract. 04/Solutions/task14.cpp +++ /dev/null @@ -1,96 +0,0 @@ -#include -#include - -using namespace std; - -//Function to check whether a number is prime -bool isPrime(int number) -{ - int size = sqrt(number); - - - for (int i = 2; i <= size; i++) - { - if (number % i == 0) - return false; - } - - return true; -} - -//Print all prime numbers that are smaller than N -void printAllPrimeToNumber(int number) //Interval [1 ; N] -{ - std::cout << "1" << ", 2"; - - for (int i = 3; i <= number; i += 2) - { - if (isPrime(i)) - std::cout << ", " << i; - } - - std::cout << "." << std::endl; -} - -//PrimeFactorization -void PrimeFactor(int number) -{ - for (int i = 2; i <= number; i++) - { - if (isPrime(i) && number % i == 0) - { - if (i == number) //last step, no space - std::cout << i; - else - std::cout << i << " "; - - number /= i; - i--; - } - } - std::cout << std::endl; -} - -//Function whether the number N can be expressed as a sum of two prime numbers -bool checkSumOfTwoPrimes(int number,int &primeOfNumber) -{ - int size = number / 2; //36 = 7 + 29, 16 = 3 + 13 , 36 = 5 + 31 - for (int i = 2;i <= size; i++) - { - //16 = 3 + x , x = 16 - 3 , x = 13 PRIME - if (isPrime(i) && isPrime(number - i)) - { - primeOfNumber = i; - return true; - } - } - return false; -} - -int main() -{ - int number; - std::cin >> number; - - if (isPrime(number)) - std::cout << number << " is prime!" << std::endl; - else - std::cout << number << " is composite number!" << std::endl; - - std::cout << std::endl << "Prime numbers up to " << number << " are: "; - printAllPrimeToNumber(number); - - std::cout << "Factoring of: " << number << " is: "; - PrimeFactor(number); - - int primeOfNumber; - if (checkSumOfTwoPrimes(number, primeOfNumber)) - std::cout << primeOfNumber << " + " << number - primeOfNumber << std::endl; - else - std::cout << "Error!" << std::endl; - - - - - return 0; -} diff --git a/pract_SI/Pract. 04/Solutions_10-14/task14.cpp b/pract_SI/Pract. 04/Solutions_10-14/task14.cpp new file mode 100644 index 0000000..c95c36c --- /dev/null +++ b/pract_SI/Pract. 04/Solutions_10-14/task14.cpp @@ -0,0 +1,96 @@ +#include +#include + +using namespace std; + +//Function to check whether a number is prime +bool isPrime(int number) +{ + int size = sqrt(number); + + + for (int i = 2; i <= size; i++) + { + if (number % i == 0) + return false; + } + + return true; +} + +//Print all prime numbers that are smaller than N +void printAllPrimeToNumber(int number) //Interval [1 ; N] +{ + std::cout << "1" << ", 2"; + + for (int i = 3; i <= number; i += 2) + { + if (isPrime(i)) + std::cout << ", " << i; + } + + std::cout << "." << std::endl; +} + +//PrimeFactorization +void PrimeFactor(int number) +{ + for (int i = 2; i <= number; i++) + { + if (isPrime(i) && number % i == 0) + { + if (i == number) //last step, no space + std::cout << i; + else + std::cout << i << " "; + + number /= i; + i--; + } + } + std::cout << std::endl; +} + +//Function whether the number N can be expressed as a sum of two prime numbers +bool checkSumOfTwoPrimes(int number,int &primeOfNumber) +{ + int size = number / 2; //36 = 7 + 29, 16 = 3 + 13 , 36 = 5 + 31 + for (int i = 2;i <= size; i++) + { + //16 = 3 + x , x = 16 - 3 , x = 13 PRIME + if (isPrime(i) && isPrime(number - i)) + { + primeOfNumber = i; + return true; + } + } + return false; +} + +int main() +{ + int number; + std::cin >> number; + + if (isPrime(number)) + std::cout << number << " is prime!" << std::endl; + else + std::cout << number << " is composite number!" << std::endl; + + std::cout << std::endl << "Prime numbers up to " << number << " are: "; + printAllPrimeToNumber(number); + + std::cout << "Factoring of: " << number << " is: "; + PrimeFactor(number); + + int primeOfNumber; + if (checkSumOfTwoPrimes(number, primeOfNumber)) + std::cout << primeOfNumber << " + " << number - primeOfNumber << std::endl; + else + std::cout << "Error!" << std::endl; + + + + + return 0; +} -- cgit v1.3.1-23-gd82d