1. sayfa
Yazdıgınız kodu gönderir misiniz ? |
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; } ***************************************************************************************************************** |
Uğraştığınız/yazdığınız kadar kodu koymadan cevap istemişsiniz. Emek yok. Kızınız ne öğrendi merak ediyorum?. Yanlış yaptınız. Ayrıca paylaştığınız kodun okunurluğu düşük. Hem de optimum değil. Yarısı kadar satırda, daha hızlı ve anlaşılır yapmak mümkün. |
olumsuz eleştirini yeni gördüm. Ödevi öyle teslim etmedi bu şekilde teslim etti. Umarım bu seni "MUTLU" eder. ***Lütfen sorunlu ruh hali ile cevap yazmayın !!!*** Ödev: #include <stdio.h> #include <stdlib.h> //* Hazırlayan: //* Sınıf: //* No: //* Konu: Rastgele iki sayının en büyük iki asal böleninin çarpımı nedir //* Bunu c'de yazarken şu komutları ve işaretleri kullanacağız /* 1. int ; Tamsayı değerlerini tutmak için kullanılır. 2. for ; Döngüler, bir işlemin belli bir koşul altında tekrar edilmesi için kullanılır. 3. if ; Koşula bağlı işlem satırı veya satırları çalıştırma olanağı sağlayan komut. 4. break ; Koşul gerçekleştiğinde döngüden çıkmak için kullanılır. 5. return; bir fonksiyondan çıkış yapmak ve program içinde fonksiyon çağrısının yapıldığı işlem satırından bir sonraki işlem satırına geçiş yapmak için kullanılır. 6. printf; Bir string değişkeni ekrana yazdırmak için %s argümanını kullanılır. char str[]="C Programlama Dili"; printf("%s",str); İşaretli int ve long değişkenleri onluk sistemde ekrana yazdırmak için %d veya %i kullanılır 7. else; if-else Yapıları : Bu yapılar, koşullu işlem yapan kontrol yapılarıdırlar. Eğer bu koşul olumlu ise if den sonraki bölüm yürütülür ve else den sonraki bölüm atlanır. Koşul olumsuz ise (else=değilse) if den sonraki satırlar atlanır ve eğer varsa,else den sonraki işlemler gerçekleştirilir. 8. continue;tanımlı değeri döngüde görünce döngünün başına dönmek 9 & İlk şart sağlanmasa bile devamındaki şartlara da bakar. 9. && (and) ve kapısı; Her iki değerde 1 döndürüyorsa sonuç 1’dir. Eğer döndürmüyorsa sonuç 0’dır. */ int asalMi( int sayi ) //* asal sayıyı (girilen değerde tanımlama) { int i , sonuc =1; //* ekrana girilen tam sayı ve "sonuç" değişkeni 1 ise for( i = 2; i <= sayi/2; i++) { //* koşul şu (tam sayı 2 ye eşit ve girilen değer eşit veya küçükse sayı değişkenin bölünmesine bak bölünüyorsa devam et if(sayi % i == 0) { //* sayı ve tam sayı değerleri sıfır olursa sonuc = 0; //* sonuç değişkeni sıfır olur ise break; //* döngüden çık } } return sonuc ; //* sonuc tanımına geri dön } int tamBolenBul( int sayi1, int sayi2 ) //* tam bölen bul (girilen sayı 1 ve 2 için) { int sonuc1=0, sonuc2=0, tamSonuc=0; //* 1.ve 2. sayı sıfır, tamsonuç sıfır ise int ikinciBuyukAsal=0, birinciBuyukAsal=0; //* 2. ve 1. büyük asal sayı sıfır ise int bol, bolum1, bolum2; //* böl,bölüm1, bölüm2 tanımla for(bol = 2; bol<=sayi1 && bol<=sayi2 ;bol++){ //* koşul (böl 2 ye eşit, böl sayı1-2 den küçük veya eşit ise işlemi tekrarla bolum1=sayi1 % bol; //* bölüm 1 sayı1 eşitse yukarıdaki işlemi yap bolum2=sayi2 % bol; //* bölüm 2 sayı1 eşitse yukarıdaki işlemi yap if(bolum1== 0 && bolum2==0 ){ //* bölüm 1 ve bölüm 2 işlemleri sıfır oluyor ise if( asalMi(bol) ) //* asalmi tanımı içinde böl { printf("%d asal \n", bol ) ; //* ekrana asal değerin altına bol değişkenini yaz if( ikinciBuyukAsal==0 ) //* eğer(if) ikinciBüyükasal 0'a eşit ise { ikinciBuyukAsal=bol; //* ikinciBüyükasal değer bol değerine eşitse tamSonuc=1; //* tamsonuc 1 } else if( birinciBuyukAsal==0 ) //* değilse (else) eğer(if) birincibüyükasal 0 ise birinciBuyukAsal= bol; //* birinciBuyukAsal eşitse bol değerine else //* "değilse" yukarıdaki koşul devam et { ikinciBuyukAsal= birinciBuyukAsal; //* ikinciBuyukAsal eşitse birinciBuyukAsal birinciBuyukAsal= bol; //* ikinciBuyukAsal tamSonuc=1; //* tamsonuc değişkeni eşitse 1'e } continue; //* devam et } printf("%d \n",bol); //* bol değişken değerini alt satıra yaz } } if( tamSonuc==0) //* eğer tamsonuc 0 ise return 0; //* sıfıra dön else //* değilse { printf("\nikinci buyuk asal sayi : %d \n", ikinciBuyukAsal) ; //* ikinciBuyukAsal değeri sonucu alt satıra bas printf("\nbirinci buyuk asal sayi : %d \n", birinciBuyukAsal) ; //* birinciBuyukAsal değeri sonucu alt satıra bas return ikinciBuyukAsal * birinciBuyukAsal; //* ikinciBuyukAsal ve birinciBuyukAsal dğerlerine dön ve çarp } } int main() //* sonucu, yukarıdaki işlemlerin alına devam edeceğimiz değerler { int s1,s2; //* iki değişken belirliyoruz printf("sayi1: ") ; scanf("%d", &s1); //* sayı1 değeri ekrana bas girilen tam sayı s1 şartını bak devam et printf("sayi2: ") ; scanf("%d", &s2); //* sayı2 değeri ekrana bas girilen tam sayı s2 şartını bak devam et printf("\nOrtak tam bolenleri : \n\n"); //* "nOrtak tam bolenleri" ifadesini alt satıra bas ve alt satırdan devam et int sonuc= tamBolenBul(s1,s2); //* x satırdaki sonuç denklemi eşitse tamBolenBul(s1,s2) sonuç denklemine if(sonuc==0) //* ve eğer sonuç denklemi eşitse sıfıra aşağıdaki ifadeyi bas alt satıra printf("\nGirdiginiz sayilar arasinde tam bolen iki ortak asal sayi yok ! \n"); else //* değilse printf("\nsonuc: %d \n" , sonuc ); //* SONUÇ return 0; } /* "C" NEDİR? TANIMI VE KULLANIM ALANLARI C yazılım dili yüksek seviyeli aynı zamanda geniş maksatlı bir programlama dili olarak karşımıza çıkıyor. Dennis Ritchie ve Brian Kernighan tarafından Bell Labs'da 1972 yılında geliştirilmiş ve kullanımına başlanmıştır. Ayrıca C programlama dili neredeyse hiç duyulmayan bir programlama bili olan B programlama dilinin tabanı esas alınarak geliştirilmiştir. C programlama dili ayrıca Firmware ve taşınabilir uygulamalar geliştirmek için öncelikli olarak tercih ediliyor. Günümüzde de hala en çok tercih edilen yazılım dili olarak karşımıza çıkan C programlama dilin kullanılarak geliştirildiği en önemli yazılım unix işletim sistemi olarak biliniyor. Çok sık tercih edilmesinin yanı sıra öğrenme aşaması da biraz uzundur. Özellikle güvenli uygulamalar ve sistemler geliştirmek için kullanılıyorsa çok titiz bir çalışma gerektirir. Gömülü sistem olarak değerlendirilen çamaşır makinesi hesap makinesi gibi makineleri de kodlayabilir. Ayrıca bu yazılım dili ile robot yapabilirsiniz. Bunların yanı sıra unix çekirdeği, Microsoft Windows programları, işletim sistemi uygulamaları ve android işletim sisteminin büyük bir bölümü c programlama dili kullanılarak oluşturulmuştur. Yeni bir programlama dilini oluşturmak içinde C programlama dilini de kullanabiliyorsunuz. Kısacası bu programlama dili teknolojinin her alanında ve her aşamasında öncelikli olarak tercih ediliyor. */ |
1. sayfa
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ı.