👤

C++: Se citeste de la tastatura un vector cu n (1<=n<=100)componente de tip intreg. Se cere sa se construiasca si sa se afiseze un nou vector cu componentele patrate perfecte din vectorul initial.
 exemplu: Daca vectorul initial este (2,4,8,25,3,66) al doilea vector va fi (4,25)



Răspuns :

Va trebui să creăm o subrutină care verifică dacă e pătrat perfect un număr. Ne vom folosi de niște „chichițe” ale sistemului cu întregi.
#include <iostream>
#include <cmath>
using namespace std;
int perfsqr(int n)
{int m;
m=sqrt(n);
m=m*m;
if(m==n) return 1; else return 0;
}
int main()
{
int n, i, j=0;
int v1[100], v2[100];
cin>>n;
for(i=0; i<n; i++)cin>>v1[i];
for(i=0; i<n; i++) if( perfsqr( v1[i] ) )
{v2[j] = v1[i];
j++;}
for(i=0; i<j; i++) cout<<v2[i]<<" "; //j conține nr. efectiv de elemente din v2
return 0;
}
Am scris numerele separate de spațiu (dacă vrei paranteze sau altceva, inserezi cout<< cu ce vrei unde e nevoie)
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de ajutor, nu ezitați să ne contactați. Vă așteptăm cu drag data viitoare și vă încurajăm să ne salvați în lista de favorite!


Ze Questions: Alte intrebari