Dostum kod çalışmadı... :S çalıştıgından eminimisin? "while(sayi>999) / sayi 9999dan buyukse roma rakami olarak ekrana M yazdirilir. / " Bu döngüden çıkmaz ki Refine etmek lasım eyvallah!

ismini hatırlamıyorum bir arkadaşımız bir istek yapmıştı bu konuda bana. girilen bir sayıyı roma rakamlarına çeviren programın algoritması ve kodları nelerdir diye. işte algoritma ve kodlar. umarım işine yarar. kodlama ve açıklamalar tamamen bana aittir. #include <stdio. h> #include <conio. h> int main { int sayi; printf ; scanf ; while(sayi!=0) / Sayimizi roma rakamlari kuralina gore azaltmaya basliyacagiz ve 0 oldugunda donguden cikacak. / { while(sayi>999) / sayi 9999dan buyukse roma rakami olarak ekrana M yazdirilir. / if(sayi>=900) / Roma rakamları mantığına göre 900 90 9 40 ve 4 un yazım şekli ayridir. / if(sayi>=500) / Sayi 500 den buyuk ve esitse D kullaniriz / while(sayi>99) / Yine ozel kısım olan 99 incelenir. 99'dan buyuk oldugu surece ekrana C yazariz. C=100 oldugunu unutmayalim / if(sayi>=90)/ 900 yazim mantıgını biliyoruz. o halde 90 XC yani 100-10 seklinde yazariz. / if(sayi>=50)/ Sayimiz 50den buyukse L kullanalim / if(sayi>=40)/ Yine ozel durum mantigi 40 = 50-10 XL / while(sayi>9) if(sayi>=9)/ Yine 9 u IX seklinde yaziyoruz. 10-1 / if(sayi>=5)/ Sayi 5 den buyuk oldugu surece V yazariz / if(sayi>=4)/ 4=5-1 seklinde IV yazılır / while(sayi>0);/ Ve son olarak elimizde 1-2-3 gibi bir deger kalir ve bunlar icin de I kullanırız. / if(sayi 0) / Bu kontrol ile de dongunun herhangi bir yerinde sayimiz 0'a ulastiginda donguden cikariz. / break; } printf ; getch ; }

sonradan fark ettim arkadaşım. bir arkadaş bana özel msj atmıştı ödevi varmış hemen alel acele yazdım. tekrar inceleyip yazıcam. teşekkürler uyarın için.