

Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
#include <iostream>
#include <math.h>
#define ll long long
using namespace std;
bool cp(ll n) {
return sqrt(n)==round(sqrt(n));
}
bool nt(ll n) {
for (ll i=2; i<=sqrt(n); i++) if (n%i==0) return false;
return n>=2;
}
int main() {
freopen("BAUOC.INP","r",stdin);
freopen("BAUOC.OUT","w",stdout);
ll n,d=0;
cin >> n;
while (n>0) {
if (cp(n) && nt(sqrt(n))) {
d++;
}
n--;
}
cout << d;
}
Hãy giúp mọi người biết câu trả lời này thế nào?

/******************************
* @#author : DyIuWhite *
* @#date : oo / oo / oo *
*******************************/
#include<bits/stdc++.h>
#define foru(i,a,b) for( i=a;i<=b;i++)
#define N 1000001
#define taskname "SSTRING"
using namespace std;
const int DM=1e9+9;
bool snt[N];
long long i,j,d,v,n;
int main()
{
if (fopen(taskname".inp", "r"))
{
freopen(taskname".inp", "r", stdin);
freopen(taskname".out", "w", stdout);
}
for(i=2; i<=N; i++)
snt[i]=1;
snt[1]=0;
for(i=2; i<=sqrt(N); i++)
if(snt[i]==1)
for(j=2*i; j<=N; j=j+i)
snt[j]=0;
cin>>n;
d=0;
v=sqrt(n);
for(i=2;i<=v;i++)
if(snt[i]==1)
d++;
cout<<d;
return 0;
}
/*
*/
Hãy giúp mọi người biết câu trả lời này thế nào?
Bảng tin
17
955
6
giải giùm mik bằng pascal được không b
4332
2921
1960
đợi tý nhé
17
955
6
cảm ơn b
4332
2921
1960
bạn ơi, bạn đọc doe c++ có hiểu không vậy
4332
2921
1960
m vừa chuyển code sang pas nhưng vì lâu không ôn nên không làm được
17
955
6
thế th cảm ơn b nhìu