if(!(i%j)) bu ifadenin anlamı nedir
i%j ? ne işlem yapıyor yardımcı olabilecek arkadaş varmı
Dev c++ % nedir ?
9
●4.635
- 22-12-2012, 14:33:28i'nin j'ye bölümünden kalanı verir.
a%b ifadesi a'nın b'ye bölümünden kalanını verir.
mesela 5%2 = 1 başındaki ! işareti ise mantıksal değil ifadesidir. - 22-12-2012, 15:01:54#include <stdio.h>
#include <conio.h>
#include <math.h>
int karekok,i,j,tamam,sayı=0;
main()
{
for(i=2;i<=100;i++)
{
karekok=sqrt(i);
tamam=0;
for(j=2;j<=karekok;j++)
{
if(!(i%j))
{
tamam=1;
break;
}
}
if(!(tamam))
{
printf("%d\t",i);
sayı++
}
}
printf("\n\n\n\n\n [1-100] arasında toplam %d adet asal sayı var",sayi);
getch()
}
Bu programı bana anlatabilecek arkadaş varmı. Ben programın 1-100 arası asal sayıları bulduğunu anlıyorum ama ! tamam=0 ve döngülerin sırasını ne zaman sona erdiğini anlayamadım :S - 22-12-2012, 15:15:13döngünün içinde tamam=0 oluyor. i>100 değere ulaştığında döngüden çıkıyor ve tamam=1 oluyor. aşağıdaki ifte tamamın tersini aldığı için asal sayı yazdırmayı kesiyor ve arada kaç asal sayi olduğunu söylüyor.
- 22-12-2012, 15:52:26if(!(i%j)) burada i ve j arasındaki bağıntı mantıksal 0 olsuğunda tersi 1 olucak ve o zaman tamam = 1 ' e dönücek. Tamam = 0 durumu döngünün içinde zaten ilk döngüde olduğu sürece sağladığı sürece tamam 0 döngüden çıkınca 1 oluyor
- 23-12-2012, 19:48:49Şöyle anlayamadım ben,
Şimdi i 3 sayısına geldi, karekok aldı 1.7 çıktı int olduğu için yuvarladı ve 2 dedi,
Sonra
for(j=2;j<=karekok;j++)
bu döngüyemi geliyor yoksa i yi 1 arttırıyormu ilk önce
bu döngüye geldiyse j 2<= karekok=2 karekokde 2 idi zaten
devam ediyor.
i=3 belirlemiştik i%j kalan 1 olur
tamam=1 bu kısım ve sonrasını anlamadım ?
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 19:48:49 -->-> Daha önceki mesaj 19:32:36 --
Elazığ Fırat Üniversitesi Otomotiv Mühendisliği 2. Sınıf Öğrencisiyim,
C++ dersini bu sene alıyorum final için çalışıyorum kısa sürede yardımcı olabilecek arkadaş varsa çok yardımı dokunmuş olur. - 23-12-2012, 22:36:34#include <conio.h>
#include <stdio.h>
int a,b,c;
main()
{
printf("1 aci:");scanf("%d",&a);
printf("2 aci:");scanf("%d",&b);
printf("3 aci:");scanf("%d",&c);
if(a=b=c)printf("Eşkenar üçgen");
else
if(a=b)||(b=c)
Programda denedim bir türlü doğru sonuca ulaşamadım
üçgenin açıları yukarıdaki gibi girilecek, ve if else döngüsüyle eşkenar ikizkenar ve bağımsız olup olmadığını söyleyecek bir program gerekiyor...
Yarın arkadaşın mazeret sınavı var .