http://www.hot.ee/js...man/cSharp.html
те кто знает смогут это сделать быстро=)
![:rolleyes:](https://forum.ee/public/style_emoticons/default/rolleyes.gif)
![:rolleyes:](https://forum.ee/public/style_emoticons/default/rolleyes.gif)
Отправлено 27 сентября 2006 - 10:19
Отправлено 28 сентября 2006 - 02:47
$kr = 845.45; $money = array(500,100,50,25,10,5,2,1,0.5,0.2,0.1,0.05); for($j=0, $c=count($money); $j<$c; $j++) { $tmp = floor($kr/$money[$j]); if($tmp>=1) { $kr -= $money[$j]*$tmp; echo ($money[$j]<1?($money[$j]*100).' senti':$money[$j].' krooni').': '.$tmp."\n"; } }
Сообщение изменено: dmitry.eu (28 сентября 2006 - 02:58 )
Отправлено 01 октября 2006 - 21:20
Отправлено 02 октября 2006 - 08:17
Вот моя програмка, по той же самой теме. Она работает, но не так,как хотелось бы. Когда дело доходит до центов, то она не округляет остаточную сумму. Например, когда вводим 95 центов, то в остатке получается 4,99 сентов, вместо 5.
Как это исправить?
Сообщение изменено: БугаГа (02 октября 2006 - 08:19 )
Отправлено 02 октября 2006 - 08:30
Отправлено 02 октября 2006 - 12:04
Отправлено 02 октября 2006 - 23:20
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication4 { class Program { static void Main(string[] args) { int[] cp = {50000, 10000, 5000, 2500, 1000, 500, 100, 50, 20, 10, 5}; double money = double.Parse(Console.ReadLine()); int x = (int)(money * 100); int i = 0; while ((x != 0) && (i < cp.Length)) { int cnt = 0; while (x - cp[i] >= 0) { x -= cp[i]; cnt++; } if (cnt > 0) if (cp[i] >= 100) Console.WriteLine("{0} по {1} крон", cnt, cp[i] / 100); else Console.WriteLine("{0} по {1} центов", cnt, cp[i]); i++; } } } }
Отправлено 03 октября 2006 - 08:45
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication4 { class Program { static void Main(string[] args) { int[] krons = {500,100,50,25,10,5,2,1}; int[] cents = {50,20,10,5}; float inFloat; if (float.TryParse(Console.ReadLine(), out inFloat)) { //For Krons for (int i = 0; i < krons.Length; i++) { if ((int)(inFloat / krons[i]) > 0) { Console.WriteLine("po {0} kron - {1}",krons[i],(int)(inFloat/krons[i])); inFloat -= (float)(krons[i] * (int)(inFloat / krons[i])); } } inFloat = (int)(inFloat * 100); if (inFloat > 0) { for (int i = 0; i < cents.Length; i++) { if ((int)(inFloat / cents[i]) > 0) { Console.WriteLine("po {0} centov - {1}", cents[i], (int)(inFloat / cents[i])); inFloat -= (int)(cents[i] * (int)(inFloat / cents[i])); } } } } else { Console.WriteLine("Error not number."); } } } }Всё работает, багов не должно быть.