In: Computer Science
1.Divisors
flow chart using modulo operator (%) to print out all
the divisors of a user entered number. Your program should prompt
the user to enter a positive number or 0 to end. Using a loop
variable that starts at 1, your program should print out all the
divisors of the entered number plus the number of printed divisors
and their sum.
For example:
This program identifies and displays divisors of a given
number.
Developed as an IPC144 project.
Enter a positive number. Enter 0 to end: 15
1 3 5 15
4 divisors
sum of divisors: 24
Enter a positive number. Enter 0 to end: 36
1 2 3 4 6 9 12 18 36
9 divisors
sum of divisors: 91
Enter a positive number. Enter 0 to end: 43
1 43
2 divisors
sum of divisors: 44
Enter a positive number. Enter 0 to end: 0
Thanks and bye!
Divisor counter
Using what you did in part 1,to develop a function
called
unsigned divisorCount (unsingned num)
That gets an integer number as an input parameter and
returns the number of divisors of that number. For example, if you
send 15 to the function, it will return 4 as 15 has 4 divisors: 1,
3, 5, 15
The function will return 2 for 17 because 17 only has two
divisors
3.Prime number
Using the function you developed in part 2, write
a
int isPrime(unsigned num)
That gets a number as a paremeter and returns 1 if the number is prome and returns 0 if the number is not prome.
Use this function to write a code that gets a number from the user and prints all the prime numbers smaller and equal to that number
A sample run of your code should look like:
Please enter a positive integer number (0 to end): 12 Primes before 12 are: 2 3 5 7 11
5 Prime numbers smaller than 12
Please enter a positive integer number (0 to end): 7 Factors of 7 are: 2 3 5 7
4 prime numbers smaller than 7
Please enter a positive integer number (0 to end): 0
Thanks and have a good day!
Hint: This question is divide to three-part each of the parts is individual and the answer for each of the part will need to link together with a flowchart and c code
Flow chart to find divisors :
C function to find divisors count:
unsigned int divisorCount(unsigned int n){
int count = 0;
for(undigned int i = 1; i<=n; i++){
if(n%i==0)
count += 1;
}
return count
}
function for prime number check:
int isPrime(unsigned int n){
if(divisorCount(n)>2)
return 0;
return 1;
}
complete program that prints prime number less than n:
#include <stdio.h>
unsigned int divisorCount(unsigned int n){
int count = 0;
for(unsigned int i = 1; i<=n; i++){
if(n%i==0)
count += 1;
}
return count;
}
int isPrime(unsigned int n){
if(divisorCount(n)>2)
return 0;
return 1;
}
int main(){
unsigned int n;
int count;
printf("Please enter a positive integer number(0 to end: ");
scanf("%u",&n);
while(n!=0){
count = 0;
printf("Prime number before %u are", n);
for(int i =2;i<=n;i++){
if(isPrime(i)){
printf("%d ", i);
count++;
}
}
printf("\n%d prime numbers smaller than %u\n", count, n);
printf("Please enter a positive integer number(0 to end: ");
scanf("%u",&n);
}
}
output: