Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Threading;
- namespace Zadanie7
- {
- class Program
- {
- const int size = 10;
- static double rozdzielczosc = 0.01;
- //static double[] wyniki = new double[size];
- static List<double> wyniki = new List<double>();
- static double poprzednia, nastepna, maximum;
- static Thread[] wątki = new Thread[size];
- static int licznik=0;
- static double funkcja(double x)
- {
- return Math.Log(x) * (Math.Sin(x) * Math.Sin(x) + Math.Sin(10 * x) * Math.Sin(10 * x));
- }
- static void Main(string[] args)
- {
- for (int i = 0; i < size; i++)
- {
- wątki[i] = new Thread(new ThreadStart(max));
- wątki[i].Name = i.ToString();
- wątki[i].Start();
- }
- for (int i = 0; i < size; i++)
- {
- Console.WriteLine(wyniki[i]);
- }
- Console.ReadLine();
- }
- static public void max()
- {
- double y = licznik + 1;
- maximum = funkcja(y);
- nastepna = funkcja(y + rozdzielczosc);
- poprzednia = funkcja(y - rozdzielczosc);
- do
- {
- nastepna = funkcja(y + rozdzielczosc);
- if (maximum <= nastepna)
- {
- poprzednia = maximum;
- maximum = nastepna;
- }
- else if (maximum <= poprzednia)
- {
- nastepna = maximum;
- maximum = poprzednia;
- rozdzielczosc*= (-1);
- }
- } while (maximum > nastepna && nastepna > poprzednia);
- wyniki.Add(maximum);
- licznik++;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement