Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переместить в конец массива все его положительны 
:(
    Опции темы
Krol01
Дата 27.3.2011, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 6.12.2009

Репутация: нет
Всего: нет



Задание
изменить исходный массив следующим образом: переместить в конец массива все его положительные элементы. Порядок следования не перемещаемых элементов не изменять. Вывести на дисплей количество перемещенных элементов.

Помогите исправить ошибки, вот что у меня вышло:

Код

#include <stdio.h>
#include <math.h>
#include <algorithm>
using namespace std;


int arr [10]={1,-6,-3,4,8,10,0,8,-1,10};
int arr1 [10]={};
int begin=0;//начало
int end=9;//конец

int main (void)
{

   printf("Массив:\n");
   for(int i=begin;i<=end;   i++)
   printf("%d ",   arr);
   
   int c=0;//счетчик перемешений

   //перемещение элементов
    for(int i=begin;i<=end;   i++)
   for(int j=begin;j<=end; j++)
    {
    if (arr>0 && i<end)
     {
     swap(arr,arr[end]);
    arr=arr1[j];
     end--;
     c++;
   }
 
   //вывод измененного массива
   for(int j=begin;j<=end;   j++)
   {
      printf("\n");
      printf("%d ",   arr1[j]);
   }   
   
return 0;
}
}

PM MAIL   Вверх
semibug
Дата 27.3.2011, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 323
Регистрация: 27.3.2009

Репутация: нет
Всего: нет



На первый взгляд видно обращение к массиву как к указателю:
Цитата(Krol01 @  27.3.2011,  17:51 Найти цитируемый пост)
if (arr>0 && i<end)

Цитата(Krol01 @  27.3.2011,  17:51 Найти цитируемый пост)
printf("%d ",   arr);


PM   Вверх
Krol01
Дата 27.3.2011, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 6.12.2009

Репутация: нет
Всего: нет



Цитата(semibug @ 27.3.2011,  18:09)
На первый взгляд видно обращение к массиву как к указателю:
Цитата(Krol01 @  27.3.2011,  17:51 Найти цитируемый пост)
if (arr>0 && i<end)

Цитата(Krol01 @  27.3.2011,  17:51 Найти цитируемый пост)
printf("%d ",   arr);



ну так я сравниваю каждый i-ый элемент, вот поэтому и стоит arr[i]...или  вы не о том? 
не понял просто ход ваших мыслей =)

Это сообщение отредактировал(а) Krol01 - 27.3.2011, 18:14
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0554 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.