Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
Erkosha
56 / 9 / 0
Регистрация: 10.02.2011
Сообщений: 88
#1

Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». - C++

12.03.2012, 21:01. Просмотров 1899. Ответов 16
Метки нет (Все метки)

Привет ВСЕМ!!! Обратите вниминие на эту задачку, ПЛЗ!!! =) Можно и без метода " пузырька"!!!

Дан массив А(40). Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька».
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2012, 21:01     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька».
Посмотрите здесь:
C++ Упорядочить по убыванию элементы массива, стоящие между первым максимальным и последним минимальным
Найти максимальный и минимальный элементы матрицы, и сумму элементов между ними C++
C++ Найти минимальный элемент массива и упорядочить все элементы левее его по убыванию, а правее – по возрастанию
Упорядочить четные элементы массива из n числовых элементов методом пузырька C++
C++ Элементы массива по убыванию модулей упорядочить методом выбора!
C++ Упорядочить по убыванию элементы массива между первым положительным и последним отрицательным
C++ Найти минимальный элемент массива, упорядочить элементы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,587
Записей в блоге: 12
12.03.2012, 21:14     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #2
где ваши нароботки?

Добавлено через 20 секунд
пользуйтесь поиском
Erkosha
56 / 9 / 0
Регистрация: 10.02.2011
Сообщений: 88
12.03.2012, 21:15  [ТС]     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #3
искал ничего не нашел((

Добавлено через 17 секунд
я новичок в этом деле ни чего не знаю(
soon
2539 / 1304 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
12.03.2012, 21:16     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #4
Цитата Сообщение от Erkosha Посмотреть сообщение
Дан массив А(40). Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька».
Цитата Сообщение от Erkosha Посмотреть сообщение
Можно и без метода " пузырька"!!!
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <iterator>
#include <functional>
 
int main()
{
    const std::size_t size = 10;
    std::srand(std::time(nullptr));
    std::vector<int> v(size);
    std::generate(v.begin(), v.end(), [] { return std::rand() % 21; });
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    const auto max = std::max_element(v.begin(), v.end());
    const auto min = std::min_element(v.begin(), v.end());
    std::cout   <<  std::endl
                <<  *max << ' ' << *min << std::endl;
    const auto first = std::min(min, max);
    const auto last = std::max(min, max);
    if(first != last)
        std::sort(first + 1, last, std::greater<int>());
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    return 0;
}
http://liveworkspace.org/code/c63cf9...005d2a241380d2
Erkosha
56 / 9 / 0
Регистрация: 10.02.2011
Сообщений: 88
12.03.2012, 21:20  [ТС]     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #5
спасибо за код!!! Но только на моем С++ не работает( можно переделать код как - нибудь попроще...

Добавлено через 59 секунд
без std...
D'2-ka
12 / 12 / 1
Регистрация: 12.03.2012
Сообщений: 120
12.03.2012, 21:21     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #6
Для примера напишем программу, в которой мы определим одномерный массив и найдём в нём максимальное и минимальное число:

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
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] array = new int[10]; //объявили одномерный массив из 10 интенджеровских чисел.
int min; // здесь будет храниться минимальное число массива
int max; //ну а здесь максимальное
for (int i = 0; i != 10; i++) сделаем так, чтобы массив заполнял пользователь с клавиатуры.
{
Console.WriteLine("Введите {0} элемент массива", i);
array[i] = Convert.ToInt32(Console.ReadLine());
}
max = array[0];//и максимальное и минимальное значение в начале равно первому элементу массива. Это логично я думаю и понятно всем.
min = array[0];
for (int i = 1; i != 10; i++)
{
if (array[i] > max)//если текущий элемент больше максимального, то он становится максимальным.
{
max = array[i];
}
if (array[i] < min)//если текущий элемент меньше минимального, то он становится минимальным.
 
{
min = array[i];
}
 
}
Console.WriteLine("Максимальное число в массиве: {0}", max);
Console.WriteLine("Минимальное число в массиве: {0}", min);
//ну и выводим их.
}
}
}
Erkosha
56 / 9 / 0
Регистрация: 10.02.2011
Сообщений: 88
12.03.2012, 21:24  [ТС]     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #7
это на С++??? Можете код полностью написать??? Мы просто еще Console.WriteLine
не проходили((
soon
2539 / 1304 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
12.03.2012, 21:26     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #8
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <iterator>
#include <functional>
 
template <class T> T gen() { return std::rand() % 21; }
 
int main()
{
    typedef std::vector<int> T_vec_int;
    typedef T_vec_int::iterator T_vec_int_iter;
    const std::size_t size = 10;
    std::srand(std::time(0));
    T_vec_int v(size);
    std::generate(v.begin(), v.end(), gen<int>);
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    const T_vec_int_iter max = std::max_element(v.begin(), v.end());
    const T_vec_int_iter min = std::min_element(v.begin(), v.end());
    std::cout   <<  std::endl
                <<  *max << ' ' << *min << std::endl;
    const T_vec_int_iter first = std::min(min, max);
    const T_vec_int_iter last = std::max(min, max);
    if(first != last)
        std::sort(first + 1, last, std::greater<int>());
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    return 0;
}
Добавлено через 34 секунды
Erkosha, нет, у D'2-ka, на C#
D'2-ka
12 / 12 / 1
Регистрация: 12.03.2012
Сообщений: 120
12.03.2012, 21:30     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #9
Цитата Сообщение от Erkosha Посмотреть сообщение
это на С++??? Можете код полностью написать??? Мы просто еще Console.WriteLine
не проходили((
как это не проходили, это самое начало изучения c# (консольные программы)
Erkosha
56 / 9 / 0
Регистрация: 10.02.2011
Сообщений: 88
12.03.2012, 21:31  [ТС]     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #10
извините, но не могли ли Вы написать на С++??? Прошу Вас...

Добавлено через 58 секунд
.......................
soon
2539 / 1304 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
12.03.2012, 21:33     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #11
D'2-ka, TC просил на плюсах, а вы на шарпе написали.

Erkosha, посты #8 и #4 на плюсах. Если что-то непоянтно - на лекции надо было ходить и самому писать. С бухты-барахты задания не даются.
D'2-ka
12 / 12 / 1
Регистрация: 12.03.2012
Сообщений: 120
12.03.2012, 21:34     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #12
а сорри невнимательность(
думал на с# надо
Erkosha
56 / 9 / 0
Регистрация: 10.02.2011
Сообщений: 88
12.03.2012, 21:35  [ТС]     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #13
C++...
soon
12.03.2012, 21:37
  #14

Не по теме:

D'2-ka, если вы пишете на C#, то, полагаю, ваши знания больше пригодятся здесь

D'2-ka
12 / 12 / 1
Регистрация: 12.03.2012
Сообщений: 120
12.03.2012, 21:38     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #15
для C++ все гораздо проще. Вот так:

C++
1
2
3
4
5
6
7
8
9
10
11
#include <algorithm>
template <typename T>
T MinElement(T Array[], size_t N)
{
    return *std::min_element(Array, Array + N);
}
template <typename T>
T MaxElement(T Array[], size_t N)
{
    return *std::max_element(Array, Array + N);
}
или даже так:

C++
1
2
3
4
#include <boost/algorithm/minmax_element.hpp>
int arr[] = {...};
const size_t N = sizeof(arr) / sizeof(arr[0]);
std::pair<int*, int*> minmax = boost::minmax_element(arr, arr+N);
все здесь: http://******************/faq/topic-201072.html
soon
12.03.2012, 21:42
  #16

Не по теме:

D'2-ka, там же сортировка еще. А если ТС просил "без stl", то буст-то точно его в шок повергнет

Все-все, молчу.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2012, 21:45     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька».
Еще ссылки по теме:
Найти минимальный элемент массива, умножить на него все отрицательные элементы, стоящие слева C++
C++ Найти максимальный и минимальный элементы массива
Найти минимальный и максимальный элементы массива C++
C++ Найти максимальный и минимальный элементы массива
C++ Найти максимальный и минимальный элементы массива

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

Или воспользуйтесь поиском по форуму:
D'2-ka
12 / 12 / 1
Регистрация: 12.03.2012
Сообщений: 120
12.03.2012, 21:45     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». #17
чувак поищи в гоогле. там столько примеров и таких же уже решенных вопросов.
А так только завтра смогу помочь.
Yandex
Объявления
12.03.2012, 21:45     Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька».
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru