0 / 0 / 0
Регистрация: 10.03.2009
Сообщений: 17
1

В заданом одномерном масиве целого типа поменять местами следующие два элемента: первый минимальный и последний максимальный

16.03.2009, 18:37. Показов 1002. Ответов 1
Метки нет (Все метки)

Помогите пожалуйста, нужен полный текст программы. Заранее благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.03.2009, 18:37
Ответы с готовыми решениями:

Поменять в списке местами первый минимальный и последний максимальный элементы
односвязный список stl (c++) На основе данных входного файла создать список. Поменять в списке...

Массивы. Поменять местами первый минимальный и последний максимальный элементы
Условие: Дана последовательность из n действительных чисел. Замечание: Решить используя...

Поменять местами первый минимальный и последний максимальный элементы массива
В среде MS Visual C++ разработать программу, которая формирует одномерный целочисленный массив из N...

Поменять местами первый минимальный и последний максимальный элементы массива
"Дан одномерный целочисленный массив из N элементов, заданных случайными числами на промежутке [a;...

1
808 / 463 / 180
Регистрация: 09.03.2009
Сообщений: 1,560
16.03.2009, 20:12 2
Лучший ответ Сообщение было отмечено LilSaint как решение

Решение

Не совсем понятно, что такое "первый минимальный и последний максимальный". Если исходить из мысли "найти минимальный и максимальный и поменять их местами", то вот:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
void main(void)
{
  int a[10] = {2, 4, 3, 6, 1, 8, 4, 7, 9, 6}, i_min, i_max, c_min, c_max, tmp, i;
 
  for(c_min = c_max = a[0], printf("Source array: %2d ", a[0]), i_min = i_max = 0, i = 1; i < 10; i++)
  {
    printf("%2d ", a[i]);
    if(a[i] < c_min) { i_min = i; c_min = a[i]; }
    if(a[i] > c_max) { i_max = i; c_max = a[i]; }
  }
  tmp = a[i_min];
  a[i_min] = a[i_max];
  a[i_max] = tmp;
  for(printf("\nResult array: "), i = 0; i < 10; i++) printf("%2d ", a[i]);
}
Добавлено через 23 минуты 41 секунду
Не совсем понятно, что такое "первый минимальный и последний максимальный". Если исходить из мысли "найти минимальный и максимальный и поменять их местами", то вот:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
void main(void)
{
  int a[10] = {2, 4, 3, 6, 1, 8, 4, 7, 9, 6}, i_min, i_max, c_min, c_max, tmp, i;
 
  for(c_min = c_max = a[0], printf("Source array: %2d ", a[0]), i_min = i_max = 0, i = 1; i < 10; i++)
  {
    printf("%2d ", a[i]);
    if(a[i] < c_min) { i_min = i; c_min = a[i]; }
    if(a[i] > c_max) { i_max = i; c_max = a[i]; }
  }
  tmp = a[i_min];
  a[i_min] = a[i_max];
  a[i_max] = tmp;
  for(printf("\nResult array: "), i = 0; i < 10; i++) printf("%2d ", a[i]);
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.03.2009, 20:12
Помогаю со студенческими работами здесь

Поменять в массиве местами первый максимальный и последний минимальный элементы
помогите пожалуйста

В каждой строке матрицы поменять местами максимальный и первый, минимальный и последний элементы
Найти в каждой строке матрицы максимальный и минимальный элементы и поместить их на место первого...

Поменять местами первый минимальный и последний максимальный элементы заданного одномерного массива
Поменять местами первый минимальный и последний максимальный элементы массива.

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru