[]

Küçük Bir C Sorusu

merhabalar. ax + by = c ve dx + ey = f olarak iki denklemin çözümünü yazan bir program yazmamn gerekiyor. a, b, c, d, e, f değerleri kullanıcı tarafından girilecek. programı yazdım fakat bir sorun fark ettim. a, b c, d, e, f değerlerine keesirli bir sayı girmek istediğimde -5/3 gibi- saçmalıyor program. bu değişkenleri double olarak tanımladım ama başka bir şeyle tanımlamam gerek sanırım. ne ile tanımlasam olur acaba?

bir de ilk programım diyebilirim bu programa. kullanıcı dostu bir program olsun arayüzü kullanışlı olsun falan diye yazmış hoca. aklınıza gelen önerebileceğiniz bir şey olur mu? ben direkt yazdım yani öyle şahane bir program değil.

son olarak da
"x and y results should be stored to the file xyout.txt along with all the information you can give to present your results to the user.
|use the file related input/output commands to write to this file, don't use redirection."
bulduğum x ve y değerlerini xyout.txt dosyasında depolamasını istiyor sanırım anladığım kadarıyla. ama nasıl yapabileceğim konusunda hiç fikrim yok, yardım edebilir misiniz?

çok teşekkürler şimdiden.

 
-5/3 yerine ondalık eşitini yazın, -1.66. Başka bir şeyle tanımlasanız da olmaz, kesirli sayılar yok çünkü.

www.osix.net

Burası olmazsa Google'a "C file handling" gibi bir şey yazsanız sayısız kaynak çıkıyor.
  • fadetoreality  (06.03.10 17:22:43) 
float olarak tanımlaman gerekiyor tüm değerleri.. %d yerine %f kullanacaksın tabi bi de haliyle..

kesirli sayı giremezsin bir de yani.. fadetoreality'nin dediği gibi yapman gerekiyor..
  • buzzlightyear  (06.03.10 17:23:53 ~ 17:24:56) 
c'de dosya yazma işlemlerini öğrenmen gerekiyor, bir tane örnek yazalım mesela;

void dosyaya_yaz(int a)
{
FILE *infile;
infile=fopen("C:\\xyout.txt","w");

fprint(infile,"%d",a);
fclose(infile);
}

//bu fonksiyon,"C:\\" dizinine kendi açtığı xyout.txt dosyasına a değerini yazar. bu kalıbı değiştirerek yazdırabilirsin dosyaya.

ayrıca kaynak olarak da www.cplusplus.com burası işine yarayacaktır, her fonksiyon için örnek içeriyor zaten, hemen kaparsın olayı.

edit:

burada sanırım katsayıları teker teker alıyorsun, eğer direkt kullanıcıdan denklemi alıp kendin katsayıları çözümleyebilirsen o zaman kullanıcı dostu olacaktır. fakat stringden integer dönüşümü vs. biraz uğraştırır eğer zamanın varsa yap derim hem yeni birşeyler öğrenmiş olursun güzel olur.
  • ocanal  (06.03.10 17:24:00 ~ 17:33:22) 
@ocanal
teşekkür ederim öncelikle. hoca katsayıları alın diye yazmış ödevi, şimdi niye dediğim gibi yapmadın falan derse diye de çekiniyorum aslında.

  • msne  (06.03.10 17:48:34) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.