Sfname
@Sfname

Сортировка. Откуда в списке берутся два нуля?

Здравствуйте. Захотелось написать подобие сортировки, в целом всё работает, но если ввести 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, то выводится 0, 0, 1, 2, 3, 4, 5, 6, 7, 8.
Вот код:
vector<int> v;
	int temp, k, b, l;

	while(cin>>temp) v.push_back(temp);

	for (int i=0; i<50; ++i) {

	     for(int i=0; i<v.size(); ++i) {
	        
	        if(i+1>v.size() && v[i-1]>v[i]) {	
		  k=v[i-1];  b=v[i];
	          v[i-1]=b; v[i]=k;	
		  }
		if(v[i]>v[i+1]) {
	          k=v[i+1]; b=v[i];
	          v[i+1]=b; v[i]=k;
                  }
                }
               }
  • Вопрос задан
  • 154 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Wexter
for (int i=0; i<50; ++i) {

for(int i=0; i<v.size(); ++i) {


а чего третий раз не переобъявили?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект
18 апр. 2024, в 21:00
150 руб./за проект