الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ممكن أحد يصحح لي الكود هذا ؟؟؟

مغلق
بدأه aahd2xxx في 11 نوفمبر 2006 · 2 رد · 590 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ..

أبغى مساعدة يا أخوان .. هذا البرنامج اللي عملتو يقسم العدد باستخدام الفواصل بس فيه مشكلة ..

لمن أدخل 1000000 راح يطبع لي 1,0 أو لمن أدخل 1000001 راح يطبع لي 1,1 يعني راح يتجاهل الأصفار اللي على اليسار ...

ممكن أحد يصحح لي الكود .. و شكراً

وهذا الكود

public class intComma
{
	public static String putComma(int x)
	{
		String st = x+"";

		int L = st.length();

		if (L<= 3)

		return st;

		else 
		{
			if (L%3 == 1)

			return st.charAt(0)+","+putComma(Integer.parseInt(st.substring(1)));

			else if (L%3 == 2)

			return st.substring(0,2)+","+ putComma(Integer.parseInt(st.substring(2)));

			else

			return st.substring(0,3)+","+ putComma(Integer.parseInt(st.substring(3)));
		}
	}
	public static void main(String[] args)
	{
		System.out.println(putComma(1234567));
		System.out.println(putComma(1000000));	// here is the problem
		System.out.println(putComma(1000001));	// here is the problem
	}
}
#2
		String number = "10000000000003";
		StringBuffer buffer = new StringBuffer();

		for (int i = 0; i < number.length() - 1; i++) {
			if (!(number.charAt(i) == '0')) {
				buffer.append(number.charAt(i) + ",");
			}
		}
		buffer.append(number.charAt(number.length() - 1));
		System.out.println(buffer.toString());

لست متواجد بشكل يومي

#3

بس نفس المشكلة موجودة ... راح يطبع 1,3

أيش الحل؟

هذا الموضوع مغلق.

مواضيع مشابهة