Se citește un șir de numere întregi pana cand se introduce de doua ori consecutiv aceeași valoare. Sa se afișeze câte pătrate perfecte sunt in șir.
Ex: 13 9 56 400 8 17 25 25
Conține 4 pătrate perfecte (9, 400, 25, 25)
.
Am încercat ceva dar nu imi da bine cand o verific. Cred ca am greșit cand l-am copiat pe n in m, sau la condiția de la while.
Anexe:
stassahul:
Iti trebuie neaparat prin void sa o faci?
Răspunsuri la întrebare
Răspuns de
2
Trebuie m=n, sa pui in while si tias recomanda daca scrii cout dupa un void, mai bine coutu sal scrii in void, sau mai bine sa nu folosesti de loc void.
#include <bits/stdc++.h>
using namespace std;
int n,m=1000000000,nr;
void pp(int n, int nr)
{
nr=0;
cin >> n;
while(m!=n)
{
m=n;
if(int(sqrt(m))==sqrt(m))
nr++;
cin >> n;
}
cout << nr;
}
int main()
{
pp(n,nr);
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int n,m=1000000000,nr;
void pp(int n, int nr)
{
nr=0;
cin >> n;
while(m!=n)
{
m=n;
if(int(sqrt(m))==sqrt(m))
nr++;
cin >> n;
}
cout << nr;
}
int main()
{
pp(n,nr);
return 0;
}
using namespace std;
int n,m=1000000000,nr;
void pp(int n, int nr)
{
nr=0;
cin >> n;
while(m!=n)
{
m=n;
if(int(sqrt(m))==sqrt(m))
nr++;
cin >> n;
}
if(int(sqrt(m))==sqrt(m))
nr++;
cout << nr;
}
int main()
{
pp(n,nr);
return 0;
}
using namespace std;
int n,m=1000000000,nr;
void pp(int n, int nr)
{
nr=0;
cin >> n;
while(m!=n)
{
m=n;
if(int(sqrt(m))==sqrt(m))
nr++;
cin >> n;
}
if(int(sqrt(n))==sqrt(n))
nr++;
cout << nr;
}
int main()
{
pp(n,nr);
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Fizică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă