Strona główna » Carckowanie » lang csharp » Dwuwymiarowy Array
| Dwuwymiarowy Array [wiadomość #725] |
śro, 04 lipiec 2007 09:03  |
Mark Ancher Wiadomości: 2 Dołączył(a): lipiec 2007 |
Junior Member |
|
|
Witam,
w jaki sposob moge uzyskac sumy w ponizej zdefiniowanym Array-u?
object [,] dataObj;
DataObj = new object[5,3];
q w 2
w z 5
w z 4
m d 2
q w 4
jako wynik oczekuje
q w 6
w z 9
m d 2
Pozdrawiam - Mark
|
|
|
| Re: Dwuwymiarowy Array [wiadomość #731 (odpowiedź na #725) ] |
czw, 05 lipiec 2007 04:21   |
Jerzy Glizda Wiadomości: 1 Dołączył(a): lipiec 2007 |
Junior Member |
|
|
"Mark Ancher" napisal:
> Witam,
> w jaki sposob moge uzyskac sumy w ponizej zdefiniowanym Array-u?
> object [,] dataObj;
> DataObj = new object[5,3];
> q w 2
> w z 5
> w z 4
> m d 2
> q w 4
> jako wynik oczekuje
> q w 6
> w z 9
> m d 2
object[,] dataObj;
dataObj = new object[5, 3];
dataObj [0,0] ='q'; dataObj [0,1] ='w'; dataObj [0,2] =2;
dataObj [1,0] ='w'; dataObj [1,1] ='z'; dataObj [1,2] =5;
dataObj [2,0] ='w'; dataObj [2,1] ='z'; dataObj [2,2] =4;
dataObj [3,0] ='m'; dataObj [3,1] ='d'; dataObj [3,2] =2;
dataObj [4,0] ='q'; dataObj [4,1] ='w'; dataObj [4,2] =4;
Dictionary<KeyValuePair<object, object>, int> myDict = new
Dictionary<KeyValuePair<object, object>, int>();
for (int x = dataObj.GetLowerBound(0); x <= dataObj.GetUpperBound(0); x++)
{
KeyValuePair<object, object> myKvp = new KeyValuePair<object,
object>(dataObj[x, 0], dataObj[x, 1]);
int tmpVal;
bool exists = myDict.TryGetValue(myKvp, out tmpVal);
if (exists)
myDict[myKvp] = (int)dataObj[x, 2] + tmpVal;
else
myDict.Add(myKvp, (int)dataObj[x, 2]);
}
object[,] dataOut = new object[myDict.Count,3];
int i = 0;
foreach (KeyValuePair<KeyValuePair<object, object>, int> kvp in myDict)
{
KeyValuePair<object, object> subkvp = kvp.Key;
dataOut[i, 0] = subkvp.Key;
dataOut[i, 1] = subkvp.Value;
dataOut[i, 2] = kvp.Value;
i++;
}
|
|
|
| Re: Dwuwymiarowy Array [wiadomość #733 (odpowiedź na #731) ] |
czw, 05 lipiec 2007 07:29  |
Mark Ancher Wiadomości: 2 Dołączył(a): lipiec 2007 |
Junior Member |
|
|
On 5 Jul., 10:21, "Jerzy Glizda" <jgli...@xxxxx.xx> wrote:
> "Mark Ancher" napisal:
>
> > Witam,
> > w jaki sposob moge uzyskac sumy w ponizej zdefiniowanym Array-u?
> > object [,] dataObj;
> > DataObj = new object[5,3];
> > q w 2
> > w z 5
> > w z 4
> > m d 2
> > q w 4
> > jako wynik oczekuje
> > q w 6
> > w z 9
> > m d 2
>
> object[,] dataObj;
> dataObj = new object[5, 3];
>
> dataObj [0,0] ='q'; dataObj [0,1] ='w'; dataObj [0,2] =2;
> dataObj [1,0] ='w'; dataObj [1,1] ='z'; dataObj [1,2] =5;
> dataObj [2,0] ='w'; dataObj [2,1] ='z'; dataObj [2,2] =4;
> dataObj [3,0] ='m'; dataObj [3,1] ='d'; dataObj [3,2] =2;
> dataObj [4,0] ='q'; dataObj [4,1] ='w'; dataObj [4,2] =4;
>
> Dictionary<KeyValuePair<object, object>, int> myDict = new
> Dictionary<KeyValuePair<object, object>, int>();
>
> for (int x = dataObj.GetLowerBound(0); x <= dataObj.GetUpperBound(0); x++)
> {
> KeyValuePair<object, object> myKvp = new KeyValuePair<object,
> object>(dataObj[x, 0], dataObj[x, 1]);
> int tmpVal;
> bool exists = myDict.TryGetValue(myKvp, out tmpVal);
> if (exists)
> myDict[myKvp] = (int)dataObj[x, 2] + tmpVal;
> else
> myDict.Add(myKvp, (int)dataObj[x, 2]);
>
> }
>
> object[,] dataOut = new object[myDict.Count,3];
>
> int i = 0;
> foreach (KeyValuePair<KeyValuePair<object, object>, int> kvp in myDict)
> {
> KeyValuePair<object, object> subkvp = kvp.Key;
> dataOut[i, 0] = subkvp.Key;
> dataOut[i, 1] = subkvp.Value;
> dataOut[i, 2] = kvp.Value;
> i++;
>
>
>
> }- Zitierten Text ausblenden -
>
> - Zitierten Text anzeigen -
Wielkie dzieki!
|
|
|
Idź do forum:
Aktualna data: czw lut 9 23:30:49 EST 2012
Łączny czas generowania strony wyniósł 0,00620 sekund. |