// mas.cpp : main project file.
//#include "stdafx.h" - цей рядок в загальному випадку не потрібен. Створюйте не "консольний проект", а "пустий"
#include <iostream>
#include <cmath> //він тепер так зветься
using namespace std;
int main()
{
setlocale(LC_ALL, "Ukrainian");//ефект той самий, +10 до патріотичної карми
const int size = 5;
int mas[size];
//int tmp; не використовується
//int x = 32000; не робіть так! Якщо int двохбайтовий, то 32767 дійсно є максимальним значенням, але ж у вас він 4-байтовий...
// Введення даних у масив користувачем
for (int i = 0; i < size; i++){
cout << "Введiть " << i << " елемент масиву ";//i англійська замість української. Брудний хак, але що робити
cin >> mas[i];
}
// обробка
int x = abs( mas[0] - mas[1] );//а ось так вже спрацює, як треба
for (int i = 0; i < size - 1; i++)
{
for (int j = i + 1; j < size; j++) /*нащо перевіряти маленькі значення j? abs(mas[2]-mas[3])==abs(mas[3]-mas[2]), економимо перевірки.
До речі, школярам можна показати обидва варіанти, мовляв, можна і так, і так, якщо треба швидко написати -
перебираємо все, якщо треба, щоб швидко працювало - думаємо, які випадки можна пропустити*/
{
// if (i != j) вже не потрібне
// {
if (abs(mas[i] - mas[j]) < x)
{
x = abs(mas[i] - mas[j]);
}
// }
}
}
cout << "Найменший модуль різниці двох елементів має значення " << x << endl;
/* system("pause"); дуже погана практика - задля залишення результату на екрані викликати ліву програму.
Якщо реально потрібна пауза - можна зробити щось на кшталт cin.geline( NULL, 0 );
якщо треба затримувати результати компіляції на екрані - краще відповідним чином налаштувати середовище.
Тут http://stackoverflow.com/questions/193469/how-to-make-visual-studio-pause-after-executing-a-console-app-in-debug-mode -
пишуть, що запуск через Ctrl+F5 - без зневажувача - лишає вікно відкритим, перевірте */
return 0;
}