Alqoritm Analizi
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:
, əgər və ya ;
, əgər və ya ;
, əgər və ya .
Minimum və maksimum funksiyaları istifadə edərək həll yolunu nəzərdən keçirək. , , arasında median olacaq .
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)