Se consideră doi vectori cu câte n și, respectiv, m componente numere întregi. Să se creeze un al treilea vector care va conține toate elementele prime a primului și celui de al doilea vector aranjate în ordine crescătoare.
program in C.
Răspunsuri la întrebare
Programul în C:
#include <stdio.h>
int main() {
int n, m;
int v1[1001], v2[1001], vprime[1001];
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%d", &v1[i]);
scanf("%d", &m);
for (int i = 0; i < m; i++)
scanf("%d", &v2[i]);
int nrprime = 0;
for (int i = 0; i < n; i++) {
int prim = 1;
for (int j = 2; j <= (v1[i] / 2); j++) {
if (v1[i] % j == 0) {
prim = 0;
}
}
if (prim == 1 && v1[i] > 1) {
vprime[nrprime] = v1[i];
nrprime++;
}
}
for (int i = 0; i < n; i++) {
int prim = 1;
for (int j = 2; j <= (v2[i] / 2); j++) {
if (v2[i] % j == 0) {
prim = 0;
}
}
if (prim == 1 && v2[i] > 1) {
vprime[nrprime] = v2[i];
nrprime++;
}
}
for (int i = 0; i < nrprime - 1; i++) {
for (int j = i; j < nrprime; j++) {
if (vprime[i] > vprime[j]) {
int aux = vprime[i];
vprime[i] = vprime[j];
vprime[j] = aux;
}
}
}
for (int i = 0; i < nrprime; i++) {
printf("%d ", vprime[i]);
}
return 0;
}