С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Из массива удалить элемент с заданным номером - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа в фоновом режиме http://www.cyberforum.ru/cpp-beginners/thread596033.html
банальный пример - вирус который висит в процесах и творит какие-то дела. как делаются такие проги? не вирусы)), а не консольные Добавлено через 57 минут ап..................... Добавлено...
C++ Разработать класс для работы со стеком Как можно разработать класс для работы со стеком. Элемент стека – символ. Использовать стек для проверки правильности расстановки скобок трех типов (круглых, квадратных и фигурных) во введенном... http://www.cyberforum.ru/cpp-beginners/thread595998.html
Задачи на структуры C++
Помогите сделать пару заданий. Вариант не важно Вариант 1. 1.Описать структуру с именем STUDENT, содержащую следующие поля: • NAME – фамилия и инициалы; • GROUP – номер группы; • SES - ...
Как построить класс для работы с односвязным списком C++
Как можно построить класс для работы с односвязным списком. Элемент списка – действительное число. Сформировать список, содержащий неубывающую последовательность чисел. Преобразовать список так,...
C++ Получить в файле g те компоненты файла f, которые являются четными http://www.cyberforum.ru/cpp-beginners/thread595993.html
Помогите сделать пару заданий. Вариант не важно. \ Вариант №1 1. Заполнить файл f целыми числами, полученными с помощью генератора случайных чисел. Получить в файле g те компоненты файла f,...
C++ Работа с Умными указателями Добрый день, помогите разобраться: #include <iostream> using namespace std; class NormClass { int a; public: подробнее

Показать сообщение отдельно
Frainet
0 / 0 / 0
Регистрация: 04.06.2012
Сообщений: 4

Из массива удалить элемент с заданным номером - C++

04.06.2012, 16:34. Просмотров 2910. Ответов 14
Метки (Все метки)

Здравствуйте,у меня вот такое задание: Из одномерного динамического массива удалить элемент с заданным номером
Написал программу,но выдает ошибки и я не знаю как их убрать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
#include <cstdio>
#include <locale.h>
 
using namespace std;
const int n=5;
int InArr(int*[],int);
int del(int*[],int,int);
void main()
{ 
  setlocale(LC_CTYPE,"Russian");
  system ("cls");
  int o,m,p;
  int *a=new int [n];
  InArr(a,m);
  o=del(a,m,p);
  cout<<"Конечный массив:\n"<<o;
  system("pause");
}
int InArr(int* a[],int m)
{
 for(int i=0;i<n;i++)     
 {
 a[i]=new int[m]; 
 } 
 cout<<"Введите массив:\n";
      for(int k=0;k<n;k++)
      cin>>a[0][k];
}
 
int del(int* a[], int m, int p)     // передаем в функцию указатель на массив, его длину, номер удаляемого элемента
{
cout<<"Введите номер элемента который нужно удалить:\n";
cin>>p;
int j = -1;                                          // заводим темповый счетчик
int* temp = new int[m-1];             // заводим темповый массив, который меньше предыдущего на 1 ячейку
for (int i=0; i<m; i++)                // понеслась
{
if (i!=p)                                 // если номер ячейки исходного массива не равен той, которую надо удалить
{
j++;                                 // наращиваем темповый счетчик
temp[j] = a[i];                 // копируем ячейку из старого массива в новый
} 
}
return temp;                                     // возвращаем новый массив.
}
-c:\users\Frainet\documents\visual studio 2010\projects\l2\l2\l2.cpp(21): error C2664: InArr: невозможно преобразовать параметр 1 из "int *" в "int *[]"
Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
-c:\users\Frainet\documents\visual studio 2010\projects\l2\l2\l2.cpp(22): error C2664: del: невозможно преобразовать параметр 1 из "int *" в "int *[]"
Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
-c:\users\Frainet\documents\visual studio 2010\projects\l2\l2\l2.cpp(48): error C2440: =: невозможно преобразовать "int *" в "int"
Не существует контекста, в котором такое преобразование возможно
-c:\users\Frainet\documents\visual studio 2010\projects\l2\l2\l2.cpp(51): error C2440: return: невозможно преобразовать "int *" в "int"
Не существует контекста, в котором такое преобразование возможно

Зарание спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.