Untitled
unknown
plain_text
3 years ago
2.7 kB
16
Indexable
class Program
{
static double Metoda1(double[] t1)
{
double minimum1 = t1[0], maximum2 = t1[1], trzecia;
//z trzech liczb próbujemy znaleźć minimum maximum i wartość pomiędzy nimi
//minimum = pierwsza, maximum = druga
if (minimum1 > maximum2)
{
minimum1 = t1[1];
maximum2 = t1[0];
}
double podejrzana = t1[2];
if (podejrzana < minimum1)
{
trzecia = maximum2;
maximum2 = minimum1;
minimum1 = podejrzana; //wartosc najmniejsza
}
else
{
if (podejrzana < maximum2)
{
trzecia = maximum2;
maximum2 = podejrzana;
}
else
trzecia = podejrzana; //podejrzana<trzecia
}
for (int i = 3; i < t1.Length; i++)
{
podejrzana = t1[i];
if (podejrzana < minimum1)
{
trzecia = maximum2;
maximum2 = minimum1;
minimum1 = podejrzana;
}
else
{
if (podejrzana < maximum2)
{
trzecia = maximum2;
maximum2 = podejrzana;
}
else
if (podejrzana < trzecia)
trzecia = podejrzana;
}
}
return trzecia;
}
static void Main(string[] args)
{ /* Napisz metodę double Metoda1(double[] tablica) zwracającą trzecią pod względem wielkości wartość
* z tablicy liczb typu double (wartość taką, że tylko dwie wartości w tablicy są od niej mniejsze równe).
* Nie należy sortować tablicy. Zademonstruj działanie metody w programie ilustrującym.
* Uwaga. Zwracamy trzecią wartość czyli wartość taką, że tylko dwie wartości w tablicy są
* od nie mniejsze równe przykładowo: dla tablicy double[] d={1.1, 2.2, 1.1, 3.3} trzecia wartość to 2.2. */
double[] t1 = new double[] { 1.1, 2.2, 1.1, 3.3 };
for (int i = 0; i < t1.Length; i++)
Console.Write(t1[i] + " "); //wyświetlenie całej tablicy - wszystkie wartości
Console.WriteLine("Trzecia pod względem wielkości wartość to: " + Metoda1(t1));
Console.ReadKey();
}
}
}
Editor is loading...