Zadanie:
Napisz program w języku c#, który:
Umożliwia wpisanie liczby elementów tablicy - LN
Tworzy tablicę Tablica o liczbie elementów równej LN,
zawierającej losowe wartości typu double,
Oblicza średnią arytmetyczną tej tablicy
Podaje czas obliczania średniej arytmetycznej w
nanosekundach.
Następnie dokonaj pomiarów trwania czasu obliczeń
średniej arytmetycznej dla LN = 3·106 4·106 5·10 6 6 ·106 7·106 8 ·10 6 9·10 6 10 ·10 6
Dla każdej wartości LN
powtórzyć pomiar 5 razy.
teraz chyba juz jest dobrze czy ktos sie nie zgadza proszę o sprawdzenie
dla 3000000 wychodzi mi
1)średnia 0,49980562395308 Czas 20000100
2)średnia 0,49995585184275 Czas 20000000
3)średnia 0,500118617154502 Czas 20000000
4) średnia0,49974443158961 Czas 20000000
5) średnia 0,500142625290898 Czas20000000
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string Zmienna;
double Suma = 0, Srednia;
Random Generator;
int Ileliczb;
double[] Tablica;
int i;
DateTime Start ;
DateTime Stop;
TimeSpan Interwał;
long CzasObliczeń;
Generator = new Random();
Console.WriteLine("Podaj liczbę elementów tablicy:");
Zmienna = Console.ReadLine();
Ileliczb = Int32.Parse(Zmienna);
Tablica = new double[Ileliczb];
for (i = 0; i < Tablica.Length; i++)
{
Tablica[i] = Generator.NextDouble();
}
for (i = 0; i < Tablica.Length; i++)
{
Console.WriteLine("Tablica[" + i + "]=" + Tablica[i]);
}
CzasObliczeń = 0;
Start = DateTime.Now;
for (i = 0; i < Tablica.Length; i++)
{
Suma = Suma + Tablica[i];
}
Srednia = Suma / Tablica.Length;
Stop = DateTime.Now;
Interwał = Stop - Start;
CzasObliczeń = Interwał.Ticks * 100;
Console.WriteLine("Średnia arytmetyczna elementów tablicy wynosi:" + Srednia);
Console.WriteLine("Czas obliczeń:" + CzasObliczeń);
Console.ReadLine();
}
}
}