Respuesta :
Answer:
1) its because we managed to divide the answer so it is not a prime number.
2)
Code:
#include <stdio.h>
int main()
{
int i, j, n, isPrime; // isPrime is used as flag variable
/* Input upper limit to print prime */
printf("Enter your n : ");
scanf("%d", &n);
printf("Prime numbers from 1 to %d:\n", n);
/* Find all Prime numbers between 1 to n */
for(i=2; i<=n; i++)
{
/* Assume that the current number is Prime */
isPrime = 1;
/* Check if the current number i is prime or not */
for(j=2; j<=i/2; j++)
{
/*
* If i is divisible by any number other than 1 and self
* then it is not prime number
*/
if(i%j==0)
{
isPrime = 0;
break;
}
}
/* If the number is prime then print */
if(isPrime==1)
{
printf("%d,\n ", i);
}
}
return 0;
}
Answer:
I am writing a Python program.
N = int(input("Enter a number: ")) # prompts user to enter a number
if N > 1: #if the input number is greater than 1
for k in range(2,N): # loop starts which iterates from 2 to input number
if (N % k) == 0: # if input number is divisible by value in k
print(N,"is not a Prime Number") #displays input no. is not prime
break #terminates the loop
else: # if input numbers is not divisible by any value in k
print(N,"is a Prime Number") # displays that input number is prime
else: # if the input number is less than or equal to 1
print(N,"is not greater than 1 and is not a prime number")
Explanation:
Lets take a value of N to understand the above program.
Suppose the user enters the value 5.
This value is stored in N variable.
If condition checks if the value entered by the user is greater than 1. This condition evaluates to true because 5>1
So the program flow enters the loop. The loop has a range() function is used for the iteration purpose in the loop. It will iterate generating the numbers in the given range which means starting from 2 and ending at N (5 here).
If condition in the loop checks if the input number N which is 5 is completely divisible by any number in the given range i.e. from 2 until it reaches N. Mod operator % is used here because if the N is divisible by any number in the range then its remainder will be 0. If this condition evaluates to true this means that N is not a prime number as the prime number is only divisible by 1 and itself. So if this condition is true then the line 5 is not a Prime Number is displayed in the output.
At every iteration the mod of number 5 and each number in the given range is computed and is checked if the result is 0 e.g 5%2 = 1 , 5%3 = 2, 5%4 = 1 and none of the result is equal to 0 so this means 5 is a prime number.
If the condition evaluates to False this means that the number N is prime as it is not divisible by any number in the given range. So the line 5 is a Prime Number is printed on the screen as output.
The last else part is executed when the first outer if condition evaluates to false which means if N is less than 1 and this line 5 is not greater than 1 and is not a prime number is printed as result.

