Bildirim
şu algoritmanın neresi yanlış
Daha Fazla
Bu Konudaki Kullanıcılar:
Daha Az
2 Misafir - 2 Masaüstü
Giriş
Mesaj
-
-
fark ettim sanırım bi dakka -
fark ettim sanıp kod üzerinde tamamen emin olarak şu şekilde düzelttim yine olmadı
#include <iostream>
using namespace std;
int main(){
int n,s,k,p,j,ks,ksd;
float b1,b2;
cout << "n: "; cin >> n;
for(p=2;p<=n;p++){
for(j=1;j<=p;j++){
if(p%j==0){
b1=n/p;
if(b1-int(b1)==0){
b2=n/(p*p);
if(b2-int(b2)==0){
ks=n;
}
}
}
}
}
cout << ks << " bir kuvvetli sayidir";
}
< Bu mesaj bu kişi tarafından değiştirildi co2ov -- 3 Nisan 2014; 0:27:11 >
-
#include <iostream>
#include <math.h>
using namespace std;
bool asalMi(int a)
{
if (a == 2)
return 1;
if (a < 1)
return 0;
for (int i = 2; i < (sqrt(a) + 1); i++)
{
if (a%i == 0)
return 0;
}
return 1;
}
int _tmain(int argc, _TCHAR* argv[])
{
bool bolen = 1;
int n;
cin >> n;
for (int p = 2; p < ((n / 2) + 1); p++)
{
if (asalMi(p))
{
if (n%p == 0 && n % (p*p) != 0)
bolen = 0;
}
}
if (bolen == 0)
{
cout << n << " kuvvetli bir sayi degildir.";
}else{
cout << n << " kuvvetli bir sayidir";
}
}
bunda sıkıntı yok sanırım. muhtemelen BÜTÜN asal sayılar için bakmadınız. Tek bir asal sayıya baktınız. Mesela 99, 3^2 * 11. 3 ve 3'ün karesine tam bölünüyor ama 11'in karesine tam bölünmüyor bu yüzden şartı sağlamıyor.
Sayfa:
1
Ip işlemleri
Bu mesaj IP'si ile atılan mesajları ara Bu kullanıcının son IP'si ile atılan mesajları ara Bu mesaj IP'si ile kullanıcı ara Bu kullanıcının son IP'si ile kullanıcı ara
KAPAT X
Bu mesaj IP'si ile atılan mesajları ara Bu kullanıcının son IP'si ile atılan mesajları ara Bu mesaj IP'si ile kullanıcı ara Bu kullanıcının son IP'si ile kullanıcı ara
KAPAT X