BUTUNLEME 2013 2014 GUZ cevap anahtari

Adı Soyadı :
Öğrenci No :
Soru
Not
1
2
3
Toplam
F.Ü TEKNOLOJİ FAKÜLTESİ
YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ YMT111 BÜTÜNLEME SINAVI
2013–2014 Güz (04 ŞUBAT 2014)
SORULAR
Toplam 3 soru 100 Puan, cevaplarınızı her soru için ayrılan boşluklara yazınız, süre 60 dakikadır.
Soru1: Dışarıdan alınan N tane sayı arasındaki 11'e tam bölünenlerin toplamını bulan programı C veya Java
dilinde yazınız? (40 puan)
Soru 2: Boyutu dışarıdan girilen N sayısı ile belirlenen bir Birim Matris oluşturan ve bu matrisi
“butunlemesoru2.txt” dosyasına aşağıdaki gibi kaydeden programı C veya Java dilinde yazınız? (40
puan)
Ör:
N=3
Dosya içeriği
𝟏 𝟎 𝟎
𝟎 𝟏 𝟎
𝟎 𝟎 𝟏
Soru 3: Dışarıdan girilen 10 tane sayının asal olup olmadığını recursive bir fonksiyon ile bulan, sonucu
klasörde var olan “butunlemesoru3.txt” dosyasına ekleyen programı C veya Java dili kullanarak yazınız.
(Recursive yapıyı kurma 10 Puan, Dosya işlemleri 5 puan, Diğer İşlemler 10 puandır. Recursive yapı:
fonksiyona gönderilen sayı kontrol edildikten sonra geriye Asal veya değil olduğu içeren bir bilgi
göndermelidir. Bu soruda puanlama Tam Doğru ilkesiyle yapılacaktır.)
Başarılar Dilerim
Yrd. Doç. Dr. Mustafa ULAŞ
SORU 1:
#include<stdio.h>
#include<conio.h>
int N,i,T=0,Sayi;
main(){
printf("Siniri Giriniz : ");
scanf("%d",&N);
for(i=0;i<N;i++){
printf(“\n%d.sayıyı gir : ”,i+1);
scanf(“%d”,&Sayi);
if(Sayi%11==0)
T+=Sayi;
}
printf("Toplam Sonucu : %d ",T);
getch();
}
SORU 2:
#include<stdio.h>
int N,i,j;
main(){
printf("Siniri Giriniz : ");
scanf("%d",&N);
FILE *dosya;
dosya = fopen("butunlemesoru2.txt","w");
for(i=0;i<N;i++){
for(j=0;j<N;j++){
if(i==j)
fprintf(dosya," 1");
else
fprintf(dosya," 0");
}
fprintf(dosya,"\n");
}
fclose(dosya);
}
SORU3 :
#include<stdio.h>
#include<conio.h>
int Sayi,i,j;
int asalbul(int a){
if(a>2)
if(Sayi%(a-1)==0)
return(0);
else
if(a-1>2)
asalbul(a-1);
else
return(1);
else
return(1);
}
main(){
FILE *dosya;
dosya = fopen("butunlemesoru3.txt","a+");
for(i=0;i<5;i++){
printf("\nSayiyi gir : ");
scanf("%d",&Sayi);
if(asalbul(Sayi)==1){
fprintf(dosya,"\n%d Asaldır",Sayi);
}else{
fprintf(dosya,"\n%d Asal değildir.",Sayi);
}
}
fclose(dosya);
getch();
}