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

Задача с массивами.Использование подпрограмм - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Работа с указателями: подскажите что я не так делаю http://www.cyberforum.ru/cpp-beginners/thread23558.html
Добрый день Подскажите пожалуйста что в этой программе не так #include <iostream> using namespace std; void main()
C++ Если последний элемент массива положителен, то все элементы массива увеличить на квадрат его максимального элемента Задача: Задан одномерный массив F(N) (N<=60). Если последний элемент массива положителен, то все элементы массива увеличить на квадрат его максимального элемента, иначе все элементы массива увеличить на квадрат его минимального значения. Преобразованный массив упорядочить по убыванию и распечатать. У мя с ней ничего не получается :( Как и алгоритм (блок-схема) тоже. Видимо где-то какая-то... http://www.cyberforum.ru/cpp-beginners/thread23548.html
C++ Сочетание цикла и разветвления
Дано натуральное число n. Действительные числа a1,...,an. Получить Min (квадрат) (a1,a3,…)+max (куб) (a2,a4,…).
Книги по MFC - разработка оконных приложений C++
Какие есть хорошие книги по созданию готовых windows приложений, то есть, чтобы ввод был не сконсоли, а было создано окно с кнопками и т.д. Напишите, пожалуйста, как такие книги называются, и конкретные книги, если кто-нибудь знает, только чтобы было понятно написано.
C++ Усовершенствуйте программу преобразования температур http://www.cyberforum.ru/cpp-beginners/thread23532.html
Усовершенствуйте программу преобразования температур таким образом, чтобы над таблицей она печатала заголовок. :wall: :wall: :wall:
C++ двухмерные и трёхмерные массивы работа с двухмерными и трёх мерными массивами(индексами и указателями)...что рассказать преподу и какую прогу написать? :help: Добавлено через 13 минут 21 секунду в си подробнее

Показать сообщение отдельно
ISergey
Maniac
Эксперт С++
 Аватар для ISergey
1345 / 878 / 51
Регистрация: 02.01.2009
Сообщений: 2,642
Записей в блоге: 1
18.02.2009, 20:50     Задача с массивами.Использование подпрограмм
вот так пойдет
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
65
#include <iostream>
#include <algorithm>
using namespace std;
 
int find_first_index(int *arr,int len, int el)
{
    int half;
    int first = 0;
    int middle;
 
    while(len>0)
    {
        half = len/2;
        middle = first+half;
        if( arr[middle] < el )
        {
            first = middle+1;
            len = len-half-1;
        }
        else
        {
            len = half;
        }
    }
    return first;
}
 
void insert(int *arr,int len, int el)
{
    int *buff = new int[len];
    int index = find_first_index(arr,len,el);
 
    for(int i = 0; i < len; ++i)
        buff[i] = arr[i];
    delete[] arr; arr = 0;
 
    arr = new int [len+1];
 
    for(int i = 0, j = 0; i < len+1; ++i)
    {
        if(index != i)
            arr[i] = buff[j++];
        else
            arr[i] = el;
    }
 
    delete[] buff;
}
 
int main () 
{
    const int len = 5;
    int *arr = new int[len];
    int el =  3;
    arr[0] = 2; arr[1] = 1;
    arr[2] = 5; arr[3] = 4;
    arr[4] = 11;
    std::sort(arr,arr+5);//algorithm stl 
    insert(arr,len,el);
    for(int i = 0; i < len+1; ++i)
        cout<<arr[i]<<" ";
    cout<<endl;
    delete[] arr;
    return 0;
}
 
Текущее время: 22:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru