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

Работа с массивами и списками. Методы сортировки и поиска.

31.12.2009, 03:25. Показов 1210. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите написать програму

Задачa
Написать программу которая выполняет следующие действия:
1) считывает данные из файла и сохраняет их в памяти в виде списока с двойными связями
2) Выводит данные на экран в виде двух столбцов. , Разделенных тремя символами пробела. Столбцы должны иметь заголовки X и Y соответственно.
3) Сортировать данные по возрастанию или по убыванию по выбору пользователя ,методом обмена
4) Выводить на экран отсортированную последовательность.
5) Осуществлять бинарный поиск введенного с клавиатуры величины и выводить на экран результат поиска. Величины для поиска (ключи поиска) должны храниться в программе в виде очереди, размер которой также вводится с клавиатуры. Результаты поиска будут отображаться на экране в порядке ввода ключей поиска.



Есть написани функция для сортировки и функция для поиска:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
void sort_choice(float *mas,int size)    //функция для сортировки
{
    float tmp;
    int i,j,e;
    tmp=mas[0];            //временная переменная
    for(i=0;i<size;i++)    //цикл для сортировки
    {
        e=i;
        tmp=mas[i];        //первое число массива присваиваем временной переменной
        for(j=i;j<size;j++)        
        {                        
            if(mas[j]<tmp)    //выбираем элемент с найменьшим значением    (1)
            {                    
                tmp=mas[j];        
                e=j;            
            }
        }
        if(e!=i)                //и обмениваем этот элемент с первым числом массива
        {                        
            mas[e]=mas[i];        
            mas[i]=tmp;            
        }
    }
    return;
}
 
 
////////////////////////////////////////
 
 
int binar_search(float *mas,float search_key,int size) //функция для поиска
{
    int min,mid,max;
    min=0;
    max=size-1;
    while(min<=max)     //цикл поиска выполняется пока мин значение меньше или равно максимальному
    {
        mid=(min+max)/2;        //находим середину массива
        if(search_key<mas[mid])    //если запрошенное нами значение меньше,чем середина массива,            (2)
        {
            max=mid-1;        //то присваиваем максимальному значению "среднее-1"
        }
        else                        
        {
            if(search_key>mas[mid])    //если запрошенное нами значение больше,чем середина массива,    (3)
            {
                min=mid+1;    //то присваиваем максимальному значению "среднее+1"
            }
            else
            {
            cout<<endl<<"Found element n = "<<mid+1<<endl; //выводим найденное значение
                return mid;
            }
        }
    }
    cout<<endl<<"Element not found"<<endl;
    return -1;
}



связь между даными одинаковой строчки в файле должна сохраняться!
Вложения
Тип файла: txt DP8106.txt (158 байт, 21 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.12.2009, 03:25
Ответы с готовыми решениями:

ВНЕШНИЕ методы сортировки и поиска
то может помочь с написание ВНЕШНИХ методов сортирови и поиска или кинуть ссылку где есть хорошо объясненные алгоритмы??помогите...

Работа с двумерными массивами (сортировки и перестановки в массиве)
Здравствуйте, можете помочь написать программу в паскаль? &quot;Массив размером М строк N столбцов заполняется символами из входного...

Работа с массивами через указатели, адреса. Функция сортировки выбором любого массива
Надо было написать программу сортировки с использованием функций из учебника. соответственно Compare, Find_minimum_index, Swap и SwapChar....

3
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
31.12.2009, 06:28
Цитата Сообщение от Андрій Посмотреть сообщение
в виде списока с двойными связями
т.е. двусвязный список. а этот код у тебя никакого отношения к спискам не имеет. переделывай.
0
0 / 0 / 0
Регистрация: 10.04.2009
Сообщений: 9
01.01.2010, 21:34  [ТС]
А как задать двусвязный список?
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
02.01.2010, 16:15
C
1
2
3
4
5
struct data {
   float val;
   struct data* prev;
   struct data* next;
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.01.2010, 16:15
Помогаю со студенческими работами здесь

Методы сортировки: цифровой сортировки и деревьев сравнений
помогите решить методы сортировки: цифровой сортировки и деревьев сравнений ДАНО :номер читательского...

Процедура поиска в глубину в графе, заданном списками инцидентности
Нужна помощь знающего Паскаль человека, по заданию: Напишите и используйте в программе процедуру поиска в глубину в графе, заданном...

Методы для работы с двумерными массивами
Всем привет. Нужно написать методы для работы с двумерными массивами. А именно: 1) Ввод массива любой размерности с клавиатуры 2) Его...

Класс,содержащий методы для работы с массивами
Создать класс, содержащий методы для работы с массивами. Класс должен содержать поле для количества элементов в массиве и поле для массива,...

Методы сортировки
Срочно нужны программы сортирующие числа по возрастанию и убыванию. Методы: 1)Пузырьком (по убыванию). 2)Выбором (по возрастанию и...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru