fork(10) download
  1. /*********************************************************
  2. Creator: Nishant Kumar
  3. Date : 8/1/2014
  4. Problem: SPOJ Prime Number Generator between given range.
  5. **********************************************************/
  6. #include <iostream>
  7. #include <math.h>
  8. using namespace std;
  9. int generatePrime(int, int);
  10. int main(){
  11.  
  12. int testCase,*arrayTestCase, index = 0, testCaseLen = 0;
  13.  
  14. // Keep test cases
  15. cin >> testCase;
  16.  
  17. if(testCase && testCase <= 10){
  18. // Allocate memory for keep number of testCases
  19. arrayTestCase = new int[testCase*2];
  20. testCaseLen = testCase;
  21.  
  22. // Store all range in array
  23. while(testCaseLen){
  24. cin >> arrayTestCase[index] >> arrayTestCase[index+1];
  25. index += 2;
  26. --testCaseLen;
  27. }
  28.  
  29. testCaseLen = testCase;
  30. index = 0;
  31. while(testCaseLen){
  32. generatePrime(arrayTestCase[index], arrayTestCase[index+1]);
  33. cout << "\n";
  34. index = index+2;
  35. --testCaseLen;
  36. }
  37.  
  38. }else{
  39. cout << "Test case should be lesser then 10.";
  40. }
  41. return 0;
  42. }
  43.  
  44. // List of prime number between given range
  45. int generatePrime(int start, int end){
  46. long int diviser, *rangeList;
  47. int count;
  48. if(start <= end){
  49. while(start <= end){
  50. count = 0;
  51. if((start != 2 && start%2 == 0 )|| (start != 3 && start%3 == 0) || (start!= 5 && start%5 == 0 )|| (start != 7 && start%7 == 0) ){
  52. count = 1;
  53. }
  54. if(!count && start != 1){
  55. cout << start << "\n";
  56. }
  57. start++;
  58. }
  59. }
  60. return 0;
  61. }
  62.  
  63.  
Success #stdin #stdout 0s 2820KB
stdin
1
3 11
stdout
3
5
7
11