Răspuns :
Explicație:
#include <iostream>
using namespace std;
int main()
{
int n;
cout<<"n este ";
cin>>n;
int componenta[100];
for(int i=1; i<=n; i++)
{
cout<<"componenta "<<i<<" este ";
cin>>componenta[i];
}
int x, cifra;
int k;
for(int i=1; i<=n;i++)
{
x=componenta[i];
k=0;
while(x!=0)
{
cifra=x%10;
k++;
x=x/10;
}
if(k==4)
cout<<componenta[i]<<" ";
}
return 0;
}
Un numar are 4 cifre daca el se gaseste intre 1000 si 9999.
Daca numarul este negativ, il schimbam semnul, apoi ii aplicam aceeasi regula de validare.
Am facut o functie separata ce verifica daca sint 4 cifre sau nu.
#include <iostream>
using namespace std;
bool are4Cifre(int value);
int main() {
int n;
cout << "Numarul de elemente de citit: n = ";
cin >> n;
cout << "Specificati elementele: " << endl;
int elemente[n + 1];
for (int i = 1; i <= n; i++) {
cin >> elemente[i];
}
for (int i = 1; i <= n; i++) {
if (are4Cifre(elemente[i])) {
cout << elemente[i] << endl;
}
}
return 0;
}
/**
* Verifica daca paramterul de intrare are 4 cifre
*/
bool are4Cifre(int value) {
if (value < 0) {
value = -value;
}
return value >= 1000 && value <= 9999;
}