1) объявлять статический массив с заранее неизвестным количеством элементов? вот
это почитай
Посмотреть вложение 79914
2) проблемы в using namespace std я лично не вижу. мне удобнее писать cout вместо std::cout. на производительность и так далее не влияет абсолютно
3) два цикла. да потому что эту программу можно было реализовать простым сравнением последнего введенного числа с предыдущим, но в задании же написано:
Посмотреть вложение 79910
если им нужно сформировать массив, значит нужно, без самодеятельности.
4) на вон еще
литературки:
Посмотреть вложение 79911
P. S. это ж тот самый Дейкстра, который алгоритмы для поиска наименьшего пути для графов придумал 😀
5) можно избежать любого использования goto меток, т. е. любые goto метки можно заменить стандартными if`ами, что и рекомендуют делать.
кстати, это ж ты мне отвечал...