Выяснить, имеется ли среди чисел a1,…,an совпадающие - C (СИ)
Формулировка задачи:
Даны натуральное число n, целые числа a1,…,an. Выяснить , имеется ли среди чисел a1,…,an совпадающие . Помогите решить плз , Заранее спасибо !!!!!
Решение задачи: «Выяснить, имеется ли среди чисел a1,…,an совпадающие»
textual
Листинг программы
const int n = 10;
int flag = 0;
int a[n] = { ... };
for (int i=0; i<n-1; i++) {
for (int j=i+1; j<n; j++) {
if (a[i]==a[j]) {
flag = 1;
break;
}
}
}
if (flag)
puts("Yes.");
Объяснение кода листинга программы
- Объявлена переменная
nсо значением 10, которая представляет собой количество элементов в массивеa. - Объявлена переменная
flagсо значением 0, которая будет использоваться для отслеживания наличия совпадающих элементов в массивеa. - Массив
aинициализирован значениями, представленными в виде {...}. - В цикле
forперебираются все элементы массиваaс индексами от 0 до n-2. - В каждой итерации внутреннего цикла
forсравниваются текущий элемент массиваaс каждым последующим элементом до конца массива. - Если элементы совпадают, то переменная
flagустанавливается в значение 1 и цикл прерывается командойbreak. - После завершения внешнего цикла проверяется значение переменной
flag. - Если переменная
flagимеет значение 1, то выводится сообщениеYes.. - Если переменная
flagимеет значение 0, то выводится сообщениеNo..