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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Jack63
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 13
#1

Соритрока массива - C++

19.10.2010, 22:54. Просмотров 688. Ответов 10
Метки нет (Все метки)

Здравствуйте! Помогите пожалуйста!
Нужно написать программу,в которой вводиться n элементный массив с клавиатуры,обрабатывается (делает так,чтобы сначала были положительные значения,а затем отрицательные) и выводится этот массив на экран. (массив статический)
Затем программа вводит 2-х мерный массив nXm с клавиатуры, преобразовывает его(меняет порядок элементов на обратный(построчно) ). n и m -константы. (массив динамический)
(способом int (*ar)=new int[5][10];
for(int i=0; i<5; i++)
for(int j=0; j<10; j++) )
все действия с массивами в виде процедур,язык c ++.

p.s:только начал изучать язык с ++ и не могу понять как написать. уже второй день сижу и не получается надеюсь на вашу помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.10.2010, 22:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Соритрока массива (C++):

Создать два массива. Вычислить количество тех элементов каждого массива, для которых выполняется неравенство: 2<элемент массива<10 - C++
помогите,пожалуйста! есть вот такие задания...ОЧЕНЬ надо на завтра... Задача 4. Определить два одномерных массива А(19) и В(16);...

Функции обработки массива (определить произведение элементов массива, заменить модулем все элементы массива, уничтожить элемент с заданным значением) - C++
Вот задания,не могу сделать ни одного из них,буду благодарен за помощь. Написать функции для выполнения операций над одномерным...

Для каждого массива в диалоге ввести размер массива и элементы массива и найти сумму и среднее арифметическое значение для каждого массива - Turbo Pascal
даны 3 различных массива целых чисел(размер каждого не должен превышать 15). Для каждого массива в диалоге ввести размер массива и элементы...

Для массива x(n) определить значение максимального эллемента массива и поменять его с первым элементом массива - Pascal ABC
Для массива x(n) определить значение максимального эллемента массива и поменять его с первым элементом массива

Заданы два массива. Проверить, что максимальный элемент массива A больше максимального элемента массива B - Delphi
Заданы два массива: A={a1, a2, a3, a4}, B={b1, b2…..b6}. Переменной S присвоить значение –1, если максимальный элемент массива A больше...

инициализация массива, вывод массива и обработка массива должны быть реализованы с помощью функций. - Visual C++
1 Последовательность a1; a2; ...; an состоит из нулей и единиц. Поставить в начало этой последовательности нули, а затем единицы. 2 У...

10
Andrew_Lvov
Эксперт С++
259 / 189 / 5
Регистрация: 19.08.2010
Сообщений: 760
Записей в блоге: 1
19.10.2010, 23:15 #2
Кидайте, что пробовали, показывайте что и где не получается.
0
easybudda
Модератор
Эксперт CЭксперт С++
9698 / 5648 / 964
Регистрация: 25.07.2009
Сообщений: 10,863
19.10.2010, 23:38 #3
Цитата Сообщение от Jack63 Посмотреть сообщение
Затем программа вводит 2-х мерный массив nXm с клавиатуры, преобразовывает его(меняет порядок элементов на обратный(построчно) ). n и m -константы. (массив динамический)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
...
void swap_array(int * arr, size_t size){
  int * head, * tail, tmp;
  for ( head = arr, tail = arr + size - 1; head < tail; ++head, --tail ){
    tmp = *head;
    *head = *tail;
    *tail = tmp;
  }
}
...
const int n(5);
const int m(10);
int ** matrix = new int * [ n ];
for ( int i = 0; i < n; ++i )
  matix[i] = new int [ m ];
// заполнить матрицу
for ( int i = 0; i < n; ++i )
  swap_array(matrix[i], m);
...
for ( int i = 0; i < n; ++i )
  delete [] matrix[i];
delete [] matrix;
...
1
Jack63
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 13
19.10.2010, 23:52  [ТС] #4
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
#include <iostream>
using namespace std;
 
 
int main()
{
    int n=0;
    cout<<"введите размер массива"; 
    cin>>n;
    int massiv[n];
    int t;
    for(t=0; t<10; ++t)
        {
            int z=0;
            cout<< "введите" <<t<< "элемент";
            cin>>z;
            massiv[t] = z;
        }
    for(int i=0; i<n; i++)
    {
        for(int j=n-1; j > i; j--)
        {
            if( massiv[i] < massiv[j] )
            {
               int temp=massiv[i];
               massiv[i]=massiv[j];
               massiv[j]=temp;
            }
        }
    }
}
У меня не получается задать размер массива с клавиатуры. Компилятор подчеркивает и пишет "Expression must have a constant value".
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
19.10.2010, 23:54 #5
Jack63, Юзайте динамику.
C++
1
2
3
4
int n;
std::cin>>n;
int* Arr;
Arr=new int[n];
1
MILAN
886 / 780 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
19.10.2010, 23:55 #6
C++
1
2
3
4
int **arr;
arr=new int[n];
..........
delete [] arr;
Извините!!!
1
Jack63
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 13
19.10.2010, 23:55  [ТС] #7
Easybudda спасибо большое!!!
0
Andrew_Lvov
Эксперт С++
259 / 189 / 5
Регистрация: 19.08.2010
Сообщений: 760
Записей в блоге: 1
20.10.2010, 00:00 #8
Jack63, статический массив можно определять с размером, известным на момент компиляции.
Создавать массивы, размер к-рых заранее неизвестен, нужно в динамической памяти (оператор new).
1
Jack63
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 13
20.10.2010, 00:15  [ТС] #9
Цитата Сообщение от Andrew_Lvov Посмотреть сообщение
Jack63, статический массив можно определять с размером, известным на момент компиляции.
Создавать массивы, размер к-рых заранее неизвестен, нужно в динамической памяти (оператор new).
Спасибо,теперь разобрался. Преподаватель диктовал условие задачи для всех вариантов,а потом одну фразу изменял, ну видимо забыл сказать что не n,а константа. Вот я и мучался не понимая как делать....
0
easybudda
Модератор
Эксперт CЭксперт С++
9698 / 5648 / 964
Регистрация: 25.07.2009
Сообщений: 10,863
20.10.2010, 00:19 #10
Jack63, ну вообще-то логичнее было бы задавать размер статического массива константой, а размеры для матрицы запрашивать у пользователя... Точно ничего не перепутали, когда задание записывали?
0
Jack63
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 13
20.10.2010, 00:29  [ТС] #11
Цитата Сообщение от easybudda Посмотреть сообщение
Jack63, ну вообще-то логичнее было бы задавать размер статического массива константой, а размеры для матрицы запрашивать у пользователя... Точно ничего не перепутали, когда задание записывали?
Второе задание точно константы, я даже помню как препод это говорил
0
20.10.2010, 00:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2010, 00:29
Привет! Вот еще темы с ответами:

Дано 2 массива по 20.Наибольший элемент первого массива, заменить наименьшим элементом второго массива - Java SE
Дано 2 массива по 20.Наибольший элемент первого массива, заменить наименьшим элементом второго массива. Кто сможет решить заранее...

Два исходных массива объединить в один, включив элементы второго массива между K и (K+1) элементами первого массива. - Pascal
Ребят, помогите, пожалуйста, сделать задачи, так как сама в этом ничего не соображаю.. 1. Дан массив из 20 элементов целого типа,...

Определить количество положительных элементов массива. Элементы массива задаются датчиком случайных чисел (размерность массива произвольна) - Turbo Pascal
Определить количество положительных элементов массива. Элементы массива задаются датчиком случайных чисел (размерность массива произвольна)

Из массива размером 10, сформировать два массива размера 5, включая в первый массив четные элементы исх. массива, а во второй - нечетные - C#
Из массива размером 10, сформировать два массива размера 5, включая в первый массив четные элементы исх. массива, а во второй - нечетные


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

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

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