Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2010, 16:22   #11
ВасяСВВ
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 33
По умолчанию

Понял)!!!!!!
ВасяСВВ вне форума Ответить с цитированием
Старый 30.11.2010, 16:43   #12
KemanSR
Форумчанин
 
Регистрация: 03.05.2010
Сообщений: 129
По умолчанию

Вообще указатель на массив - это адрес его первого элемента. Поэтому имея указатель и количество элементов, можно полноценно работать с массивом.
P.S.: А при желании имея только указатель.
KemanSR вне форума Ответить с цитированием
Старый 30.11.2010, 16:46   #13
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
Сообщение от KemanSR Посмотреть сообщение
Вообще указатель на массив - это адрес его первого элемента. Поэтому имея указатель и количество элементов, можно полноценно работать с массивом.
P.S.: А при желании имея только указатель.
Ну я гляжу страуструп действует на пользу!!!!!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 30.11.2010, 18:31   #14
ВасяСВВ
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 33
По умолчанию

Я это знал, что указатель показывает на первый елемент))). По ходу и структуры можно передавать из функции у функциу. Логика такая же??
ВасяСВВ вне форума Ответить с цитированием
Старый 30.11.2010, 19:16   #15
KemanSR
Форумчанин
 
Регистрация: 03.05.2010
Сообщений: 129
По умолчанию

Вы такой ЗАМЕЧАТЕЛЬНЫЙ человек, Хакер, спасибо! А у Вас Василий, как программа заработала?
KemanSR вне форума Ответить с цитированием
Старый 30.11.2010, 19:39   #16
ВасяСВВ
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 33
По умолчанию

Вот програма:

Код:
#include<iostream.h>
int i,n,e,d;
void func(int *masuv, int n)     //Функция обробки массива  по спаданию
{

  for (int i = 0; i<9; ++i){
        int tmp = 0;
        for (int j=(i+1); j<10; ++j)
            if (abs(masuv[i])<abs(masuv[j])) {     //сортировка должна быть по модулю:)
                tmp = masuv[i];
                masuv[i] = masuv[j];
                masuv[j] = tmp;
                }
    }
  for (i=0;i<n;i++)        //вывод масива
  cout<<masuv[i]<<endl;


}

int main()
{
    int* masuv;
 cout<< "Vvedit kilkist elementiv masuva : ";
 cin >>n;
 masuv = new int [n];
 for (i=0;i<n;i++){           //ввод випалкових чисел у заданому  диапазони
  masuv[i]=rand()%20-5;
  cout<<i<<"="<<masuv[i]<<endl;
 }

    func(masuv, n);       //вызов функции

  system("Pause");
}
ВасяСВВ вне форума Ответить с цитированием
Старый 30.11.2010, 20:26   #17
KemanSR
Форумчанин
 
Регистрация: 03.05.2010
Сообщений: 129
По умолчанию

Посмотрите, так не "по-порядочней".
Вариант 1:
Код:
#include <iostream>

using namespace std;

int GetItemCount()
{
// Реализуй сам
}

void InitArray(int* pArr, int iItemCount)
{
// Реализуй сам
}

void PrintArray(int* pArr, int iItemCount)
{
// Реализуй сам
}

void SortArray(int* pArr, int iItemCount)
{
// Реализуй сам
}

int main()
{
	int iItemCount = GetItemCount();
	int* piArray = new int[iItemCount];
	InitArray(piArray, iItemCount);
	PrintArray(piArray, iItemCount);
	SortArray(piArray, iItemCount);
	PrintArray(piArray, iItemCount);
	system("pause");
	return 0;
}
Вариант 2:
Код:
#include <iostream>

using namespace std;

int iItemCount;

int GetItemCount()
{
// Реализуй сам
}

void InitArray(int* pArr)
{
// Реализуй сам
}

void PrintArray(int* pArr)
{
// Реализуй сам
}

void SortArray(int* pArr)
{
// Реализуй сам
}

int main()
{
	iItemCount = GetItemCount();
	int* piArray = new int[iItemCount];
	InitArray(piArray);
	PrintArray(piArray);
	SortArray(piArray);
	PrintArray(piArray);
	system("pause");
	return 0;
}
KemanSR вне форума Ответить с цитированием
Старый 30.11.2010, 21:21   #18
ВасяСВВ
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 33
По умолчанию

Щас зделаю)) Может....О_о)))
Спасибо))
ВасяСВВ вне форума Ответить с цитированием
Старый 30.11.2010, 21:28   #19
ВасяСВВ
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 33
По умолчанию

А во втором варианте не надо передавать размерность массива??
Это что такое :
Код:
using namespace std;
ВасяСВВ вне форума Ответить с цитированием
Старый 30.11.2010, 21:45   #20
ВасяСВВ
Пользователь
 
Регистрация: 18.10.2010
Сообщений: 33
По умолчанию

Зделал по варианту 1

Код:
#include <iostream.h>



int GetItemCount(int* array, const int n)        // Для чего эта функция ???
{
 for (int i=0;i<n;i++)
 array[i]=rand()%20-5;
 return 0;
}

void InitArray(int* array, const int n)       // Эта для инициализации масива??? Да??
{
 for (int i=0;i<n;i++)
 array[i]=rand()%20-5;


}

void PrintArray(int* array, const int n)       // Здесь вывод
{
  for (int i=0;i<n;i++)
   cout<<i<<"="<< array[i]<<endl;

}

void SortArray(int* array, const int n)
{
  for (int i = 0; i<9; ++i){
     int tmp = 0;
        for (int j=(i+1); j<10; ++j)
            if (abs(array[i])<abs(array[j])) {     //сортировка
                tmp = array[i];
                array[i] = array[j];
                array[j] = tmp;
                }
    }

}

int main()
{
      int n;
      cout<< "Vvedit kilkist elementiv masuva : ";
      cin >>n;
      int* array = new int[n];

      int iItemCount = GetItemCount( array,  n);


      InitArray(array, n);        // здесь ясно
      PrintArray(array, n);       // здесь вывод
      SortArray(array, n);        // сортировка
      cout<<endl<<endl;
      PrintArray(array, n);       //  вывод

system("Pause");
}
ВасяСВВ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с функциями(передача масива в функцию типа int) sekator Общие вопросы C/C++ 4 27.07.2010 22:13
ДОРОБОТКА МАСИВА Lev.F Помощь студентам 0 31.05.2010 13:09
Помогите з Сортировкой масива в С++ Сергей Человек Помощь студентам 13 06.07.2009 19:58
4 масива Slavik Microsoft Office Excel 2 03.12.2008 21:21
Сортировка масива lhOsvald Общие вопросы C/C++ 21 02.05.2008 00:28