Sa se afişeze primele n perechi de numere prime care sunt consecutive în multimea numerelor impare.
Analiza Programului
Iteram prim multimea numerelor impare pana gasim doua numere consecutive care sunt prime. Facem acest lucru pentru numarul de perechi dorite.
Rezolvarea in C#
using System; namespace _19 { class Program { static bool CheckPrimeNumber(int number) { //presupunem ca un numar este prim bool prime = true; //contor int i = 2; //verifica daca numarul este divizibil cu numerele cuprinse intre 2 si jumatatea lui while (i <= number / 2) { //daca are divizor if (number % i == 0) prime = false; i += 1; } return prime; } static void Main(string[] args) { //un contor pentru a nu depasi numarul de perechi int counter = 0; //un indice pentru parcurgerea multumii numerelor pare int i = 3; Console.Write("Numarul de perechi: "); //numarul de perechi int number = int.Parse(Console.ReadLine()); //cat timp nu am gasit numarul de perechi dorite while (counter < number) { //verificam daca doua numere consecutive impare sunt prime if(CheckPrimeNumber(i) && CheckPrimeNumber(i+2)) { Console.WriteLine(" {0} {1}", i, i+2); counter++; } i += 2; } Console.Read(); } } }
Rezolvarea in C++
//the header conio, which include library functions for performing "console input and output" #include <conio.h> //the header iostream, which supports the C++ I/O system #include <iostream> //tells the compiler to use the std namespace using namespace std; bool CheckPrimeNumber(int number) { //assume the number is prime bool prime = true; //counter int i = 2; //check while(i <= number/2) { if(number % i == 0) prime = false; i += 1; } return prime; } //begin program execution int main() { int number; int counter = 0; cout<<"Introduceti numarul de perechi:"; cin>>number; for(int i = 3; ; i + 2) { if(counter < number) { if(CheckPrimeNumber(i) && CheckPrimeNumber(i+2)) { cout<<i<<" "<<i+2<<endl; counter++; } i += 2; } else break; } return 0; }
Category: Uncategorized