Orta ədəd#108

Orta ədəd (Həll təhlili)

Brutal qüvvə istifadə edərək həll yolu nəzərdən keçirək, şərt operatorundan istifadə edək. , , arasında median olacaq:

Minimum və maksimum funksiyaları istifadə edərək həll yolunu nəzərdən keçirək. , , arasında median olacaq a + b + c – \text{min}(a, b, c) – \text{max}(a, b, c).

Sıralama istifadə edərək həll yolunu nəzərdən keçirək. Üç rəqəmi uzunluğu 3 olan bir massivə oxuyuruq və sıralayırıq. Massivin orta elementi üç rəqəm arasında median olacaq.

Alqoritm Tətbiqi

Giriş məlumatlarını oxuyuruq. Cavabı formuladan istifadə edərək hesablayırıq və çıxış edirik.

scanf("%d %d %d", &a, &b, &c);
if ((b <= a && a <= c) || (b >= a && a >= c)) res = a;
else if ((a <= b && b <= c) || (a >= b && b >= c)) res = b;
else res = c;
printf("%d\n", res);

Alqoritm Tətbiqi – Min və Max istifadəsi

#include <stdio.h>

int a, b, c, res;

int min(int x, int y) {
    return (x < y) ? x : y;
}

int max(int x, int y) {
    return (x > y) ? x : y;
}

int main(void) {
    scanf("%d %d %d", &a, &b, &c);
    res = a + b + c - min(a, min(b, c)) - max(a, max(b, c));
    printf("%d\n", res);
    return 0;
}

Alqoritm Tətbiqi – Sıralama istifadəsi

#include <cstdio>
#include <algorithm>
using namespace std;

int m[3];

int main(void) {
    scanf("%d %d %d", &m[0], &m[1], &m[2]);
    sort(m, m+3);
    printf("%d\n", m[1]);
    return 0;
}

Java Tətbiqi

import java.util.*;

public class Main {
    static int min(int x, int y, int z) {
        return Math.min(x, Math.min(y, z));
    }

    static int max(int x, int y, int z) {
        return Math.max(x, Math.max(y, z));
    }

    public static void main(String[] args) {
        Scanner con = new Scanner(System.in);
        int a = con.nextInt();
        int b = con.nextInt();
        int c = con.nextInt();
        int res = a + b + c - max(a, b, c) - min(a, b, c);
        System.out.println(res);
        con.close();
    }
}

Python Tətbiqi

a, b, c = map(int, input().split())
res = a + b + c - min(a, b, c) - max(a, b, c)
print(res)