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

сдвиг массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Составить программу, которая определяет список символов... http://www.cyberforum.ru/cpp-beginners/thread392574.html
Дан текстовый файл, содержащий N строк (1-N<=1000). Составить программу, которая определяет список символов, одновременно встречающихся во всех N строках. Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п. Избегайте использования слишком большого количества смайлов в сообщениях в тематических разделах форума, а также "кричащего" выделения текста. Это никаким...
C++ как можно сделать это? если вообще возможно (не задача) есть задача, на двумерный массив... вывел массив 5х5 с рандомными числами, нужно найти числа локального минимума, т.е. чтоб число было меньше всех его соседей. можно ли читать весь массив(всю матрицу), а не делать это построчно? http://www.cyberforum.ru/cpp-beginners/thread392566.html
C++ Программа
Форумчане столкнулся с проблемой.Нужно создать программу для курсовой на тему несанкционированный доступ кто что посоветует ?
Помогите пожалуйста с коэффициентами C++
int i; IntNum = m_len*2; CString str; CRect rData; float dx = (float)rData.Width()/(m_len-1); // определяем коэффициенты для вывода чисел при рисовании float dy = (float)rData.Height()/(m_len-1);// где m_len - максимально возможное количество чисел CPen Pen1(PS_SOLID, 10, RGB(0,100,0)); // инициализация пера MyDC.SelectObject(&Pen1); // активизируем перо {for (i=0;i<m_len-1;i++); //...
C++ Работа с *.doc и *.docx http://www.cyberforum.ru/cpp-beginners/thread392554.html
Здравствуйте. Как можно напрямую работать с файлами *.doc и *.docx вне зависимости от того, установлен ли Word или нет? Честно гуглил, толку ноль. Спасибо.
C++ задача на массивы здравствуйте, не могли бы помочь есть задание написать функцию которая сортирует по убыванию массив( сортировка пузырьком) получился такой код #include <iostream> #include <stdlib.h> using namespace std; void sort(char* a, int size); void mas_out(char* a, int size); void mas_in(char* a, int size); подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
27.11.2011, 07:15     сдвиг массива
Цитата Сообщение от лизи Посмотреть сообщение
сдвинуть все элементы массива влево так что бы на первой позиции оказался минимальный элемент
при этом использовать дополнительные массивы нельзя
Очевидно, что ваша задача решается в два приема. Сначала вы находите минимальный элемент в массиве, а затем копируете все элементы, начиная с минимального элемента в начало массива.
Сразу же скажу, что копирование можно выполнить с помощью стандартной функции memcpy, которая объявлена в заголовочном файле <string.h>. Вопрос только упирается в то: разрешается ли вам использовать эту функцию, или требуется, чтобы вы самостоятельно выполнили копирование.

Давайте решать вашу задачу по порядку. Сначала напишем функцию, которая ищет минимальный элемент в массиве. Это функция будет возвращать индекс первого минимального элемента (в массиве может быть несколько минимальных элементов).

C++
1
2
3
4
5
6
7
8
9
10
11
12
unsigned int min_element( int a[], unsigned int n )
{
   unsigned int min = 0;
   unsigned int i;
 
   for ( i = 1; i < n; i++ )
   {
      if ( a[i] < a[min] ) min = i;
   }
 
   return ( min );
}
Итак, с помощью этой функции вы найдете индекс первого минимального элемента в массиве. Теперь вам надо скопировать элементы массива в его начало, начиная с минимума. Напишем соответствующую функцию

C++
1
2
3
4
5
6
void copy( int *dest, const int *source, unsigned int n )
{
   unsigned int i;
 
   for ( i = 0; i < n; i++ ) dest[i] = source[i];
}
Как пользоваться этими функциями. Допустим у вас есть целочисленный массив размерностью N: int a[N];

Тогда сначала ищем индекс минимального элемента:

C++
1
unsigned int min = min_element( a, N );
Затем осуществляем сдвиг элементов

C++
1
copy( a, &a[min], N - min );
Ву а ля, как говорят французы! Вам лишь осталось все это объединить вместе в одной программе.
 
Текущее время: 09:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru