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

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

Войти
Регистрация
Восстановить пароль
 
Apmyp /7
3 / 3 / 0
Регистрация: 14.10.2009
Сообщений: 76
#1

Выкинуть нули - C++

09.11.2009, 20:21. Просмотров 451. Ответов 9
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void main()
{ int n,k,x[50],i;
cout<<"Koli4estvo elementov v masive: "; cin>>n;
for (k=0; k<n; k++)
{x[k]=-10+random(21);
cout<<x[k]<<" \t";}
for (k=0; k<n; k++)
if (x[k]==0)
getch();
}
вот код програмы, как сделать что бы если при выводе масива в нём были 0, то программа их просто выкидывает, и отображает заново получённый масив?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
o-user
245 / 202 / 7
Регистрация: 03.02.2009
Сообщений: 788
09.11.2009, 20:25     Выкинуть нули #2
Что значит "их просто выкидывает" и "отображает заново получённый масив"?
M128K145
Эксперт C++
8280 / 3499 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
09.11.2009, 20:26     Выкинуть нули #3
Может все же после проверки условия надо еще и выводить что-то?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
    int n,k,x[50],i;
    cout<<"Koli4estvo elementov v masive: "; cin>>n;
    for (k=0; k<n; k++)
    {
        x[k]=-10+random(21);
        cout<<x[k]<<" \t";
    }
    for (k=0; k<n; k++)
        if (x[k]==0)
            cout<<x[k]<<'\t';
    getch();
}
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
09.11.2009, 20:27     Выкинуть нули #4
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <algorithm>
int main()
{
    int arr[] = {1,2,3,0,0,5,0};
    const size_t size = sizeof(arr)/sizeof(*arr);
    int *a = std::remove(arr,arr+size,0);
    std::copy(arr,a,std::ostream_iterator<int>(std::cout," "));
    return 0;
}
DzuR
2 / 2 / 0
Регистрация: 20.07.2009
Сообщений: 18
09.11.2009, 20:27     Выкинуть нули #5
подозреваю чтоб нули заменяла пробелами.....
Apmyp /7
3 / 3 / 0
Регистрация: 14.10.2009
Сообщений: 76
09.11.2009, 20:29  [ТС]     Выкинуть нули #6
Цитата Сообщение от o-user Посмотреть сообщение
Что значит "их просто выкидывает" и "отображает заново получённый масив"?
просто уберает все нули в масиве, и выводит на экран новый масив без нулей.
o-user
245 / 202 / 7
Регистрация: 03.02.2009
Сообщений: 788
09.11.2009, 20:30     Выкинуть нули #7
Цитата Сообщение от M128K145 Посмотреть сообщение
Может все же после проверки условия надо еще и выводить что-то?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
    int n,k,x[50],i;
    cout<<"Koli4estvo elementov v masive: "; cin>>n;
    for (k=0; k<n; k++)
    {
        x[k]=-10+random(21);
        cout<<x[k]<<" \t";
    }
    for (k=0; k<n; k++)
        if (x[k]==0)
            cout<<x[k]<<'\t';
    getch();
}
Тогда уж:
C++
1
2
3
    for (k=0; k<n; k++)
        if (x[k]!=0)
            cout<<x[k]<<'\t';
M128K145
Эксперт C++
8280 / 3499 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
09.11.2009, 20:39     Выкинуть нули #8
o-user, ну есть немного
Apmyp /7
3 / 3 / 0
Регистрация: 14.10.2009
Сообщений: 76
09.11.2009, 22:18  [ТС]     Выкинуть нули #9
а как к примеру сделать что бы 0 заменялись пробелами, и выводился бы масив с нулями а потом масив в котором вместо нулей были бы пробелы?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.11.2009, 22:24     Выкинуть нули
Еще ссылки по теме:

Как из DLL -ки выкинуть исключение типа FATAL ERROR, всем хана :-) C++
C++ Как выкинуть окошко с исключением через std::runtime_error
C++ Сделать реверс строки и каждый четвёртый символ выкинуть
В ответе нули C++
C++ Определить нули функции

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

Или воспользуйтесь поиском по форуму:
M128K145
Эксперт C++
8280 / 3499 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
09.11.2009, 22:24     Выкинуть нули #10
C++
1
2
for (k=0; k<n; k++)
    cout<<(x[k]!=0) ? x[k] : ' '<<'\t';
Yandex
Объявления
09.11.2009, 22:24     Выкинуть нули
Ответ Создать тему
Опции темы

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