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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Naked
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 18
#1

Написать функцию, которая переставляет элементы массива типа int так, что все положительные элементы предшествуют отрицательным. - C++

18.11.2010, 12:41. Просмотров 1278. Ответов 11
Метки нет (Все метки)

Помогите плз написать...
Написать функцию, которая переставляет элементы массива типа int
так, что все положительные элементы предшествуют отрицательным.

3аранее спс.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2010, 12:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать функцию, которая переставляет элементы массива типа int так, что все положительные элементы предшествуют отрицательным. (C++):

Написать функцию, которая транспонирует заданный в качестве параметра массива типа int - C++
Написать функцию, которая транспонирует заданный в качестве параметра массива типа int (т.е. меняет местами равноудаленные от концов...

Разработать функцию, которая сортирует только положительные элементы массива на своих местах - C++
вообщим нужна помощ фунция есть, но как сделать чтобы элементы остались на своих местах? пробывал через if(mas>0) расположение...

написать функцию которая формирует новый массив, элементами которого является все четные элементы, расположенные в нечетных ячейках заданного массива - C++
Помогите пожалуйста.написать функцию, которая формирует новый массив, элементами которого является все четные элементы, расположенные в...

написать функцию, которая формирует новый массив, элементами которого является все четные элементы, расположенные в нечетных ячейках заданного массива - C++
Помогите пожалуйста.написать функцию, которая формирует новый массив, элементами которого является все четные элементы, расположенные в...

Преобразуйте массив так, чтобы все положительные элементы массива стали отрицательными и наоборот - C++
1. Преобразуйте массив так, чтобы все положительные элементы массива стали отрицательными и наоборот, а затем измененный массив...

Вывести элементы массива на промежутке [ a,b ], вычислить количество элементов массива, заменить все положительные элементы - C++
В одномерном массиве, состоящем из n вещественных элементов, – вывести на печать элементы массива, значения которых не принадлежат...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.11.2010, 13:00 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void func(int *mas, int N)
{
    int l=0, r=N-1, i;
    while(l<r)
    {
        for(i=l; i<N; i++)
            if(mas[i]<0)
                break;
        l=i;
        for(i=r; i>=0; i--)
            if(mas[i]>=0)
                break;
        r=i;
        if(l<r)
        {
            int temp=mas[l]; mas[l]=mas[r]; mas[r]=temp;
        }
    }
}
2
Naked
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 18
13.12.2010, 21:49  [ТС] #3
А как будет выглядеть тестирующая программа?
0
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
13.12.2010, 21:50 #4
язык какой?
1
Mayonez
13.12.2010, 22:09
  #5

Не по теме:

Цитата Сообщение от valeriikozlov Посмотреть сообщение
язык какой?
русский

0
asics
13.12.2010, 22:10
  #6

Не по теме:

Mayonez, запетросянил.

0
Naked
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 18
13.12.2010, 22:19  [ТС] #7
На языке Cи
0
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
13.12.2010, 22:51 #8
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
#include <stdio.h>
#include <malloc.h>
void func(int *mas, int N)
{
        int l=0, r=N-1, i;
        while(l<r)
        {
                for(i=l; i<N; i++)
                        if(mas[i]<0)
                                break;
                l=i;
                for(i=r; i>=0; i--)
                        if(mas[i]>=0)
                                break;
                r=i;
                if(l<r)
                {
                        int temp=mas[l]; mas[l]=mas[r]; mas[r]=temp;
                }
        }
}
 
int main() {
int *mas, N, i;
printf("N= ");
scanf("%d", &N);
mas=(int*) malloc(N*sizeof(int));
for(i=0; i<N; i++)
{
    printf("[%d]= ", i);
    scanf("%d", &mas[i]);
}
func(mas, N);
for(i=0; i<N; i++)
    printf("%d ", mas[i]);
 
   return 0;
}
1
Naked
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 18
17.12.2010, 16:14  [ТС] #9
mas=(int*) malloc(N*sizeof(int)); - зачем эта строчка нужна?
0
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
17.12.2010, 16:38 #10
Цитата Сообщение от Naked Посмотреть сообщение
mas=(int*) malloc(N*sizeof(int)); - зачем эта строчка нужна?
Naked, выделение памаяти под массив типа int розмером N-елементов!!!
0
slice
35 / 78 / 4
Регистрация: 04.11.2010
Сообщений: 249
17.12.2010, 16:54 #11
просто отсортируй массив по убыванию
0
Naked
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 18
17.12.2010, 19:25  [ТС] #12
А без указателей "*" можно ее писать?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2010, 19:25
Привет! Вот еще темы с ответами:

Написать функцию, которая в одномерном массиве заменяет элементы кратные некоторому числу на нулевые элементы - C++
Знатоки, помогите написать программы по информатике. У меня полный завал по этой теме, а через неделю уже экзамен :( Надеюсь на вашу...

Напишите перегруженную функцию power (), которая принимает два целочисленных параметра типа int и возвращает целочисленное значение типа int - C++
Операции над целыми числами осуществляются быстрее, чем над числами с плавающей точкой. Напишите перегруженную функцию power (), ...

Написать функцию, которая в массиве вещественных чисел обнуляет все элементы, которые меньше среднего - C++
Нужно Написать функцию, которая в массиве вещественных чисел обнуляет все элементы, которые меньше среднего Добавлено через 28 секунд ...

Создать функцию, которая будет выводить на экран все четные элементы массива - C++
Уважаемые программисты! Помогите пожалуйста с написанием данной программы! Задача: Создать функцию которая будет выводить на экран все...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.12.2010, 19:25
Ответ Создать тему
Опции темы

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