Se citeste de la tastatura un sir X cu N (n≤20) numere naturale de maxim 3 cifre . Sa se afiseze :
1) Minimul dintre elementele de pe pozitii impare si maximul dintre elementele de pe pozitii pare
2) Elementul cu numar minim de divizori si elementul cu numar maxim de divizori. In C++
Răspunsuri la întrebare
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n, x, i, j, min = 1000, max = 0, min_div = 1000, max_div = 0, count;
cin >> n;
for(i = 0; i < n; i++)
{
cin >> x; //se citeste fiecare numar
if((i + 1) % 2 == 0) // se verifica daca numarul este pe pozitie para sau impara
{
if(x > max)
{
max = x;
}
}
else
{
if(x < min)
{
min = x;
}
}
count = 1;
for(j = 1;j <= x / 2; j++) // se calculeaza numarul de diviziori ai fiecarui numar in variabila count
{
if(x % j == 0)
{
count++;
}
}
if(count > max_div) // se verifica daca numarul de divizori este mai mare sau mai mic decat max_div, respectiv min_div
{
max_div = count;
}
if(count < min_div)
{
min_div = count;
}
}
cout << min << ' ' << max << ' ' << min_div << ' ' << max_div; // se afiseaza cerinta in ordine
return 0;
}