Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
6
Cevap
396
Tıklama
0
Öne Çıkarma
'C' Dilinde Asal Ortak Bölen Hesaplama Nasıl Yapabilirim ? Yadrdım Lütfen !
M
3 yıl
Er
Konu Sahibi

Her keze selam.
Kızımın dönem ödevi için “ C “ de şu kodu yazması gerikor. Konu şu: “ 2 sayının en büyük 2 ortak asal bölenlerinin çarpımı” bunu C de tam bölen olarak yapabiliyorum ama "ortak asal bölen" olarak yapmak nasıl olacak bilemiyorum. Örnek kod yazabilen varsa sevinirim. Teşekkürler. "DEv C++" kullanıyorum. Format .c olmalı.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



M
3 yıl
Er
Konu Sahibi

Bu başlığa cevabı, Kendisinin youtube kanalı olan arkadaşımız çok güzel cevapladı Kendisine bir kez daha teşekkür ediyorum.. kanalına abone olmanızı şiddetle öneririm. Kanalı "
Mucit Yazılım " link:
https://www.youtube.com/channel/UCZvtPTPYv5rwVI9qHpd6rnQ

Bana göndermiş olduğu denklem de şu şekilde paylaşıyorum;

*********************************************************************************************************
#include <stdio.h>
#include <stdlib.h>
int asalMi( int sayi ) 
{

int i , sonuc =1; 
  for( i = 2; i <= sayi/2; i++) {
     if(sayi % i == 0) {
      sonuc = 0;
      break;
     }
    } 
    
    return sonuc ; 


}

int tamBolenBul( int sayi1, int sayi2 ) 
{
int sonuc1=0, sonuc2=0, tamSonuc=0; 
int ikinciBuyukAsal=0, birinciBuyukAsal=0; 

  int bol, bolum1, bolum2; 
   for(bol = 2; bol<=sayi1 && bol<=sayi2 ;bol++){
   bolum1=sayi1 % bol;
   bolum2=sayi2 % bol;
  
   if(bolum1== 0 && bolum2==0 ){
  
   if( asalMi(bol) ) 
   {
   printf("%d    asal \n", bol ) ; 
  
   if( ikinciBuyukAsal==0 )
   {
   ikinciBuyukAsal=bol; 
   tamSonuc=1; 
  
}
   else if( birinciBuyukAsal==0 ) 
   birinciBuyukAsal= bol; 
   else 
   {
   ikinciBuyukAsal= birinciBuyukAsal; 
   birinciBuyukAsal= bol; 
   tamSonuc=1; 
}
   continue; 
}
printf("%d \n",bol);
  
  
   }
   }
  
   if( tamSonuc==0)
   return 0; 
else
{
printf("\nikinci buyuk asal sayi : %d \n", ikinciBuyukAsal) ; 
printf("\nbirinci buyuk asal sayi : %d \n", birinciBuyukAsal) ; 

return ikinciBuyukAsal * birinciBuyukAsal;  
  
}


}

 



int main() 
{
int s1,s2; 
printf("sayi1: ") ; scanf("%d", &s1); 
printf("sayi2: ") ; scanf("%d", &s2); 
 
printf("\nOrtak tam bolenleri : \n\n"); 
int sonuc= tamBolenBul(s1,s2);
if(sonuc==0)
printf("\nGirdiginiz sayilar arasinde tam bolen iki ortak asal sayi yok ! \n"); 
else 
printf("\nsonuc: %d \n" , sonuc ); 
  



return 0;
}
*****************************************************************************************************************


Bu mesaja 1 cevap geldi.
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.