Şimdi Ara

c programlama dilinde dosya okuma işlemi hatası

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
6 Misafir - 6 Masaüstü
5 sn
2
Cevap
0
Favori
69
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • 10 elemanlı bir dizideki ilk i elemanın toplamı, dizinin i'den sonraki elemanlarının toplamına eşitse i sayısını yazdıran programı yazınız. Örnek: 3 5 2 4 1 2 5 3 1 2 3+5+2+4 = 1+2+5+3+1+2 Cevap: 4 (indis 3)


    soru bu şekilde fakat input dosyasından okumaya çalıştığımda olmuyor her şeyi denedim yapay zeka ile halletmeye çalıştım olmadı .sorun 2.döngüyü ne zaman açsam sorun orada başlıyor inputtaki dizinin elemanlarını olduğundan farklı yansıtıyor örneğin -18002032


    yaptığım kod şu şekilde :


    #include<stdio.h>

    int main()

    {

    FILE *oku, *yaz;

    oku = fopen("input.txt","r");

    yaz = fopen("output.txt","w");

    int dizi[30], n = 30, sayac = 0, i,j,toplam1=0,toplam2=0;

    while(sayac < 1000)

    {

    for(i = 0; i < n; i++)

    {

    fscanf(oku,"%d", &dizi[i]);

    int k=dizi[i] ; 

    toplam1=toplam1+k ;

     

    for(j=i+1 ; j<10 ; j++)

    {

    int m=dizi[j] ; 

    toplam2=toplam2+m ;

    }

    if(toplam1==toplam2)

    {

    printf("%d",i) ;  

    }

    else

    {

    toplam2=0 ; 

    }

    }

    sayac++;

    }

    fclose(oku);

    fclose(yaz);

    return 0;

    }








    bu şekilde fakat dediğim gibi şöyle yapsam yani ikinci döngüden inputtaki dizinin elemanlarını kontrol etsem dediğim gibi saçma sapan sayılar çıkıyor . ikinci döngüyü açtığım zaman oluyor . teyit etmek amaçlı yapıyorum bunu da . tek döngüden teyit edince diiznin elemanlarını yansıtıyorum sorun olmuyor ama ...


    #include<stdio.h>

    int main()

    {

    FILE *oku, *yaz;

    oku = fopen("input.txt","r");

    yaz = fopen("output.txt","w");

    int dizi[30], n = 30, sayac = 0, i,j;

    while(sayac < 2)

    {

    for(i = 0; i < n; i++)

    {

    fscanf(oku,"%d", &dizi[i]);

    for(j=i+1 ; j<n ; j++)

    {

    printf("%d ",dizi[j]) ;

    }

    printf("\n") ; 

    }

    sayac++;

    }

    fclose(oku);

    fclose(yaz);

    return 0;

    }


    Lütfen yardım ediniz çözemiyorum...








  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.