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

Сжать массив, удалив из него элементы, модуль которых находится в заданном интервале - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ преобразовать задание ввиде функции http://www.cyberforum.ru/cpp-beginners/thread179012.html
Все необходимые данные для функций должны передаваться им в качестве параметров. Использование гло- бальных переменных в функциях не допускается. #include "stdafx.h" #include <stdlib.h> #include...
C++ Как создать приоритетную очередь? Пусть имеется обслуживающая система из n обслуживающих аппара-тов. Работа этой системы разбита на такты. В течение одного такта мо-жет одна заявка стать в очередь и одна заявка приступить к... http://www.cyberforum.ru/cpp-beginners/thread178995.html
C++ Переворот линейного списка
Построить линейный список из нескольких динамических переменных, содержащих вводимые целые числа. Если введенный список упорядочен по возрастанию, то оставить его без изменения, иначе перестроить...
c++ меню C++
как мне создать меню в c++ можетедать млаенький пример? спасибо
C++ Программа чайнворд http://www.cyberforum.ru/cpp-beginners/thread178972.html
Есть множество слов, упорядочить их так, чтобы буква, на которую слово заканчивается, начинало следующее
C++ Три одинаковых подстроки Помогите вот с такой вот задачей: Пользователь вводит строку максимум из 100 символов, программа выводит ДА или НЕТ, в зависиомти от следующего условия: Строка не должна содержать три или больше... подробнее

Показать сообщение отдельно
melk1y
0 / 0 / 0
Регистрация: 21.10.2009
Сообщений: 27
24.12.2010, 17:52  [ТС]
Цитата Сообщение от asics Посмотреть сообщение
Добавлено через 18 секунд

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
#include <iostream>
#include <ctime>
#include <cstdlib>
 
bool WithineRange(int a,int b, int x)
{
     return x > a && x < b;
} /* функция определяет находится ли число Array[i],
    передаваемое ей в качестве аргумента в диапазоне между a и b */
 
int main()
{
        int a,b,N;
std::cout << "a = ";
std::cin >> a;
std::cout << "b = ";
std::cin >> b;
std::cout << "N = ";
std::cin >> N;
srand(time(0));
int * Array = new int[N];
for(int i = 0;i < N;++i)
{
    Array[i] = rand()%20 + 1;
    std::cout << Array[i] << " ";
} /* заполняем массив случайными     числами от 1 до 19 */
 
std::cout << "\n\n";
 
for(int i = 0;i < N;++i)
{
        if(WithineRange(a,b,Array[i]))
        {
            Array[i] = 0;
        } /* вызываем функцию WithineRange() для каждого элемента массива, передаем ей аргументы a,b и Array[i]. Если Array[i] больше a и меньше чем b, то
Array[i] = 0 */
}
 
int cnt = 0;
for(int i = 0;i < N;++i)
    if(!Array[i])
        ++cnt;
 
std::cout << "\n\n";
for(int i = N;i > 0;i--) // перегоняем все нули в конец массива
{
        if(Array[i] != 0 && Array[i-1] == 0)
        {
            Array[i-1] = Array[i];
            Array[i] = 0;
            i = N;
            continue;
        }
}
 
for(int i = 0;i < N - cnt;++i)
std::cout << Array[i] << " ";
 
delete[] Array;
}


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