Răspuns :
Răspuns:
Problema 1
#include <stdio.h>
int main() {
int v[1001], n;
// Citeste numarul de elemente
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
// Citeste fiecare element al vectorului
scanf("%d", &v[i]);
}
// Afiseaza elementele de pe pozitii pare
for (int i = 1; i <= n; i++) {
if (i % 2 == 0) {
printf("%d ", v[i]);
}
}
printf("\n");
// Afiseaza elementele de pe pozitii impare, dar invers
for (int i = n; i >= 1; i--) {
if (i % 2 == 1) {
printf("%d ", v[i]);
}
}
printf("\n");
}
Problema 2:
#include <stdio.h>
#include <limits.h>
int main() {
int v[1001], n, mini = INT_MAX;
// Citeste numarul de elemente
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
// Citeste fiecare element al vectorului
scanf("%d", &v[i]);
}
// Afla elementul minim si retine-l in variabila mini
for (int i = 1; i <= n; i++) {
if (v[i] < mini) {
mini = v[i];
}
}
// Afiseaza valoarea minima
printf("%d\n", mini);
// Afiseaza pozitiile elementelor care sunt egale cu mini
for (int i = 1; i <= n; i++) {
if (v[i] == mini) {
printf("%d ", i);
}
}
printf("\n");
}
Problema 3:
#include <stdio.h>
#include <limits.h>
int oglindit(int x) {
int o = 0;
// Itereaza prin cifrele lui x, pornind de la ultima
while (x) {
int cifra = x % 10;
// Construieste oglinditul, atasand la final cifra curenta
o = o * 10 + cifra;
x /= 10;
}
return o;
}
int main() {
int n, x;
// Citeste numarul n
scanf("%d", &n);
// Treci prin toate valorile mai mari decat n
// Si opreste-te cand gasesti un palindrom
x = n + 1;
// Cat timp x nu e palindrom
while (oglindit(x) != x) {
// Treci la urmatorul
x++;
}
printf("%d", x);
}
Explicație:
La a treia problema am folosit o functie, pentru a-mi fi mai usor sa verific daca un numar e palindrom.
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Ne bucurăm dacă informațiile oferite v-au fost de folos. Pentru întrebări sau asistență suplimentară, nu ezitați să ne contactați. Revenirea dumneavoastră ne onorează – adăugați-ne la favorite pentru a fi mereu la curent!