//Дана ведомость зарплаты сотрудников, в которой указаны табельный номер и зарплата каждого. Вывести на экран список табельных номеров сотрудников в порядке увеличения зарплаты.
#include "stdafx.h"
#include <iostream>
#include <locale>
using namespace std;
void _tmain()
{setlocale (LC_ALL, "Russian");
const int n=5;
int f[n], z[n];
int x, p, t, l, i;
for(i=0;i<n;i++)>>f;
cout<<"Введите зарплату: ";
cin>>z;
}
for(l=0;l<n;l++)>1;t--)
{if(z[t]>z[t-1])
{p=z[t],z[t]=z[t-1],z[t-1]=p;
x=f[t];
f[t]=f[t-1];
f[t-1]=x;
}
}
}
cout<<"Список табельных номеров: "<
Другие языки программирования и технологии
Помогите найти ошибку в задаче, сортировка методом пузырька работает неправильно.
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
struct employee {
unsigned organic_number;
float salary;
};
int main() {
wcout.imbue(locale("rus_rus.866"));
const size_t size = 5;
employee sheet[size];
for (size_t emp = 0; emp < size; emp++) {
wcout << L"Введите табельный номер: ";
cin >> sheet[emp].organic_number;
wcout << L"Введите зарплату: ";
cin >> sheet[emp].salary;
}
employee temp;
size_t m;
for (size_t n = 1; n < size; n++)
for (m = 0; m < size - n; m++)
if (sheet[m].salary > sheet[m + 1].salary) {
temp = sheet[m];
sheet[m] = sheet[m + 1];
sheet[m + 1] = temp;
}
streamsize w = 11;
wcout << endl << L"Табельный номер\t Зарплата\n\n";
for (size_t emp = 0; emp < size; emp++)
cout << setw(w) << sheet[emp].organic_number << ' '
<< setw(w) << sheet[emp].salary << endl;
cin.get(); cin.get();
return 0;
}
#include <iomanip>
#include <string>
using namespace std;
struct employee {
unsigned organic_number;
float salary;
};
int main() {
wcout.imbue(locale("rus_rus.866"));
const size_t size = 5;
employee sheet[size];
for (size_t emp = 0; emp < size; emp++) {
wcout << L"Введите табельный номер: ";
cin >> sheet[emp].organic_number;
wcout << L"Введите зарплату: ";
cin >> sheet[emp].salary;
}
employee temp;
size_t m;
for (size_t n = 1; n < size; n++)
for (m = 0; m < size - n; m++)
if (sheet[m].salary > sheet[m + 1].salary) {
temp = sheet[m];
sheet[m] = sheet[m + 1];
sheet[m + 1] = temp;
}
streamsize w = 11;
wcout << endl << L"Табельный номер\t Зарплата\n\n";
for (size_t emp = 0; emp < size; emp++)
cout << setw(w) << sheet[emp].organic_number << ' '
<< setw(w) << sheet[emp].salary << endl;
cin.get(); cin.get();
return 0;
}
cin>>z;
тут точно заполняется массив? Я с си не очень близко знаком, но мне кажется, что z[ i ] Или это заменялка местная так покорёжила? Клади ты код на pastebin.com
Кстати, есть вариант обменять значения двух переменных черех xor не привлекая третью переменную.
Ещё я не очень понял зачем в массиве x, но я обычно и пузырёк делаю двумя вложенными циклами, а тут странная конструкция в for, которую наверняка ещё и мейлру погрыз.
тут точно заполняется массив? Я с си не очень близко знаком, но мне кажется, что z[ i ] Или это заменялка местная так покорёжила? Клади ты код на pastebin.com
Кстати, есть вариант обменять значения двух переменных черех xor не привлекая третью переменную.
Ещё я не очень понял зачем в массиве x, но я обычно и пузырёк делаю двумя вложенными циклами, а тут странная конструкция в for, которую наверняка ещё и мейлру погрыз.
пузырьковая сортировка- это поиск наибольшего (наименьшего) при каждом проходе.
http: //pastebin. com/ddz4vimz
там в цикле не l а i
там в цикле не l а i
Похожие вопросы
- Помогите найти ошибку в задачи,Паскаль...
- помогите найти ошибку в задаче по паскалю
- Сортировка методом пузырька. Си.
- Помогите с массивом и сортировкой методом пузырька в языке Си! Прогу надо сдать в пятницу срочно, не знаю как начать!
- Помогите, пожалуйста, найти ошибку в программе сортировки стека (по убыванию ) на Си.
- Срочно нужна сортировка методом пузырька на с++. Срочносрочносрочно
- Помогите пожалуйста найти ошибку в задаче (Язык программирования Си)
- Найдите ошибку в задаче по ТР
- Помогите найти ошибку в решении олимпиадной задаче...
- Pascal помогите пожалуйста найти ошибку в задаче.