Çözüldü C'de for döngüsü hatalı çalışıyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

hitsizler

Centipat
Katılım
6 Aralık 2021
Mesajlar
227
Daha fazla  
Cinsiyet
Erkek
Ekran Görüntüsü - 2022-01-22 22-14-32.png


[(N*n-1)/2] formülü de var ama bu formül ile de çalışması gerek fakat sonucu yanlış buluyor.
 
Çözüm
For döngüsünün sonundaki semicolon'ı kaldırın, doğru sonucu bulur, zaten derleyicinin hata vermesi gerekiyordu syntax hatası çünkü; for loop'ta semicolon kullanılmaz.
0'dan başlatıp 10'a kadar itere edin. for(i = 0; i < 10; i++)
1 ile 10 arasındaki sayıların toplamını bulmak için sayac += i; yani sayac = sayac + i doğru bir kullanım. Kodu tekrar derleyin. Yazdığınız kodda mantıksal olarak bir hata yok.
 
Son düzenleme:
Bu işlemi yaptırabilmeniz için denediğiniz metodoloji hatalı gibi duruyor, algoritmanızı değiştirebilirsiniz bence: Ben olsam bu istediğinizi yaptırabilmek için ilk önce kullanıcıdan girdi aldıktan sonra, sıfırdan alınılan girdiye kadar bir for döngüsü içerisinde her bir iterasyon adımı sırasında o adımın i değerini belleğe atan bir algoritma yazıp oradan toplardım. E tabi bu metot ile ardışık sayıların toplamı formülünü kullanmamış oluyorsunuz, ama en azından kodlama becerilerinizi geliştirebilir bu şekilde yapmayı denemek. İlla ki bu formül ile yapmak istiyorum diyorsanız for döngüsüne ihtiyacınız yok zaten; kullanıcıdan yine girdi alıp aldığı girdinin 1 fazlasını formülde N yerine koyduğunuzda sonucu doğru bulacaktır zaten.
 
Bu işlemi yaptırabilmeniz için denediğiniz metodoloji hatalı gibi duruyor, algoritmanızı değiştirebilirsiniz bence: Ben olsam bu istediğinizi yaptırabilmek için ilk önce kullanıcıdan girdi aldıktan sonra, sıfırdan alınılan girdiye kadar bir for döngüsü içerisinde her bir iterasyon adımı sırasında o adımın i değerini belleğe atan bir algoritma yazıp oradan toplardım. E tabii bu metot ile ardışık sayıların toplamı formülünü kullanmamış oluyorsunuz, ama en azından kodlama becerilerinizi geliştirebilir bu şekilde yapmayı denemek. İllaki bu formül ile yapmak istiyorum diyorsanız for döngüsüne ihtiyacınız yok zaten; kullanıcıdan yine girdi alıp aldığı girdinin 1 fazlasını formülde N yerine koyduğunuzda sonucu doğru bulacaktır zaten.

Yok zaten en başta yazdığım formül ile sonuç doğru bulunuyor ama ben farklı bir yol denemek istemiştim araştırdığım kaynak böyle yapmıştı.

Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.

5. dakika
 
For döngüsünün sonundaki semicolon'ı kaldırın, doğru sonucu bulur, zaten derleyicinin hata vermesi gerekiyordu syntax hatası çünkü; for loop'ta semicolon kullanılmaz.
 
Çözüm

Yeni konular

Geri
Yukarı