Informatică, întrebare adresată de Myself7, 8 ani în urmă

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! Ajutor!


Myself7: in c++

Răspunsuri la întrebare

Răspuns de Mghetes
1

Răspuns:

n=3

v[0]=25

v[1]=6

v[2]=16

Patratele perfecte sunt:25 16

Explicație:

#include <iostream>

#include <cmath>

using namespace std;

int main() {

 int v[100], p[100], n, i, m;

cout <<"n=";

cin >> n;

 

for(i = 0; i < n; i ++)

{

  cout<<"v["<<i<<"]=";

  cin>>v[i];

}

 

m = 0;

for(i = 0; i < n; i ++)

 if((int)sqrt(v[i]) == sqrt(v[i]))

 {

     p[m] = v[i];

     m++;

 }

 

 

cout<<endl<<"Patratele perfecte sunt:";

for(i = 0; i< m; i++)

   cout<<p[i] << " ";

 return 0;

 

}


Mghetes: nu stiu la ce nivel esti, dar se poate face intr-un singur for, citire, constuire pp si afisare
Myself7: Multumesc!
Mghetes: adica citirea si construirea noulei vector intr-un for si afisarea in alt for
Myself7: In codeblocks nu imi afiseaza ceea ce voia problema. Datele de intrare erau n=6 si vectorul (2,4,8,25,3,66) si trebuia sa mi afiseze cel de al doilea vector adica (4,25)
Mghetes: aa, am inteles eu gresit cerinta, modific imediar
Mghetes: eu am afisar p.p ale numerelor citite
Myself7: Multumesc
Myself7: Dada am vazut
Mghetes: am pus alta rezolvare
Myself7: Mersi
Alte întrebări interesante