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

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

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

Функция с использованием массивов - C++

25.11.2011, 14:52. Просмотров 292. Ответов 4
Метки нет (Все метки)

Помогите написать функцию,которая вставляет элементы в монотонно возрастающую последовательность с сохранением сортировки!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2011, 14:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция с использованием массивов (C++):

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

с использованием массивов (array) - C++
Задачи надо написать на С. 1) - Дан массив A размера N. Вывести вначале его элементы с чётными номерами ( в порядке возрастания...

Программа с использованием массивов - C++
Задали сделать программу с массивами. Практики с применением массивов небыло. И я с ними не знаком. Помогите пожалуйста. П.5.18.Правил ...

Обработка массивов с использованием подпрограмм - C++
Из каждого элемента матрицы А(3,3) вычесть произведение ее нечетных отрицательных эллементов

Написать функцию с использованием массивов.. - C++
Которая вставляет элементы в монотонно возрастающую последовательность с сохранением сортировки

Обработка массивов с использованием подпрограмм - C++
Прошу помощи! Ввести одномерные массивы X1n1, X2n2 и X3n3 и определить в каждом из них среднее арифметическое отрицательных элементов....

4
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
25.11.2011, 14:58 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
#include<conio.h>
void Insert (int *a, int *pn, int x)
{
    int j;
    for(j = (*pn) - 1; j >= 0 && a[j] > x; j--)
        a[j+1] = a[j];
    a[j+1] = x;
    (*pn)++;
}
 
int main()
{
    int i, n, a[5] = {5, 4, 3, 2, 1};
    for(n = 1; n < 5; )
        Insert(a, &n, a[n]);
    for(i = 0; i < n; i++)
        printf("%d ", a[i]);
    getch();
    return 0;
}
1
Grif1992
0 / 0 / 0
Регистрация: 06.10.2011
Сообщений: 50
25.11.2011, 15:00  [ТС] #3
Можно с пояснениями...
0
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
25.11.2011, 15:01 #4
Цитата Сообщение от Grif1992 Посмотреть сообщение
Можно с пояснениями...
Конечно, но прежде почитайте описание алгоритма сортировки вставками
0
Grif1992
0 / 0 / 0
Регистрация: 06.10.2011
Сообщений: 50
25.11.2011, 15:25  [ТС] #5
И еще, можно написать эту задачу через эту программу?
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <stdio.h>
#include <locale.h>
const int N=100;
void inMas1(int &n,int a[N])
{ 
    //Ввод n
    printf(" введите количество n\t");
    scanf("%d",&n);
    for (int i=0; i<n; i++)
    {
        //Ввод а[i]
        printf("\t a[%d]=",i);
        scanf("%d",&a[i]);
    }
}
void outMas1(int k, int c[N])
{
    for (int i=0; i<k; i++)
    printf("%d",c[i]);
    
}
void Obedin(int n, int a[N], int m,int b[N],int &k,int c[N])
{
    //Начальное присвоение c=a
        k=n;
 
    for (int i=0; i<n; i++)
    {
        c[i]=a[i];
    }
    //Добавить не достающие элементы из b, просмотр элементво из b
        for (int i=0;i<m; i++)
        { 
            //обработка b[i], Цикл просмотра массива 
            int j=0; 
            bool flagNo=true;
            while ((flagNo)&&(j<n))
            {
                if (a[j]==b[i])
                {
                    flagNo=false;
                }
                j++;
            }
            if (flagNo)
            {
                //добавление b[i] в c
                c[k]=b[i];
                k++;
            }
        }
}
void main()
{
    setlocale(LC_ALL,"russian");
    //определение переменных 
    int n,m,k,a[N],b[N],c[N];
    //Ввод исходных данных
    inMas1(n,a);
    inMas1(m,b);
    Obedin(n,a,m,b,k,c);
    //вывод результата 
    outMas1(k,c);
}
0
25.11.2011, 15:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2011, 15:25
Привет! Вот еще темы с ответами:

Обработка массивов с использованием подпрограмм - C++
Составить программу для решения задач, с обязательным использованием подпрограммы для ввода матрицы с экрана, ее обработки и вывода на ...

Матрица с использованием двухмерных массивов - C++
Добрый день. Нужна помощь в написании программы. Дана матрица размера M х M. Найти все положительные элементы матрицы. Элементы я должен...

Программы с использованием динамических массивов и указателей - C++
Написать программы с использованием динамических массивов и указателей. Начальные размерности массивов ввести с клавиатуры. Применение в...

Сохранения Информации с использованием структур и массивов - C++
Здравствуйте, дорогие пользователи! Имею вот простую задачу... Сохранения данной информации: &quot;фамилия, инициалы, год рождения, зарплату&quot;...


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

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

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