Autor Beitrag
Levis
Hält's aus hier
Beiträge: 2

Win Vista
C# (VS 2008 Express Edition)
BeitragVerfasst: Sa 02.05.09 15:20 
Hallo liebes Forum,

nach gründlichem Suchen muss ich nun meine Frage eben doch stellen, da mir all die Fragen (und Antworten) zum Thema Arrays und Summen nichts gebracht haben.

Ich habe ein Programm erstellt, dass mir 31 Zufallszahlen zwischen -20 und + 29,9 erzeugt (Temperaturen eines Monats). Nun will ich diese 31 Zahlen, die ich in einem Array gespeichert habe, addieren und danach den Durchschnittswert berechnen und ausgeben.

Allerdings bin ich nun an der Summe des Arrays hängen geblieben. Wie kriege ich das hin? Mit der Math - Funktion? Oder einfach nur eine neue Variable deklarieren?

Bin dankbar über jede Antwort von euch! =)

Liebe Grüße,
Levis

PS: Wenn mir jemand noch sagen könnte, wie ich nen CSharp Quelltext in meinen Beitrag einfüge dann kann ich euch den auch noch geben, falls das hilfreich ist.
sk197666
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Sa 02.05.09 15:37 
Hallo Levis,

ist es sowas was Du suchst?

Gruß Sk

ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
using System;

namespace Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            // Demo-Array erzeugen
            double[] values = new double[31];

            // Randomizer erzeugen
            Random randomizer = new Random();

            // Demo-Array befüllen
            for (int i = 0; i < values.Length; i++)
                values[i] = (double)randomizer.Next(-2030) + (double)randomizer.Next(110) / 10;

            // Variable um Ergebnis zu speichern
            double result = 0;

            // Array summieren
            foreach (double value in values)
                result += value;

            // Durchschnitt errechnen
            double average = result / (double)values.Length;

            // Ergebnis ausgeben
            Console.WriteLine("Summe: " + result);
            Console.WriteLine("Schnitt: " + average);

            Console.ReadKey();
        }
    }
}


Moderiert von user profile iconKha: Code- durch C#-Tags ersetzt
Levis Threadstarter
Hält's aus hier
Beiträge: 2

Win Vista
C# (VS 2008 Express Edition)
BeitragVerfasst: Sa 02.05.09 16:06 
Hallo Sk,

danke für deine schnelle Antwort. Ja, dein Programm macht genau das, was ich suche.

Allerdings hab ich das mit diesem foreach noch nicht so ganz verstanden. Wie funktioniert das denn genau? Ich brauche dafür ja anscheinend zwei Variablen, oder? Einmal mein array und dann noch eine zusätzliche wenn ich das in deinem Quellcode richtig sehe.
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Sa 02.05.09 16:12 
Siehe z.B. OpenBook: 2.7 Programmschleifen mit for, foreach, do, while

Jürgen
Beni92
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Sa 02.05.09 18:58 
oder versuche es so(ohne for each schleife):
ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            float a = 0;
            float[] hah = new float[31];
            Random würfel = new Random();
            for (int i = 0; i < hah.Length; i++)
            {
                float lala = würfel.Next(-2030) + würfel.Next(110)/10;
                hah[i] = lala;
            }
            

            for (int i = 0; i < hah.Length; i++)
            {
                a += hah[i];
            }
            Console.WriteLine("Die Summe ist: " + a);
            Console.ReadLine();
        
        }
    }
}


lg
beni