Az Excelnek van egy funkciója a minimális érték meghatározására. A minimális érték feltétel szerinti meghatározása azonban problémás. A bővítmény egy funkciója képes megbirkózni ezzel a feladattal. =MINCESLI

(hasonló a szabványhoz Excel függvények SUMIF).

Excel verzióban 2016 felette pedig egy beépített funkció található MINESLI használhatod. Ha az Excel régebbi verziója, akkor ez a funkció a bővítmény telepítésével használható VBA-Excel.

A függvénynek a következő argumentumai vannak =MINESLI( RANGE;CRITERIA;[SEARCH_RANGE])

    HATÓTÁVOLSÁG- Ellenőrzött cellák köre.

  • KRITÉRIUM- Szám, kifejezés vagy szöveg formátumú feltétele, amely meghatározza a minimális érték ellenőrzését.
  • [ SEARCH_RANGE ]- Tényleges tartomány a minimális érték meghatározásához. Ha ez a paraméter nincs megadva, akkor a paraméter által megadott cellák kerülnek felhasználásra. HATÓTÁVOLSÁG.

1. példa

Kritériumként értékeket és logikai kifejezéseket adhat meg:

  1. Tekintsük a következő példát, amely meghatározza a szakirodalomban a minimális pontszámot. Ehhez a paraméterben KRITÉRIUM meg van adva az "Irodalom" érték és a paraméter HATÓTÁVOLSÁG- tételek listája.
  2. Ha logikai kifejezést ad meg kritériumként «<>Orosz", akkor az orosz nyelv kivételével minden tantárgyból megállapítják a minimum osztályzatot.

2. példa

A következő példában a paraméter SEARCH_RANGE nincs beállítva, így a minimális érték a paraméterben megadott cellák között kerül meghatározásra HATÓTÁVOLSÁG.

Ha nagy táblákkal kell dolgoznia, biztosan talál duplikált összegeket elszórva az egész oszlopban. Ugyanakkor előfordulhat, hogy ki kell választania a táblázatból az első legkisebb számértékkel rendelkező adatokat, amelyeknek saját ismétlődései vannak. Szükségünk van az adatok feltétel szerinti automatikus kiválasztására. Az Excelben sikeresen használhat tömbképletet erre a célra.

Hogyan válasszunk kijelölést Excelben feltétel alapján

Az első legkisebb szám megfelelő értékének meghatározásához feltétel alapján kell kiválasztani a táblázatból. Tegyük fel, hogy az elsőt szeretnénk tudni olcsó áruk a piacon ebből az árlistából:

Az automatikus mintavételt egy képlet hajtja végre, amelynek szerkezete a következő:

INDEX(adattartomány_kijelöléshez, MIN(IF(tartomány=MIN(tartomány),ROW(tartomány)-ROW(oszlop_fejléc),"")))

A "data_range_for_selection" helyen meg kell adni az A6:A18 értéktartományt egy táblázatból (például szövegből) való kijelöléshez, amelyből az INDEX függvény kiválaszt egy eredményt. A "tartomány" argumentum a numerikus értékekkel rendelkező cellák azon területét jelenti, amelyből az első legkisebb számot kell kiválasztani. A második ROW függvény "oszlop_fejléce" argumentumában meg kell adnia egy cellahivatkozást olyan oszlopfejléccel, amely számértékek tartományát tartalmazza.

Természetesen ezt a képletet tömbben kell végrehajtani. Ezért a bevitel megerősítéséhez nem csak az Enter billentyűt kell megnyomnia, hanem a teljes CTRL + SHIFT + Enter billentyűkombinációt. Ha mindent helyesen csinált, a képletsávban göndör kapcsos zárójelek jelennek meg.

Vegye figyelembe az alábbi ábrát, ahol ez a képlet a tömbben a B3 cellába került:

A megfelelő érték kiválasztása az első legkisebb számmal:


Ezzel a képlettel a számokhoz viszonyított minimális értéket tudtuk kiválasztani. Ezután elemezzük a képlet elvét, és lépésről lépésre elemezzük az összes számítás teljes sorrendjét.



Hogyan működik a feltétel szerinti kiválasztás

Az INDEX funkció kulcsszerepet játszik itt. Névleges feladata, hogy a forrástáblázatból (az első argumentumban megadott - A6:A18) válasszon bizonyos számoknak megfelelő értékeket. Az INDEX a második (sorszám a táblázatban) és a harmadik (oszlopszám a táblázatban) argumentumban meghatározott feltételek szerint működik. Mivel az A6:A18 forrástáblánknak csak 1 oszlopa van, nem adjuk meg a harmadik argumentumot az INDEX függvényben.

Számos számítási függvényt használnak a táblázat sorszámának kiszámításához a szomszédos B6:B18 tartomány legkisebb számával szemben, és ezt használják a második argumentum értékeként.

Az IF funkció lehetővé teszi, hogy feltétel szerint válasszon értéket egy listából. Az első argumentum azt határozza meg, hogy a B6:B18 tartomány egyes celláit hol ellenőrzik a legkisebb számérték: IFB6:B18=MINB6:B18. Ily módon egy tömb jön létre a program memóriájában logikai értékeket Igaz és hamis. Esetünkben 3 tömbelem TRUE-t fog tartalmazni, mivel a 8-as minimális érték még 2 ismétlődést tartalmaz a B6:B18 oszlopban.

A következő lépés annak meghatározása, hogy a tartomány mely sorai tartalmazzák az egyes minimális értékeket. Erre az első legkisebb érték meghatározása miatt van szükségünk. Ezt a feladatot a LINE függvény segítségével valósítjuk meg, a programmemóriában lévő tömbelemeket a lap sorszámaival tölti fel. De először ezekből a számokból kivonjuk a számot a táblázat első sorából - B5-ből, azaz az 5-ből. Ez azért történik, mert az INDEX függvény a táblázaton belüli számokkal működik, nem pedig a dolgozói számokkal. Excel lap. Ugyanakkor a ROW függvény csak a lap sorszámait tudja visszaadni. Ahhoz, hogy ne kapjunk eltolást, össze kell hasonlítani a lap és a táblázat sorszámainak sorrendjét a különbség kivonásával. Például, ha a táblázat a lap 5. sorában van, akkor a táblázat minden sora 5-tel kisebb lesz, mint a lap megfelelő sora.

Az összes minimális érték kiválasztása és a táblázat összes sorszámának egyeztetése után a MIN funkció a legkisebb sorszámot választja ki. Ugyanebben a sorban lesz az első legkisebb szám, amely a B6:B18 oszlopban előfordul. Ezen sorszám alapján az INDEX függvény kiválasztja a megfelelő értéket az A6:A18 táblázatból. Ennek eredményeként a képlet ezt az értéket adja vissza a B3 cellában a számítás eredményeként.

Hogyan válasszuk ki a legnagyobb számot tartalmazó értéket az Excelben

Miután megértette a képlet elvét, most könnyen módosíthatja és más feltételekhez igazíthatja. Például a képlet módosítható az első maximális érték kiválasztásához az Excelben:


Ha módosítania kell a képlet feltételeit úgy, hogy az Excelben az első maximumot válassza ki, de 70-nél kevesebbet:

!}

Hogyan válasszuk ki az első nullától eltérő minimális értéket az Excelben:


Mint látható, ezek a képletek csak a MIN és MAX függvényekben és argumentumaikban térnek el egymástól.

Most már semmi sem korlátoz. Miután megértette a képletek működési elveit egy tömbben, könnyen módosíthatja azokat számos feltételhez, és gyorsan megoldhat számos számítási problémát.

Az Excelnek van egy funkciója a minimális érték meghatározására. A minimális érték feltétel szerinti meghatározása azonban problémás. A bővítmény egy funkciója képes megbirkózni ezzel a feladattal. =MINCESLI(hasonlóan a szabványos Excel SUMIF funkcióhoz).

Excel verzióban 2016 felette pedig egy beépített funkció található MINESLI használhatod. Ha az Excel régebbi verziója, akkor ez a funkció a bővítmény telepítésével használható VBA-Excel.

A függvénynek a következő argumentumai vannak =MINESLI( RANGE;CRITERIA;[SEARCH_RANGE])

    HATÓTÁVOLSÁG- Ellenőrzött cellák köre.

  • KRITÉRIUM- Szám, kifejezés vagy szöveg formátumú feltétele, amely meghatározza a minimális érték ellenőrzését.
  • [ SEARCH_RANGE ]- Tényleges tartomány a minimális érték meghatározásához. Ha ez a paraméter nincs megadva, akkor a paraméter által megadott cellák kerülnek felhasználásra. HATÓTÁVOLSÁG.

1. példa

Kritériumként értékeket és logikai kifejezéseket adhat meg:

  1. Tekintsük a következő példát, amely meghatározza a szakirodalomban a minimális pontszámot. Ehhez a paraméterben KRITÉRIUM meg van adva az "Irodalom" érték és a paraméter HATÓTÁVOLSÁG- tételek listája.
  2. Ha logikai kifejezést ad meg kritériumként "<>Orosz", akkor az orosz nyelv kivételével minden tantárgyból megállapítják a minimum osztályzatot.

2. példa

A következő példában a paraméter SEARCH_RANGE nincs beállítva, így a minimális érték a paraméterben megadott cellák között kerül meghatározásra HATÓTÁVOLSÁG.

KÜLÖNLEGES ESETEK

Egyes esetekben a megoldást az összes lehetséges kombináció felsorolásával kaphatjuk meg.

Program (C#):

Nyilvános statikus int FactGen(int n) ( int tény = új int; tény = 1; for (int i = 1; i< n + 1; i++) fact[i] = i * fact; return fact; } public static int PermsGenerator(int arr, int num, int fact) { int i, j, f, newind, newnum, newval, size = arr.Length; int result = new int; Array.Copy(arr, result, size); for (i = 0, newnum = num; i < size - 1; i++) { newind = newnum / (f = fact); newnum = newnum - newind * f; newval = result; for (j = i + newind; j >én; j--) eredmény[j] = eredmény; eredmény[i] = újérték; ) eredmény visszaadása; ) public static int SumAbs(int arr) ( int sum = 0, prev = arr; foreach (int value in arr) ( sum += Math.Abs(value - prev); prev = value; ) return sum; ) public static int Max. új int;Tömb.Másolás(arr, rendezve, méret);Tömb.Rendezés(rendezett);for (i = 0; i< fact; i++) { if ((sum = SumAbs(perm = PermsGenerator(sorted, i, fact))) >smax) ( smax = összeg; eredmény = perm; ) if (detprn) ( Console.Write("\nPermutáció: "); foreach (int érték perm-ben) Console.Write(érték + " "); Console.Write(" Sum: (0) Max Sum: (1)", sum, smax); ) ) Console.Write("\nKiválasztás: "); foreach (int érték az arr-ben) Console.Write(érték + " "); Console.Write("\nRendezett kijelölés: "); foreach (int érték rendezve) Console.Write(érték + " "); Console.Write("\nLegjobb permutáció: "); foreach (int érték az eredményben) Console.Write(érték + " "); Console.WriteLine("\nMaximális mennyiség: (0)", smax); birodalom=válogatott; birodalom=válogatott; birodalom=válogatott; for (i = 2, j = 0; i< size - 1; i++, j = (size) - 1 + ((i + 1) & 1) - j) empire[i] = sorted[j]; Console.Write("Эвристический алгоритм: "); foreach (int value in empire) Console.Write(value + " "); Console.WriteLine("\nСумма: {0}", SumAbs(empire)); return result; } static void Main(string args) { bool binc; int i, j, n, nmax = 10; int arr; Random rand = new Random(); MaxArr(new int { 1, 2, 3, 4 }, false); MaxArr(new int { 1, 2, 3, 4, 5 }, false); for (n = 6; n < nmax + 1; n++) { arr = new int[n]; for (i = 0; i < n;) { arr[i] = rand.Next(1, 5 * n); binc = true; for (j = 0; j < i; j++) binc &= (arr[i] != arr[j]); if (binc) i++; } MaxArr(arr, false); } }

Eredmények:

Kezdeti minta: 1 2 3 4 Rendezett minta: 1 2 3 4 Legjobb permutáció: 2 4 1 3 Max. Összeg: 7 Heurisztikus: 2 4 1 3 Összeg: 7 Kezdeti minta: 1 2 3 4 5 Rendezett minta: 1 2 3 4 5 Legjobb permutáció: 2 4 1 5 3 Max. összeg: 11 Heurisztikus algoritmus: 2 4 1 5 3 Összeg: 11 Eredeti minta: 26 10 21 4 27 5 Rendezett minta: 4 5 10 21 26 27 Legjobb permutáció: 10 275 421 Max. összeg: 99 Heurisztikus: 10 26 4 27 5 21 Összeg: 99 Eredeti minta: 34 3 32 16 28 27 26 Rendezett minta: 3 16 26 27 28 32 34 Legjobb permutáció: 26 28 3 34 27 max. : 26 28 3 34 16 32 27 Összeg: 97 Eredeti minta: 27 3 34 38 18 29 31 39 Rendezett minta: 3 18 27 29 31 34 38 39 Legjobb permutáció: 29 34 8 31 39 max. 29 34 3 39 18 38 27 31 Összeg: 128 Kezdeti minta: 40 27 4 9 32 35 41 39 2 Válogatott minta: 2 4 9 27 32 35 39 40 41 Legjobb permutáció: 32 2 39 4 40 9 41 27 35 Maximális összeg: 223 Heurisztikus algoritmus: 27 35 2 41 4 40 9 39 32 Összeg: 221 Kezdeti minta: 41 35 45 26 8 minta 1 35 45 26 8 24 25 27 33 34 35 41 45 Legjobb permutáció: 27 34 16 35 18 41 24 45 25 33 Max. összeg: 150 Heurisztikus algoritmus: 27 34 16 45 18 41 25 35 35 m 25 35

Ilyen módon:

  1. Az eredeti tömbhöz jobb kombinációt találtak.
  2. A heurisztikus algoritmusra nem találtak azonnal ellenpéldát.

ÁLTALÁNOS HATÁROZAT (2018.02.10.)

Hadd
a = (a 0 = M 1 , a 1 = M 2 , …, a n-2 = M n-1, a n-1 = M n ) - kezdeti sorozat,
b = (b 0 , b 1 , …, b n-2 , b n-1 ) - ugyanaz a sorozat növekvő sorrendben,
с = (c 0 , c 1 , …, c n-2 , c n-1 ) - szükséges sorozat.

Tekintsük külön a páros és a páratlan n eseteit.

n eset = 2k

S(a) = S c (a) - |a n-1 - a 0 |, ahol
S c a) = |a 0 - a 1 | + |a 1 - a 2 | + … + |a n-3 - a n-2 | + |a n-2 - a n-1 | + |a n-1 - a 0 |.

S c (a) egy algebrai összeg, amely minden eredeti a i elemet kétszer tartalmaz, maximális értéke pedig

S c_max = 2∑ i = 0, …, k-1 (h i - b i), ahol h i = b i+k, i = 0…k-1.

Ez az érték a permutációk két változatában érhető el:
1) c 2i h (minden legnagyobb elemnek páros indexe van);
2) c 2i + 1 h (minden legnagyobb elem páratlan indexű).

Ugyanakkor a minimális |a n-1 - a 0 | = b k - b k-1 úgy érhető el, hogy a c sorozat szélein egy pár medián elemet helyezünk el.

Az S maximális összeg egyenlő S max = 2∑ i = 0, …, k-2 (b i+k - b i) + b k-1 - b k , vagy

S max = 2∑ i = 0, …, k-2 (b n-1-i - b i) + b n-k - b k-1,

és azokban az esetekben érhető el, amikor a c sorozat tartalmazza a legnagyobb elemeket egy sakktábla mintában, és a b k-1 és b k medián elemek a sorozat szélén vannak.
Az ilyen permutációk száma páronként eltérő a i esetén 2(k-1)! 2.

n eset = 2k+1

Egy hasonló megfontolás azt mutatja, hogy S maximuma egyenlő

S max = 2∑ i=0…k-2 (b k+2+i - b k) + b k+1 - b k-1 + max (b k+1 - b k , b k - b k-1), vagy

S max = 2∑ i=0…k-2 (b n-1-i - b i) + b n-k - b k-1 + max (b k+1 - b k , b k - b k-1),

és azokban az esetekben érhető el, amikor a k-nál nagyobb indexű elemek lépcsőzetesek, és a medián elem és a hozzá legközelebb eső elem a sorozat szélein található.
Az ilyen permutációk száma páronként eltérő a i esetén nem kisebb, mint (k-1)!k! (ha a medián azonos értékkel különbözik a legközelebbi szomszédoktól, akkor kétszer annyi permutáció van).

PROGRAM (C#):

Nyilvános statikus üres T(karakterlánc szövege, Stopper időzítő) ( TimeSpan ts = időzítő.Eltelt; karakterlánc elteltTime = String.Format("(0:00):(1:00):(2:00).(3:00) ", ts.Óra, ts.Percek, ts.Másodpercek, ts.Milliszekundum / 10); Console.Write(szöveg + eltelt idő); ) public static int FactGen(int n) ( int tény = új int; tény = 1; for (int i = 1; i< n + 1; i++) fact[i] = i * fact; return fact; } public static int PermsGenerator(int arr, int num, int fact) { int i, j, f, newind, newnum, newval, size = arr.Length; int result = new int; Array.Copy(arr, result, size); for (i = 0, newnum = num; i < size - 1; i++) { f = fact; newind = i; while (newnum >= f) ( newind++; newnum -= f; ) newval = eredmény; for (j = newind; j > i; j--) eredmény[j] = eredmény; eredmény[i] = újérték; ) eredmény visszaadása; ) public static int SumAbs(int arr) ( int sum = 0, prev = arr; foreach (int value in arr) ( sum += Math.Abs(value - prev); prev = value; ) return sum; ) public static int CalcOptQuant (int n) ( int k = (n - 1) / 2, k2 = Math.Max(k-2, 0); int fact = FactGen(k + 2); return 2*fact[k] * ( (n-k-k< 2) ? fact : fact[k]); } public static int CalcMaxSum(int brr) { int i, size = brr.Length, k = size / 2, sum = 0; for (i = 0; i < k - 1; i++) sum += brr - brr[i]; sum = 2 * sum + brr - brr; if (size - 2 * k >0) összeg += Math.Max(brr - brr[k], brr[k] - brr); visszatérési összeg; ) public static int MaxArr(int arr, bool detprn) ( int i, j, sum, smax = -1, size = arr.Length; int perm, result = new int, fact = FactGen(size), rendezve = new int , empire = new int; Stopper sw = new Stopper(); Console.WriteLine("\nKezdeti kiválasztás: "); foreach (int érték az arr-ben) Console.Write(value + " "); sw.Restart(); for (i = 0; i< fact; i++) { perm = PermsGenerator(arr, i, fact); sum = SumAbs(perm); if (sum >smax) ( smax = összeg; eredmény = perm; ) ) if (detprn) Console.Write("\nLegjobb permutációk"); for (i = 0, j = 0; i< fact; i++) { perm = PermsGenerator(arr, i, fact); sum = SumAbs(perm); if (sum == smax) { j++; if (detprn) { Console.Write("\n#{0}: ", j); foreach (int value in perm) Console.Write(value + " "); } } } Array.Copy(arr, sorted, size); Array.Sort(sorted); Console.WriteLine("\nОтсортированная выборка: "); foreach (int value in sorted) Console.Write(value + " "); Console.Write("\nФакт Наибольшая сумма: {0} Лучших перестановок: {1}" + "\nРасчёт Наибольшая сумма: {2} Лучших перестановок, не менее: {3}", smax, j, CalcMaxSum(sorted), CalcOptQuant(size)); T("\nRuntime = ", sw); sw.Reset(); return result; } static void Main(string args) { bool binc; int i, j, n, nmax = 12; int arr = new int; Random rand = new Random(); MaxArr(new int { 0, 1, 2, 3, 4, 5 }, true); MaxArr(new int { 5, 1, 3, 5, 7, 9 }, true); MaxArr(new int { 0, 1, 2, 3, 4 }, true); MaxArr(new int { 0, 1, 2, 3 }, true); MaxArr(new int { 0, 1, 2 }, true); for (n = 3; n <= nmax; n++) { Array.Resize(ref arr, n); for (i = 0; i < n;) { arr[i] = rand.Next(10, 99); binc = true; for (j = 0; j < i; j++) binc &= (arr[i] != arr[j]); if (binc) i++; } MaxArr(arr, false); } }

EREDMÉNYEK:

Kezdeti minta: 0 1 2 3 4 5 Legjobb permutációk #1: 2 4 0 5 1 3 #2: 2 4 1 5 0 3 #3: 2 5 0 4 1 3 #4: 2 5 1 4 0 3 #5: 3 0 4 1 5 2 #6: 3 0 5 1 4 2 #7: 3 1 4 0 5 2 #8: 3 1 5 0 4 2 Rendezett minta: 0 1 2 3 4 5 Tény Legnagyobb összeg: 17 Legjobb permutációk: 8 Számítás Legnagyobb összeg: 17 Legjobb permutációk, min: 8 Futásidő = 00:00:00.01 Kezdeti minta: 5 1 3 5 7 9 Legjobb permutációk #1: 5 1 7 3 9 5 #2: 5 1 9 3 7 5 # 3 : 5 3 7 1 9 5 #4: 5 3 9 1 7 5 #5: 5 7 1 9 3 5 #6: 5 7 3 9 1 5 #7: 5 9 1 7 3 5 #8: 5 9 3 7 1 5 #9: 5 1 7 3 9 5 #10: 5 1 9 3 7 5 #11: 5 3 7 1 9 5 #12: 5 3 9 1 7 5 #13: 5 7 1 9 3 5 #14 : 5 7 3 9 1 5 #15: 5 9 1 7 3 5 #16: 5 9 3 7 1 5 Rendezett minta: 1 3 5 5 7 9 Tény Legnagyobb összeg: 24 Legjobb permutációk: 16 Számítás Legnagyobb összeg: 24 Legjobb permutációk , legalább: 8 Futásidő = 00:00:00.01 Kezdeti minta: 0 1 2 3 4 Legjobb permutációk #1: 1 3 0 4 2 #2: 1 4 0 3 2 #3: 2 0 4 1 3 #4: 2 1 4 0 3 #5: 2 3 0 4 1 #6: 2 4 0 3 1 #7: 3 0 4 1 2 #8: 3 1 4 0 2 rendezve Jelenlegi minta: 0 1 2 3 4 Tény Legnagyobb összeg: 11 Legjobb permutációk: 8 Számítás Legnagyobb összeg: 11 Legjobb permutációk, legalább: 4 Futásidő = 00:00:00.01 Kezdeti minta: 0 1 2 3 Legjobb permutációk #1: 1 3 0 2 #2: 2 0 3 1 Rendezett minta: 0 1 2 3 Tény Legnagyobb összeg: 7 Legjobb permutációk: 2 Számítás Legnagyobb összeg: 7 Legjobb permutációk, legalább: 2 Futásidő = 00:00:00.00 Kezdeti minta: 0 1 2 Legjobb permutációk #1: 0 2 1 #2: 1 0 2 #3: 1 2 0 #4: 2 0 1 Rendezett minta: 0 1 2 kisebb, mint: 2 Futásidő = 00:00:00.01 Kezdeti minta: 25 51 87 Rendezett minta: 25 51 87 Tény Legnagyobb összeg: 98 Legjobb permutációk: 2 Számítás Legnagyobb összeg: 98 Legjobb permutációk, legalább: 2 Futásidő = 00:00:00.00 Eredeti minta: 78 10 34 64 Rendezett minta: 10 34 64 Legmagasabb 78 Tény : 166 Legjobb permutációk: 2 Számítás Legnagyobb összeg: 166 Legjobb permutációk, nem kevesebb ee: 2 Futásidő = 00:00:00.00 Eredeti minta: 23 26 93 16 45 Rendezett minta: 16 23 26 45 93 :00:00.00 Eredeti minta: 85 12 11 13 90 88 Rendezett minta: 8 139 legmagasabb Összeg: 382 Legjobb permutációk: 8 Számítás Legnagyobb összeg: 382 Legjobb permutációk, legalább: 8 Futásidő = 00:00:00.00 Kezdeti minta: 82 43 28 55 29 39 18 Rendezett minta: 18 28 29 39 summ. Legmagasabb F5 823 206 Legjobb permutációk: 24 Számítás Legnagyobb összeg: 206 Legjobb permutációk, legalább: 24 Futásidő = 00:00:00. 00 Eredeti minta: 64 20 43 89 47 94 52 71 Rendezett minta: 20 43 47 52 64 71 89 94 00.02 Eredeti minta: 45 53 81 17 76 97 26 50 511 Rendezett 5 7 26 50 511 5 7 5 6 00.23 Eredeti minta: 55 51 36 12 82 63 89 58 14 22 Rendezett minta: 12 14 22 36 51 55 58 63 82 89 Futásidő = 00:00:02.46 Eredeti minta: 67 56 9 5 5 5 5 8 5 : 35 49 53 55 65 67 69 78 94 95 96 permutáció, legalább: 5760 Futásidő = 00:00:29.21 Kezdeti minta: 50 43 39 64 59 18 81 16 44 12 15 77 Rendezett minta: 12 15 16 18 39 43 44 50 59 64 77 81

AZ EREDMÉNYEK ELEMZÉSE

A tesztelés minden figyelembe vett esetben teljes mértékben megerősítette a javasolt általános megoldást.

Ez a táblázat szinte minden számítást kezel. Ideális könyvelésre. A számításokhoz speciális eszközök - képletek - vannak. Alkalmazhatók egy tartományra vagy egyes cellákra. Ahhoz, hogy megtudja a minimális vagy maximális számot egy cellacsoportban, nem szükséges saját kezűleg megkeresni őket. Jobb az ehhez biztosított lehetőségeket használni. Hasznos lesz az átlagérték kiszámításának módja is az Excelben.

Ez különösen igaz a nagy mennyiségű adatot tartalmazó táblázatokra. Ha az oszlopban például a bevásárlóközpont termékeinek árai szerepelnek. És meg kell találnia, hogy melyik termék a legolcsóbb. Ha "manuálisan" keres rá, sok időt vesz igénybe. De az Excelben ez néhány kattintással megtehető. A segédprogram a számtani átlagot is kiszámítja. Végül is ez két egyszerű művelet: összeadás és osztás.

Maximum és minimum

Így találhatja meg a maximális értéket az Excelben:

  1. Helyezze a cella kurzort bárhová.
  2. Lépjen a "Képletek" menübe.
  3. Kattintson a Funkció beszúrása gombra.
  4. Válassza a „MAX” lehetőséget a listából. Vagy írja be ezt a szót a "Keresés" mezőbe, és kattintson a "Keresés" gombra.
  5. Az Argumentumok ablakban adja meg annak a tartománynak a címét, amelynek maximális értékét tudni szeretné. Az Excelben a cellanevek egy betűből és egy számból állnak ("B1", "F15", "W34"). A tartomány neve pedig az első és az utolsó cella, amely benne van.
  6. Cím helyett több számot is írhat. Ezután a rendszer a legnagyobbat mutatja.
  7. Kattintson az OK gombra. Az eredmény abban a cellában jelenik meg, ahol a kurzor volt.

A következő lépés egy értéktartomány megadása

Most könnyebb lesz kitalálni, hogyan találja meg a minimális értéket az Excelben. A műveletek algoritmusa teljesen azonos. Egyszerűen válassza a „MIN” értéket a „MAX” helyett.

Átlagos

A számtani átlag kiszámítása a következőképpen történik: összeadjuk a halmaz összes számát, és elosztjuk a számukkal. Az Excelben kiszámolhat összegeket, megtudhatja, hány cella van egy sorban stb. De túl bonyolult és hosszú. Sok különböző funkciót kell majd használnia. Tartsa szem előtt az információkat. Vagy írj le valamit egy papírra. De az algoritmus leegyszerűsíthető.

Így találhatja meg az átlagot az Excelben:

  1. Helyezze a cellakurzort a táblázat tetszőleges szabad helyére.
  2. Lépjen a "Képletek" fülre.
  3. Kattintson a "Funkció beszúrása" gombra.
  4. Válassza az ÁTLAG lehetőséget.
  5. Ha ez az elem nem szerepel a listában, nyissa meg a „Keresés” opcióval.
  6. A Number1 területen adja meg a tartomány címét. Vagy írjon be több számot különböző mezőkbe "Szám2", "Szám3".
  7. Kattintson az OK gombra. A kívánt érték megjelenik a cellában.

Így nem csak a táblázat pozícióival, hanem tetszőleges halmazokkal is végezhet számításokat. Az Excel valójában egy fejlett számológép szerepét tölti be.

egyéb módszerek

A maximum, minimum és átlag más módon is megtalálható.

  1. Keresse meg az „Fx” feliratú funkciósort. Az asztal fő munkaterülete felett van.
  2. Helyezze a kurzort bármelyik cellába.
  3. Írjon be egy argumentumot az "Fx" mezőbe. egyenlőségjellel kezdődik. Ezután jön a képlet és a tartomány/cella címe.
  4. Valami ilyesmit kell kapnia: "=MAX(B8:B11)" (maximum), "=MIN(F7:V11)" (minimum), "=ÁTLAG(D14:W15)" (átlag).
  5. Kattintson a funkciómező melletti "pipa" gombra. Vagy csak nyomja meg az Entert. A kívánt érték megjelenik a kiválasztott cellában.
  6. A képlet közvetlenül a cellába másolható. A hatás ugyanaz lesz.

Az "Autofunctions" Excel eszköz segít megtalálni és kiszámítani.

  1. Helyezze a kurzort a cellába.
  2. Keresse meg azt a gombot, amelynek neve "Auto" karakterrel kezdődik. Ez az Excelben kiválasztott alapértelmezett beállítástól függ (AutoSum, AutoNumber, AutoOffset, AutoIndex).
  3. Kattintson az alatta lévő fekete nyílra.
  4. Válassza a MIN (minimum), MAX (maximum) vagy AVERAGE (átlag) értéket.
  5. A képlet megjelenik a megjelölt cellában. Kattintson bármelyik másik cellára - az hozzáadódik a függvényhez. „Húzza” körülötte a dobozt, hogy lefedje a tartományt. Vagy a Ctrl billentyű lenyomva tartása mellett kattintson a rácsra egy-egy elem kiválasztásához.
  6. Ha végzett, nyomja meg az Enter billentyűt. Az eredmény egy cellában jelenik meg.

Az Excelben az átlag kiszámítása meglehetősen egyszerű. Nem kell hozzáadni, majd elosztani az összeget. Ennek külön funkciója van. A minimumot és maximumot is megtalálhatod egy készletben. Sokkal egyszerűbb, mint kézzel számolni, vagy számokat keresni egy hatalmas táblázatban. Ezért az Excel számos olyan tevékenységi területen népszerű, ahol pontosságra van szükség: üzlet, könyvvizsgálat, személyi nyilvántartások kezelése, pénzügy, kereskedelem, matematika, fizika, csillagászat, közgazdaságtan, tudomány.