Hallo alle,
Ich habe ein Problem mit [c]Arrays.sort( )[/c].
Ich habe ein array (Type: float[ ] ), warum nach dem [c]Arrays.sort( )[/c] verändert die Summe des Arrays?
Hier ist meine Code:
1. zuerst lese ich die Daten in array a1[ ];
2. berechne ich die Summe des Arrays;
3. Nach Arrays.sort( ), berechne ich die Summe des Arrays;
Ausgabe:
Vor dem Arrays.sort(): sum = 1778.062
Nachdem Arrays.sort(): sum = 1778.063
Warum ist das Ergebnis um 0.001 unterschied? [c]float[/c] hat doch nach Komma 7 stellige Genauigkeit, oder?
Vielen Dank für eure Hilfe!
Hier ist meine Code:
Ich habe ein Problem mit [c]Arrays.sort( )[/c].
Ich habe ein array (Type: float[ ] ), warum nach dem [c]Arrays.sort( )[/c] verändert die Summe des Arrays?
Hier ist meine Code:
1. zuerst lese ich die Daten in array a1[ ];
2. berechne ich die Summe des Arrays;
3. Nach Arrays.sort( ), berechne ich die Summe des Arrays;
Ausgabe:
Vor dem Arrays.sort(): sum = 1778.062
Nachdem Arrays.sort(): sum = 1778.063
Warum ist das Ergebnis um 0.001 unterschied? [c]float[/c] hat doch nach Komma 7 stellige Genauigkeit, oder?
Vielen Dank für eure Hilfe!
Hier ist meine Code:
Java:
// Initialize the array a1[]
String line = "0.718,0.2292,2.091,0.913,0.7498,0.4416,0.8788,2.5286,0.8196,0.918,0.5256,0.4722,1.5278,0.3924,0.2184,1.251,2.9996,0.8574,0.4872,1.5578,0.9804,0.8148,0.7338,0.8802,0.4572,0.5552,0.4828,0.2404,0.8492,0.3656,0.1964,0.6894,0.8682,0.7428,0.8734,0.1958,0.2752,0.7676,0.8034,0.4264,0.843,0.5946,0.7012,0.3718,1.8234,0.6292,2.4108,0.7402,0.7488,1.5724,0.7696,0.9956,0.7774,2.5776,0.823,0.768,0.5934,0.2194,0.5146,0.2922,0.76,0.5322,0.8312,1.8132,0.1538,0.1738,0.2462,0.6938,0.8846,0.2558,0.667,0.7414,1.1424,0.8824,0.9578,1.4508,5.9222,0.5074,1.5918,0.763,0.9742,0.3586,0.0794,1.2698,1.2544,0.9416,1.7462,1.5736,1.1142,0.2122,0.4922,1.5112,0.031,0.187,0.8742,0.7542,0.795,0.461,0.8928,0.0186,0.4424,0.9032,2.4992,1.531,0.9192,0.8934,1.3484,0.6246,0.5528,0.1542,0.776,1.8692,1.9064,7.792,0.8974,0.9766,0.311,0.4212,0.6314,0.555,0.96,0.853,1.3508,0.7988,0.9788,0.517,1.5344,6.5508,0.4996,1.639,0.9826,0.6864,0.8534,0.69,0.3738,0.7304,1.9174,0.9512,0.7276,0.704,0.8084,0.9958,0.3478,2.1626,0.953,2.0362,0.671,0.9884,1.3796,0.5838,0.8264,1.7678,0.412,0.6856,0.3208,0.8442,1.2594,2.556,0.7808,1.2214,0.5304,0.5584,0.885,0.7336,0.3508,0.5428,0.3244,2.4386,0.9944,0.27,0.77,1.959,0.8688,0.7438,1.0992,0.5658,2.266,0.6418,2.1998,2.0676,2.426,0.829,0.6086,0.2838,3.682,0.3014,0.634,0.922,0.565,0.6852,0.495,0.5394,0.5178,1.7662,0.0944,1.8694,0.7154,1.0366,0.7778,0.28,1.4436,0.876,0.7924,0.9128,0.4202,0.1764,2.7704,0.46,0.3812,0.4502,0.1434,0.631,0.6768,1.1256,1.2112,0.71,0.0082,0.9342,0.2822,0.7938,0.8164,0.6996,1.6232,0.7856,0.9418,0.7716,0.8246,0.9004,0.424,0.3042,0.0858,0.961,0.0556,2.1634,0.63,0.3558,0.7,0.6346,0.9046,0.514,0.992,0.7478,0.957,0.877,2.1532,0.9862,0.9524,1.6468,0.8868,0.1184,1.1096,0.3836,0.3408,0.852,0.3164,0.7864,1.1782,0.2778,0.6686,0.666,1.7852,0.8996,0.1192,0.9706,0.4124,0.9712,0.813,2.316,0.7062,0.506,0.5418,0.75,0.0572,0.5016,1.2654,0.8044,0.7482,0.2932,0.959,2.4474,0.9376,0.7366,0.1672,1.8952,0.4482,0.33,0.8442,0.9152,0.3572,0.6864,0.6438,0.5242,0.9968,0.9724,2.7866,1.074,1.288,0.9142,0.9336,0.704,0.8286,0.5844,1.3926,0.6432,1.4454,0.5954,0.1412,2.8928,2.4472,0.0306,0.7798,0.719,0.8476,0.4036,0.982,0.9686,0.9364,0.992,1.0356,0.798,0.2102,4.515,0.6742,0.8812,0.9592,0.8966,1.2188,0.835,0.8938,0.9006,0.9896,0.3838,0.4088,0.7802,0.4832,0.2552,0.9266,3.2922,0.8684,0.8418,1.4368,0.9632,1.6756,0.9028,0.727,0.796,2.3306,1.5774,1.0486,2.1298,0.6122,0.8492,0.3362,0.3158,0.9666,0.0258,0.9608,0.79,0.5928,0.5934,0.7456,0.4082,1.3004,0.9156,1.5852,0.7256,2.196,0.8772,1.6896,0.9592,2.3744,1.2508,0.7934,0.453,0.4652,0.8746,0.9162,0.9722,0.413,0.7444,2.0194,0.31,0.4772,0.8884,3.386,0.564,1.2346,0.845,0.3382,0.0142,0.0482,0.9432,0.8092,0.9932,0.86,0.9494,1.7984,0.6988,0.483,1.2708,1.9738,0.5072,0.7694,0.471,0.8782,0.981,0.329,0.1218,0.889,0.8768,0.6724,0.6004,0.036,0.8854,2.3272,2.9086,0.1788,3.2514,0.1,0.0266,0.844,1.3228,2.5172,0.787,0.8732,0.6748,0.9566,0.5008,1.2466,0.099,0.728,1.1798,0.2328,0.7236,0.4082,1.9396,0.8526,1.3346,0.8676,2.5118,0.2202,0.8506,2.488,0.5424,0.5282,0.757,0.9498,2.001,0.8132,0.4922,2.497,0.9872,0.8032,0.3636,0.1834,1.0126,0.7506,0.873,1.4088,0.6416,0.5498,0.6612,0.9452,0.9426,0.815,1.3208,4.4498,0.9916,0.1248,1.046,0.5764,0.8608,0.6804,0.841,0.5228,1.2692,0.9898,0.6528,0.8302,0.1952,0.1346,1.3086,1.7602,0.0472,0.47,3.1308,0.899,0.858,0.018,0.9954,1.3774,0.9722,0.996,1.3222,0.0964,0.8104,0.9716,0.4402,0.5584,0.5048,0.0198,2.7178,0.6618,0.7564,0.921,0.4184,0.9554,1.075,0.6286,2.2696,0.613,0.6122,1.2666,0.9672,0.8576,0.8194,0.865,0.7174,0.2188,0.9526,3.6154,0.2438,0.4642,0.947,0.646,0.896,0.2212,0.983,1.9362,0.7334,0.8458,3.8706,1.0368,0.8726,0.781,0.8928,0.9824,1.6362,0.9064,0.9946,1.8124,0.998,0.8412,0.7102,0.7868,0.5148,0.983,0.913,0.8888,0.7664,0.838,1.8666,1.502,0.0666,0.5292,0.1904,1.336,0.4324,0.9354,0.821,0.2246,0.7572,0.9218,3.6518,0.3538,0.8692,0.1266,0.829,1.1238,0.2834,0.8642,0.1076,3.498,0.722,0.899,0.9446,0.3286,1.0812,0.3676,0.682,0.7924,0.9894,1.0062,0.164,0.9416,0.8736,0.7838,1.121,0.8256,0.931,0.933,0.4426,0.9726,0.3182,0.527,0.7664,1.0314,1.2418,1.591,0.9814,0.7512,0.2286,0.92,0.1178,0.1358,0.2112,0.8094,2.2138,1.875,0.9766,0.2564,0.6922,0.9552,0.306,0.4936,0.2146,0.5532,2.427,0.303,0.7998,2.4174,1.5788,2.5194,0.7626,0.8314,1.0716,0.7054,0.9614,0.6844,0.6136,2.9794,0.578,0.5166,1.0338,0.0062,0.7856,0.6592,0.9686,1.7564,1.5474,0.4892,0.3316,1.149,0.8848,2.2494,0.6988,0.8368,0.8918,0.8882,0.6298,0.2578,0.0864,0.4926,0.0136,0.9586,0.892,0.9828,0.8218,1.3626,0.9566,0.6804,0.2306,0.9008,0.0366,0.8954,0.8806,0.2998,0.3128,0.335,0.8964,0.7132,0.7408,0.8598,0.4842,0.357,0.7154,1.6486,0.7344,0.8254,0.7782,0.5786,0.901,0.9764,0.5746,0.9804,0.9968,0.6634,0.9802,0.9086,0.909,0.7482,0.7138,0.9932,1.6066,1.31,1.4172,0.713,1.1768,0.3638,0.4438,0.834,0.2584,0.2398,0.9844,0.8456,0.4326,0.712,1.942,0.435,0.854,0.8446,0.7232,0.3706,0.9706,1.3526,0.9878,0.3734,0.5646,0.9056,1.722,0.7366,0.0028,0.214,0.836,1.3024,0.9202,1.338,1.598,0.9376,1.0472,1.1838,0.854,0.434,1.1066,1.2204,1.3498,0.0714,2.7024,0.3172,5.5166,1.253,0.3412,0.9268,0.5954,2.526,0.5498,0.3384,1.113,0.0328,0.5964,0.7428,0.8614,0.4274,0.9756,1.4222,1.7444,0.9542,0.404,0.5026,0.525,0.9678,0.966,0.8132,1.4188,1.4696,1.9534,2.3528,0.2778,0.827,0.716,0.9424,1.1904,1.6856,1.0074,0.5764,0.8966,0.5696,0.6464,0.646,0.806,0.8616,0.7842,0.677,1.1518,0.6298,1.2118,0.9418,0.7336,1.0438,0.1032,0.3852,2.0238,2.8094,0.7788,0.8464,0.3184,1.7104,0.1014,0.5278,1.6902,0.7484,0.3808,1.344,0.86,0.5674,0.7294,0.6906,0.9704,0.7286,0.1542,0.0316,0.5504,0.713,0.8418,1.2222,0.8534,0.8292,1.6072,1.3056,0.952,0.9352,0.3724,0.6666,0.9926,0.5672,0.5074,0.4776,1.5098,0.9758,1.1264,1.601,2.1802,1.0276,0.6638,0.995,1.1108,0.9424,0.9048,0.9852,1.329,0.4382,0.8746,0.3418,0.4952,0.9488,0.7086,2.858,0.3294,0.742,0.4672,2.5124,0.993,0.8078,0.7804,0.0812,3.1226,0.7486,0.3926,0.9856,0.7954,0.6566,0.5642,0.9514,0.2356,0.353,0.2334,0.719,1.8404,0.6854,1.6874,1.4196,2.2068,0.9768,2.3758,2.1134,0.8364,0.9514,0.9778,0.9852,0.9622,0.1216,0.8332,2.572,0.7104,0.6722,0.7686,0.9332,1.1396,0.4274,0.6714,0.9336,0.394,1.183,0.9446,1.4794,1.1968,0.3934,0.9,1.0824,1.719,0.7252,0.8722,1.5056,0.799,0.7918,1.5498,0.073,0.9648,4.4666,0.5956,0.9726,0.6572,0.5386,1.507,1.8992,1.0274,0.7632,0.3476,0.9904,0.6888,0.4076,0.697,0.8626,0.9926,0.233,0.3202,1.3266,0.871,0.9442,0.7178,0.8286,0.431,0.6098,0.825,0.704,0.6096,0.1832,0.5322,0.3512,1.5604,2.8704,0.87,0.5278,1.3028,0.994,0.8422,1.8238,0.5868,0.6454,0.4444,0.9618,0.5772,2.7354,0.3904,0.9546,0.441,0.509,0.8778,0.4698,0.6724,0.8464,0.4668,0.9622,0.346,0.5608,0.4362,0.7896,0.7358,0.1218,1.6628,0.7304,1.257,1.6704,0.7796,1.777,0.4358,1.8476,0.5376,1.4292,0.167,1.0118,0.9512,0.5952,0.8636,0.6836,0.9444,3.1138,0.8968,0.5756,0.599,0.9432,0.3256,0.8044,0.8732,0.0238,0.9,0.7422,0.1694,0.31,0.8132,0.297,0.4066,0.6306,2.8234,1.345,0.9584,0.7668,0.8894,0.3348,0.7152,0.6674,2.352,0.5792,0.9038,0.8772,1.8416,0.7416,0.9836,0.3768,0.6934,0.979,1.1894,0.7126,0.7576,0.5884,0.7916,0.5698,1.7176,0.7686,0.562,0.8456,0.1284,1.4252,0.745,0.853,0.3468,0.8134,2.6896,0.8596,0.7964,3.6246,0.7428,0.0804,0.9154,0.2318,1.9452,0.192,0.8366,0.7162,1.3652,0.9236,0.4436,2.2492,0.7958,2.0992,0.8972,0.9242,0.9202,0.9046,0.7082,0.9778,0.427,1.1326,1.1094,0.7906,0.9704,0.7358,0.664,0.9968,0.737,1.3532,1.9154,0.9548,0.8014,2.1252,1.5552,1.4022,2.4376,1.5696,0.6682,0.8158,0.8486,0.9322,1.6032,0.726,1.2972,2.0066,0.2704,0.8666,0.4438,0.0352,2.3796,0.891,0.2276,0.9778,0.165,0.9212,1.9522,0.7914,0.943,0.7438,0.7434,0.8878,0.8358,0.9178,0.3722,0.909,0.146,0.7332,1.889,0.767,0.5644,0.526,0.1418,0.0298,0.3736,1.6008,0.7808,0.9462,0.8244,1.7584,0.3352,0.159,1.5666,0.7482,0.7164,2.2882,0.762,1.086,0.2758,0.0846,0.7354,0.8404,0.9684,0.957,0.1052,0.6778,0.0518,0.4526,0.2444,0.7934,0.3796,0.5512,0.817,2.0726,0.7436,0.7916,1.1868,0.985,0.6916,0.9352,0.446,0.4736,0.7466,0.2726,0.9886,2.838,0.2852,0.5294,0.7558,0.6478,0.9474,0.0072,1.7022,0.0878,1.152,1.8864,0.8182,2.0584,0.6162,0.8568,0.3756,0.9528,0.3404,0.7862,0.8642,0.9134,0.569,0.5256,1.9258,0.9366,0.6932,0.499,0.6512,0.295,0.976,0.5918,0.5324,0.9206,0.3768,1.1634,0.9062,0.6104,0.858,0.7774,0.6428,0.7312,0.5022,0.9534,0.9488,0.9264,1.5138,0.8578,0.986,0.9942,0.8392,0.9442,0.3964,0.5714,0.9006,0.6968,0.7086,0.2004,1.5836,0.5612,0.9772,1.9332,2.7536,0.2206,0.988,0.1796,0.707,1.8432,0.5136,0.3966,0.1596,0.856,1.1804,0.1858,0.985,2.962,0.5348,1.2844,0.8742,3.9682,0.7636,0.0806,1.8958,0.3324,0.6814,0.3604,3.42,0.6282,4.6436,0.9158,0.5702,0.7998,0.4876,2.447,0.9844,0.3554,0.7364,0.673,1.564,0.725,0.9412,0.7064,0.9382,0.725,0.083,0.7896,0.8852,0.4636,0.9352,0.0768,0.8124,0.6764,1.753,1.5376,0.2148,0.7958,5.5038,0.7138,0.6146,0.3094,4.3332,1.0856,0.9728,0.8412,0.7036,0.9562,0.7636,0.4288,0.3538,0.9866,2.6768,0.6134,0.122,0.6798,2.1832,0.5654,0.904,2.093,1.7306,3.2952,0.6158,1.5422,0.9224,0.6568,0.4736,0.6826,0.8648,0.1424,0.9708,0.965,2.212,0.7998,0.1748,0.1814,0.8864,1.5036,0.4556,0.89,0.805,1.3238,0.6312,0.7766,0.0536,0.9834,0.7868,0.5202,0.3266,1.2612,1.5224,1.4896,0.5226,1.3608,1.3372,0.9542,1.4916,2.3368,0.9118,2.3284,0.7904,1.3172,0.8458,0.831,0.9318,1.0444,0.9818,3.5572,0.4416,0.4694,1.9718,0.4688,0.7974,0.6764,0.9232,0.4958,1.7262,1.4406,2.8832,5.1904,0.7692,2.002,0.6008,0.911,0.934,0.335,2.452,0.8096,0.1508,0.3554,0.1806,0.8856,0.9488,0.3522,1.4176,0.401,1.4782,0.668,0.1974,0.9084,2.3636,0.411,0.8446,0.2526,0.9418,0.6108,0.121,0.5602,0.2036,0.9372,0.5264,0.6516,0.6378,0.9632,0.617,3.325,0.189,0.513,0.1432,0.1486,1.227,0.837,0.9984,0.6186,0.8068,0.9336,1.0596,0.3832,0.5902,0.9228,2.2046,0.8504,0.5318,0.4572,1.1088,1.2748,0.859,1.8312,1.6862,0.9592,0.9646,0.6314,1.6186,0.4124,1.023,1.215,0.9868,0.681,0.9728,0.7922,1.673,0.3338,0.8556,0.8872,0.6922,0.7384,0.8044,0.7538,0.745,0.763,1.2194,0.9578,0.539,0.8252,0.9196,1.8974,0.222,1.8468,2.0704,0.0288,0.991,0.9806,0.3634,2.2348,1.5066,0.9148,0.9324,0.5626,0.6454,0.3662,1.9754,0.7292,0.9884,0.4862,1.2778,0.5338,0.7486,2.932,0.7924,0.9244,0.656,0.715,0.5654,0.7546,0.7714,0.6868,0.3472,0.6382,2.5836,0.769,1.3216,0.6398,1.763,0.9438,0.983,0.9574,0.1662,0.8464,0.9838,0.7576,0.5378,0.4452,1.5844,0.1976,0.6564,0.9192,0.4954,0.134,0.9112,2.1334,0.9802,1.4028,0.1276,1.1662,0.479,0.3794,1.6042,0.4828,1.3802,0.6852,0.8662,0.7996,0.7126,0.8092,0.8934,0.8364,0.6512,0.6582,2.6262,0.4928,0.0822,0.0118,0.5958,0.9908,1.8126,1.1592,0.9272,2.7446,0.2332,0.4014,0.5546,1.1746,0.9726,1.2558,0.8144,0.102,0.6768,1.0916,1.1606,1.6728,0.8584,0.473,0.5536,1.1816,0.9974,0.9466,1.7906,0.4318,0.4828,0.4526,0.025,2.1394,0.7258,0.946,0.5678,0.515,0.899,0.9968,0.8244,0.5854,0.9678,0.957,0.5922,0.8038,1.6026,0.836,0.3128,0.5212,2.5762,0.3496,0.943,0.4452,0.993,0.5004,0.7476,1.7936,1.371,1.282,1.209,0.695,0.168,1.0374,0.6164,0.6726,0.8818,0.9518,0.7604,2.2436,0.8992,3.4528,0.2646,0.3036,0.6768,0.5324,0.2826,0.751,0.8742,0.96,0.152,0.2316,0.9636,1.0982,0.015,0.8214,1.3314,0.2156,0.84,0.928,0.8974,0.926,0.8958,0.6928,0.9246,0.789,1.154,0.8118,1.2648,0.7584,2.536,0.8954,0.667,0.635,0.3008,0.7304,0.4172,0.6546,1.6762,0.699,0.75,1.8566,1.158,0.914,0.1084,0.494,0.958,1.3368,0.8398,0.9622,1.0166,0.7728,0.366,0.9296,2.3618,0.829,0.5786,0.9812,0.9158,0.231,0.9112,1.0682,0.4994,0.6788,0.938,0.661,0.9478,0.7398,1.0,0.997,0.7996,0.7904,0.5728,0.6058,0.997,0.5802,0.9736,0.7306,0.5866,1.0208,0.4608,1.532,0.12,2.9516,0.5198,1.392,0.6828,0.3846,0.5112,0.6986,1.3886,0.8562,0.8702,0.2882,0.037,1.026,0.2546,1.757,0.9076,2.328,0.3568,1.4584,0.9866,1.041,0.4402,1.6618,0.9468,2.9792,0.8412,0.8056,0.5064,0.6702,2.304,0.5444,1.2766,0.3062,0.9476,0.2528,0.343,0.186,1.7456,1.1594,0.675,1.6626,0.7446,0.9788,0.6748,0.1962,1.9592,1.6466,0.3364,0.3482,2.7672,0.8888,1.3328,1.6424,0.6442,0.8186,0.9528,1.671,0.9148,0.4698,0.451,0.355,0.6174,0.2154,0.7148,0.1032,0.9828,0.7736,0.9224,0.9112,0.7572,0.302,0.9928,1.8696,0.8748,1.369,1.4068,0.4706,1.8786,0.8698,0.657,3.5968,0.1376,3.7696,0.8804,1.5434,0.8144,1.6346,1.3788,0.5242,0.4932,0.7622,3.341,0.8502,0.9684,0.1164,0.4634,0.6326,0.5088,0.8948,0.6596,0.9446,2.366,0.343,0.0622,0.9048,0.4652,0.7452,1.9794,0.8858,0.0164,1.9996,0.6538,1.689,0.5792,0.0116,0.7618,0.925,0.7072,1.29,0.1594,0.5236,0.241,0.6224,0.6672,0.0706,1.1098,0.8078,0.8636,0.8804,0.8636,2.8252,0.7854,0.9482,0.8574,0.9362,1.856,0.9632,0.2218,0.667,0.684,1.4328,0.0926,4.6052,0.8842,0.9854,0.2668,0.7458,0.7232,0.7394,0.1904,0.7548,0.4948,0.195,0.0706,1.0354,1.742,1.7124,0.8716,0.922,0.3044,0.049,1.8804,0.7568,0.5376,0.6752,0.7314,0.2888,0.2276,0.7732,0.8616,0.157,0.916,0.081,0.9988,0.7462,1.6428,0.5708,0.7438,0.839,0.4858,0.7608,0.9696,2.6504,0.6814,0.784,2.378,1.7028,0.6116,0.8692,0.797,0.6118,0.4632,0.8994,3.1174,0.7702,1.0808,2.4172,0.2356,0.6238,2.6294,0.8544,0.9142,0.0524,0.1636,0.0938,0.591,0.9336,0.9388,0.576,1.6214,0.9882,0.9248,2.3706,0.9628,0.9294,0.6972,2.1182,";
String[] line_ele = line.split(",");
float[] a1 = new float[line_ele.length];
for(int i = 0;i<line_ele.length;i++) {
a1[i] = Float.parseFloat(line_ele[i]);
}
// Calculate the sum without Arrays.sort();
float sum = 0;
for(int i = 0;i<a1.length;i++){
sum += a1[i];
}
System.out.println("Vor dem Arrays.sort(): sum = "+sum);
// Calculate the sum with Arrays.sort();
sum = 0;
Arrays.sort(a1);
for(int i = 0;i<a1.length;i++){
sum += a1[i];
}
System.out.println("Nachdem Arrays.sort(): sum = "+sum);
}
Zuletzt bearbeitet: