Răspuns :
Răspuns:
#include <iostream>
using std::cout, std::cin, std::endl;
// Funcția verifică dacă numărul primit ca și parametru este sau nu număr prim
static bool esteNumarPrim(const int& numarInitial) {
// Dacă numărul este 1 sau 0 => false (nu este număr prim)
if (numarInitial == 0 || numarInitial == 1) return false;
// Dacă se împarte la un alt număr înafară de 1 și el însuși înseamnă că numărul nu este prim și returnăm false
for (int i = 2; i <= numarInitial / 2; ++i)
if (numarInitial % i == 0) return false;
// Altfel înseamnă că avem un număr prim și returnăm true
return true;
}
static void primulExercitiu() {
int primulNumar, alDoileaNumar;
cout << "Introdu cele doua numere (de ex. 10 5) >> ";
// Citim cele două numere
cin >> primulNumar >> alDoileaNumar;
// Dacă ambele numere sunt prime afișăm „DA” altfel afișăm „NU”
esteNumarPrim(primulNumar) && esteNumarPrim(alDoileaNumar)
? cout << "DA" << endl
: cout << "NU" << endl;
}
// Funcția verifică dacă numărul primit ca și parametru este palindrom
static bool estePalindrom(int numarInitial) {
// salvăm o copie la numărul principal
int copieNumar = numarInitial, ultimaCifra, numarInversat = 0;
do {
// luăm ultima cifră
ultimaCifra = numarInitial % 10;
// și o adăugăm la numărul inversat ș.a.m.d.
numarInversat = (numarInversat * 10) + ultimaCifra;
numarInitial /= 10;
} while (numarInitial != 0);
// și dacă copia numărului principal este egală cu numărul inversat înseamnă că avem palindrom, altfel funcția returneză false
return copieNumar == numarInversat;
}
static void alDoileaExercitiu() {
int numarCitit;
cout << "Introdu un numar pentru a verifica daca este palindrom impar >> ";
// citim numărul
cin >> numarCitit;
// dacă este palindrom și palindromul este impar afișăm „DA”, altfel afișăm „NU”
estePalindrom(numarCitit) && numarCitit % 2 != 0 ? cout << "DA" << endl
: cout << "NU" << endl;
}
int main() {
// 1. Scrieți un program C++ care citește de la tastatură două numere naturale și verifică (afișând mesaj DA sau NU) dacă ambele numere sunt prime sau nu.
primulExercitiu();
// 2. Scrieți un program C++ care citește de la tastatură un număr natural și verifică (afișând mesaj DA sau NU) dacă numărul este sau nu număr palindrom impar
alDoileaExercitiu();
return 0;
}
Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, vă rugăm să ne contactați. Revenirea dumneavoastră ne va bucura, iar pentru acces rapid, nu uitați să ne salvați la favorite!