Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.68/19: Рейтинг темы: голосов - 19, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 11.03.2014
Сообщений: 36

Дан массив из N чисел. Найти наибольший элемент массива и поменять его местами с наименьшим элементом

11.09.2014, 20:15. Показов 4126. Ответов 34
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Найти наибольший элемент массива и поменять его местами с наименьшим элементом.
Builder. C++
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.09.2014, 20:15
Ответы с готовыми решениями:

Одномерный массив. Найти наибольший элемент массива и поменять его местами с наименьшим элементом
Дан массив из N чисел. Найти наибольший элемент массива и поменять его местами с наименьшим элементом.

Найти наибольший чёрный элемент массива и поменять его местами с наименьшим нечетным элементом
Найти наибольший чёрный элемент массива и поменять его местами с наименьшим нечетным элементом. Если одного из такого элемента нет, то всем...

Дан массив X(N).Найти наибольший элемент и поменять его местами с первым элементом.
Добрый день.Помогите, пожалуйста, решить задачу. Дан массив X(N).Найти наибольший элемент и поменять его местами с первым элементом.

34
318 / 180 / 73
Регистрация: 18.01.2014
Сообщений: 387
11.09.2014, 20:37
На С++ это можно сделать так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <ctime>
#include <vector>
#include <cstdlib>
#include <iostream>
#include <algorithm>
using namespace std;
 
int main() {
    srand(static_cast<unsigned>(time(nullptr)));
    int n;
    cout << "размер массива? ";
    cin >> n;
    vector<int> a(n);
    for (auto &e : a) e = rand() % 100;
    cout << "исходный массив:\n";
    for (auto e : a) cout << e << ' ';
    iter_swap(min_element(begin(a), end(a)), max_element(begin(a), end(a)));
    cout << "\n\nизмененный массив:\n";
    for (auto e : a) cout << e << ' ';
    cout << endl;    
}
Не знаю, будет ли это работать в С++ Builder'e.
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
11.09.2014, 20:42
Цитата Сообщение от Asti7 Посмотреть сообщение
Найти наибольший элемент массива и поменять его местами с наименьшим элементом.
ваши действия?
знаешь как найти минимальный и максимальный элемент?
как поменять местами два элемента? с использованием сторонней переменной и без оной?
Цитата Сообщение от BlackIce Посмотреть сообщение
Не знаю, будет ли это работать в С++ Builder'e.
скорее всего нет, так на вскидку ты используешь 11 стандарт
0
0 / 0 / 0
Регистрация: 11.03.2014
Сообщений: 36
11.09.2014, 20:46  [ТС]
Цитата Сообщение от ValeryS Посмотреть сообщение
ваши действия?
знаешь как найти минимальный и максимальный элемент?
как поменять местами два элемента? с использованием сторонней переменной и без оной?
немного начало есть,но как поменять местами не помню))
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
11.09.2014, 20:50
Цитата Сообщение от Asti7 Посмотреть сообщение
немного начало есть,
покажь
Цитата Сообщение от Asti7 Посмотреть сообщение
но как поменять местами не помню))
у тебя в квартире есть стол и диван
нужно поменять их местами
как менять будешь?
0
318 / 180 / 73
Регистрация: 18.01.2014
Сообщений: 387
11.09.2014, 20:53
Цитата Сообщение от Asti7 Посмотреть сообщение
немного начало есть,но как поменять местами не помню
C++
1
2
3
int tmp = a[imax];
a[imax] = a[imin];
a[imin] = tmp;
Здесь imax, imin - индексы максимального и минимального элементов.

Цитата Сообщение от ValeryS Посмотреть сообщение
скорее всего нет, так на вскидку ты используешь 11 стандарт
Тогда билдер пора отправить на свалку.
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
11.09.2014, 20:54
Цитата Сообщение от BlackIce Посмотреть сообщение
Тогда билдер пора отправить на свалку.
и иже с ним еще кучу компиляторов
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
11.09.2014, 20:59
Цитата Сообщение от ValeryS Посмотреть сообщение
и иже с ним еще кучу компиляторов
Только clang, только хардкор
0
0 / 0 / 0
Регистрация: 11.03.2014
Сообщений: 36
11.09.2014, 21:05  [ТС]
Цитата Сообщение от BlackIce Посмотреть сообщение
C++
1
2
3
int tmp = a[imax];
a[imax] = a[imin];
a[imin] = tmp;
А что такое tmp?
0
318 / 180 / 73
Регистрация: 18.01.2014
Сообщений: 387
11.09.2014, 21:12
Цитата Сообщение от Asti7 Посмотреть сообщение
А что такое tmp?
Переменная, которую вы будете использовать, как промежуточную, чтобы обменять два элемента массива между собой.

Цитата Сообщение от Asti7 Посмотреть сообщение
но как поменять местами не помню))
Это называется -- не знал, но забыл
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
11.09.2014, 21:15
Цитата Сообщение от Asti7 Посмотреть сообщение
А что такое tmp?
временная переменная
ты вообще учится не хочешь?
вот тебе пример
Цитата Сообщение от ValeryS Посмотреть сообщение
у тебя в квартире есть стол и диван
нужно поменять их местами
как менять будешь?
создаем алгоритм
1 отодвинули диван на свободное место(сохранили во временной переменной)
2 передвигаем стол на место дивана
3 передвигаем диван из свободного места(временной переменной) на место стола
кодруем
C++
1
2
3
тмп=диван
диван=стол
стол=тмп
для массивов будет выглядеть
Цитата Сообщение от BlackIce Посмотреть сообщение
C++
1
2
3
int tmp = a[imax];
a[imax] = a[imin];
a[imin] = tmp;
0
11.09.2014, 21:24

Не по теме:

Мы с сыном воду и сок между стаканами переливали - все проще, чем диваны двигать :)

0
11.09.2014, 21:30

Не по теме:

Цитата Сообщение от _Ivana Посмотреть сообщение
Мы с сыном воду и сок между стаканами переливали
и что?
куда все делось ? как обратно в стаканы переливали, из между :)

0
11.09.2014, 21:37

Не по теме:

Ну при переливах между стаканами интуитивно очевидна необходимость третьего стакана :) На этот педагогический момент и был упор. Правда, эта аналогия упускает из вида, что в компьютере при первом переливе у нас и в стакане-приемнике появляется содержимое, и из стакана-источника не пропадает ;D, но в этом смысле диваны тоже не лучше :)

0
11.09.2014, 21:48

Не по теме:

Цитата Сообщение от _Ivana Посмотреть сообщение
Ну при переливах между стаканами интуитивно очевидна необходимость третьего стакана
Алкаши, использующие питоны и прочие руби, способны исполнить данный фокус без третьего стакана:
Python
1
a, b = b, a
:D

0
11.09.2014, 21:52

Не по теме:

BlackIce, этапять! :) Но подозреваю, что это просто зрительная иллюзия и в рукаве у них спрятан таки третий стакан, если не два :)

0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
11.09.2014, 22:00
Цитата Сообщение от BlackIce Посмотреть сообщение
лкаши, использующие питоны и прочие руби, способны исполнить данный фокус без третьего стакана:
Мы конечно не алкаши, а так сильно пьющие
но вот на Си, классика
a=3
b=2
бинарные операции

C
1
2
3
a=a^b; //3^2=1
b=a^b; //1^2=3
a=a^b; //1^3=2
арифметика
C
1
2
3
a=a-b;// 3-2=1
b=a+b; //1+2=3
a=b-a; //3-1=2
0
0 / 0 / 0
Регистрация: 11.03.2014
Сообщений: 36
11.09.2014, 22:03  [ТС]
Можете,пожалуйста проверить,где ошибки и исправить?)))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream.h>
 
#define N 10
#pragma argsused
int main(int argc, char* argv[])
{ int i,A[N], tmp, a[N], max, min, B[N];
  {cout<<"A[i]="; cin>>A[i];}
  for (i=1; i<N; i++)
  {cout<<"A[i]="; cin>>A[i];}
  max=A[0]; min=B[0];
    tmp=a[max];
a[max] = a[min];
a[min] = tmp;
cout<<endl<<"max="<<max;
cout<<endl<<"min="<<min;
return 0;
}
0
318 / 180 / 73
Регистрация: 18.01.2014
Сообщений: 387
11.09.2014, 22:09
Цитата Сообщение от ValeryS Посмотреть сообщение
Мы конечно не алкаши, а так сильно пьющие
но вот на Си, классика
Сможете так же шаблоную функцию написать? Чтобы работала с целыми, с плавающей запятой, строками?

Цитата Сообщение от Asti7 Посмотреть сообщение
Можете,пожалуйста проверить,где ошибки и исправить?)))
Программа не выполняет задание, исправлять нечего, надо дописывать программу.
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
11.09.2014, 22:14
Цитата Сообщение от BlackIce Посмотреть сообщение
Чтобы работала с целыми, с плавающей запятой, строками?
Не пробовал, но думаю я на С смогу и запросто (Самоуверенно, да? ) Берем объект, берем его сайзоф в байтах, берем указатель на начало, приводим его к типу чар и побайтово проделываем фокусы ValeryS в цикле по всему сайзофу - на выходе получаем полный своп объектов независимо от их типов и содержимого.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.09.2014, 22:14
Помогаю со студенческими работами здесь

Дан массив X(N). Найти наибольший элемент и поменять его местами с первым положительным элементом, если такой есть
Дан массив X(N). Найти наибольший элемент и поменять его местами с первым положительным элементом, если такой есть. Вроде как понял,...

В массиве из 6 целых чисел найти наибольший элемент и поменять его местами с первым элементом массива
Очень прошу, помогите развязать: 1)В массиве из 6 целых чисел найти наибольший элемент и поменять его местами с первым элементом массива ...

Найти наибольший элемент массива и поменять его местами с первым элементом
В массиве из 20 элементов найти наибольший элемент и поменять его местами с первым элементом.

Найти наибольший элемент массива и поменять его местами с первым элементом
Дан массив X(N). Найти наибольший элемент и поменять его местами с первым элементом.

Найти наибольший элемент массива и поменять его местами с последним элементом
В массиве из 15 вещественных чисел найти наибольший элемент n поменять его местами с последним элементом .


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru