Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 28.01.2021
Сообщений: 43
1

Есть ли ошибка в записи? Программа должна вывести массив, все нулевые элементы которого должны быть в конце

16.03.2021, 21:57. Показов 1248. Ответов 1

Author24 — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
p=n-1;
    for(i=0;i<n;i++)
    {
        if(a[i]==0)
        {
            swap(a[i],a[p]);
            p=p-1;
        }
    }
    for(i=0; i<n; i++)
    {
        cout<<a[i]<<" ";
    }
Есть ли ошибка в записи? Программа должна вывести массив, все нулевые элементы которого должны быть в конце.

Полный контекст программы:

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
#include <iostream>
#include<cmath>
#include<windows.h>
#define n 10
float a[n]={-1.,-4.,0.,-17.,0.,3.,5.,-32.,0.,-1.};
 
int main()
{
    SetConsoleOutputCP(1251);
    using namespace std;
    int b,c,v1,v2,v,k,p;
    int i; b=0; c=0;
    for(i=1;i<n;i++)
    {
        if (abs(a[i])<abs(a[b]))
        {
            b=i;
        }
    }
    cout<<a[b]<<endl;
    v1=-1; i=0;
while(a[i++]<=0);v1=i;
v2=-1; i=n-1;
while(a[i--]<=0);v2=i+1;
v=0;
for (i=v1; i<=v2; i++)
{
v+=a[i];
}
cout<<v<<endl;
    p=n-1;
    for(i=0;i<n;i++)
    {
        if(a[i]==0)
        {
            swap(a[i],a[p]);
            p=p-1;
        }
    }
    for(i=0; i<n; i++)
    {
        cout<<a[i]<<" ";
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.03.2021, 21:57
Ответы с готовыми решениями:

Создать базовый класс в конце имени, которого должны быть номер «47»
Помогите пожалуйста сделать. Очень срочно надо. Дали дополнительное задание, которое нужно ой как...

Создать базовый класс в конце имени, которого должны быть «ЦУМ»
Помогите пожалуйста сделать. Очень срочно надо. Дали дополнительное задание, которое нужно ой как...

Новая последовательность должна содержать сначала все нулевые элементы исходной, затем все остальные элементы
для: Дана последовательность действительных чисел. Новая последовательность должна содержать все...

Вывести все нулевые элементы, которые есть на главной диагонали массива и ниже её
Задание: вывести все нулевые элементы которые есть на главной диагонали и ниже её, а программа...

1
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,714
17.03.2021, 12:03 2
Лучший ответ Сообщение было отмечено Levmar как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
p=n-1;
    for(i=0;i<p;i++) //  не надо идти по нулям в конце
    {
        if(a[p]==0)
        { p--;i--;continue;} // Если в конце стоит нуль, то его надо там и оставить!
        if(a[i]==0) 
        {
            swap(a[i],a[p]);
            p--;
        }
    }
0
17.03.2021, 12:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.03.2021, 12:03
Помогаю со студенческими работами здесь

Создать список, элементами которого должны быть элементы матрицы
Здравствуйте, в общем есть задача, нужно создать список элементами которого должны быть элементы...

Создать программу, использующую этот модуль. Программа должна формировать массив А, элементы которого − обыкновенные дро
Структура модуля: Unit &lt;имя модуля&gt;; {Заголовок модуля} Interface {Интерфейсная часть} ...

Одномерный массив. Проверить, есть ли нулевые элементы, вывести номер элемента на экран
задание:дан одномерный числовой массив А(n) проверить есть ли нулевые элементы, вывести номер...

Перенести в начало массива все его отрицательные элементы, затем нулевые и в конце все положительные
Перенести в начало массива А(n) все его отрицательные элементы, затем нулевые и в конце все...

Программа должна вывести на экран все элементы массива в виде последовательности
Нужен совет пожалуйста с задачей по массивам Паскаля Нужно Написать программу на ЯП (язык...

Переставить положительные числа в начало массива, а все отрицательные – в конец массива, нулевые должны быть в середине
Задача №112306. Положительные и отрицательные Напишите программу, которая отделяет положительные...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru