Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

So please note that Use only pointer offset notation to perform this task. pleas

ID: 3603814 • Letter: S

Question

So please note that Use only pointer offset notation to perform this task.

please do not use extra headers

just this one #include

in C languge please

#include

int main(){

int array[1000],i,subscrpt=2,j;

int *ptr = array;

*(ptr+0) = 0;*(ptr+1) = 0;

for(i=2;i<1000;i++)

*(ptr+i) = 1;

for(j=0;j<10;j++){

for(i=3;i<1000;i++){

if((i+1) % subscrpt == 0 && (i+1) != subscrpt){

*(ptr+i+1) = 0;

}

}

subscrpt++;

}

for(i=0;i<1000;i++){

if(*(ptr+i) == 1)

printf(" %d",i);

}

printf(" ");

return 0;

}

1. The Sieve of Eratosthenes: A prime integer is any integer that can be divided evenly only by itself and 1. The Sieve of Eratosthenes is a method of finding prime numbers. It works as follows: a) Create an array with all elements initialized to 1 (true). Array elements with prime subscripts will remain 1. All other array elements will eventually be set to zero b) Starting with array subscript 2, every time an array element is found whose value is 1, loop throug the remainder of the array and set to zero every element whose subscript is a multiple of the subscript for the element with value 1. For array subscript 2, all elements beyond 2 in the array that are multiples of 2 will be set to zero (subscripts 4, 6, 8, 10, etc.). For array subscript 3, all elements beyond 3 in the array that are multiples of 3 will be set to zero (subscripts 6, 9, 12, 15, etc.) When this process is complete, the array elements that are still set to one indicate that the subscript is a prime number. These subscripts can then be printed. Write a program that uses an array of 1000 elements to determine and print the prime numbers between 1 and 999. Ignore elements 0 and 1 of the array. Determine the prime numbers using functions and print the resulting array in the main program. Note: Use only pointer offset notation to perform this task.

Explanation / Answer

#include

int main(){

int array[1000],i,subscrpt=2,j;

int *ptr = array;

*(ptr+0) = 0;*(ptr+1) = 0;

for(i=2;i<1000;i++)

*(ptr+i) = 1;

for(j=0;j<10;j++){

for(i=3;i<1000;i++){

if((i+1) % subscrpt == 0 && (i+1) != subscrpt){

*(ptr+i+1) = 0;

}

}

subscrpt++;

}

for(i=0;i<1000;i++){

if(*(ptr+i) == 1)

printf(" %d",i);

}

printf(" ");

return 0;

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote