Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 04.04.2019
Сообщений: 10

Не сортирует по весу, по имени и числу сортирует, в чем ошибка

04.04.2019, 16:02. Показов 544. Ответов 2

Студворк — интернет-сервис помощи студентам
#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
struct bagag
{
const char* name;
int chislo;
double ves;
}
sp[] = { {"Чемодан",10,7.3},
{"Сумка",23,15.8},
{"Коробка",15,9.45},
{"Чемодан",28,20.1},
{"Мешок",7,17.0} };
void out_sp(int, bagag*);
void sort(char, int, bagag*);
void main()
{
setlocale(LC_CTYPE, "Rus");
int n = 5;
cout << "Исходный список багажа:" << endl;

out_sp(n, sp);
sort('n', n, sp);
cout << "Сортировка по наименованию (по алфавиту):" << endl;

out_sp(n, sp);
sort('c', n, sp);
cout << "Сортировка по числу вещей:" << endl;

out_sp(n, sp);
sort('v', n, sp);
cout << "Сортировка по весу:" << endl;
}
void out_sp(int m, bagag* tabl)
{
for (int i = 0;i < m;i++)
cout << (i + 1) << "."
<< setw(7) << tabl[i].name
<< setw(2) << tabl[i].chislo
<< setw(4) << tabl[i].ves<<endl;
}
void sort(char ch, int m, bagag* lst)

{
bagag x;

for (int i = 0;i < m - 1;i++)
for (int j = i + 1;j < m;j++)
if ((ch == 'n' && strcmp(lst[i].name, lst[j].name) > 0) ||
(ch == 'c' && lst[i].chislo < lst[j].chislo) ||
(ch == 'v' && lst[i].ves < lst[j].ves))
{
x = lst[i];lst[i] = lst[j];lst[j] = x;
}
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.04.2019, 16:02
Ответы с готовыми решениями:

Не сортирует по весу
#include&lt;iostream&gt; #include&lt;string&gt; #include&lt;iomanip&gt; using namespace std; struct bagag { const char* name; int chislo; ...

Почему сортирует по 1 цифре переменной, а не по самому числу?
Nomer = input().split() Nomer = sorted(Nomer) print(Nomer) Вывод: 49 100 23 -100 157

Подскажите, массив сортирует, но в правильном порядке ставит только то, по чем сортировал
Нужно отсортировать по среднему баллу, оно сортирует, но данные того человека, чей это средней балл не перемещает вместе с баллом uses...

2
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
04.04.2019, 16:18
Цитата Сообщение от elf_val Посмотреть сообщение
Не сортирует по весу,
Дык, ты ж не выводишь отсортированное по весу...
Группировка функций ввела тебя в заблуждение...
0
0 / 0 / 0
Регистрация: 04.04.2019
Сообщений: 10
04.04.2019, 17:33  [ТС]
вот именно в этом и затупила
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.04.2019, 17:33
Помогаю со студенческими работами здесь

Неправильно сортирует
const n=20; var F:array of byte; i,k,j,c,m:integer; flag:boolean; begin Writeln('Исходный массив F'); for i:=1 to n do...

Почему не сортирует
Дан массив из N целых чисел. Получить из него массив отрицательных чисел и отсортировать его по возрастанию методом выбора ...

не сортирует по полю
Здравствуйте! Задаю сортировку формы в свойствах &quot;сортировка&quot; = .

Почему не сортирует??
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;math.h&gt; #include &lt;iomanip&gt; using namespace std; void perestanovka(int...

почему не сортирует?
procedure TForm4.Button2Click(Sender: TObject); var i, j : Integer; begin k:=strtoint(edit1.Text);// пишет undeclared...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru